전체 글 38

[Source | MySQL or MariaDB] 데이터베이스 백업설정 및 데이터 이관

데이터베이스를 주기적으로 파일로 백업하고 관리하는 과정을 정리한다.> 작성일 : 2017-09-27 쉘스크립트 파일을 작성한다.vi {저장경로}/Backup.sh#!/bin/bashtoday=`date +%Y%m%d`deleteDay=`date +%Y%m%d -d '-[백업파일보존일수]days'`backupDirectory="[파일저장경로]"dbList='[데이터베이스1] [데이터베이스2]'### create Folder ###echo "createDay : "$today/bin/mkdir -p ${backupDirectory}/${today}_allcd ${backupDirectory}/${today}_allecho "OK"### backup Project ###for db in $dbList; do ..

Source 2025.01.09

[Source | Javascript] AES256 암호화 / 복호화

crypto-js 를 활용한 암호화 / 복호화 코드를 정리한다.> 작성일 : 2023-04-06  설치https://www.npmjs.com/package/crypto-jsnpm install crypto-js   Key / IV 정의의const encKey = 'opendocsdocs20230626abcdefghij!@'; // 32Byteconst encIV = 'opendocsdocs2023'; // 16Byte   AES256 암호화 / 복호화 함수const encAES = (str, key, iv) => { const cipher = Crypto.AES.encrypt(str, Crypto.enc.Utf8.parse(key), { iv: Crypto.enc.Utf8.parse(iv), ..

Source 2025.01.08

[Concept | DevOps] 도입

DevOps 문화를 도입하고자 할때의 고려점을 정리한다.> 작성일 : 2025-01-06  문화의 형성조직(개발조직 뿐만이 아닌 전체 참여자)의 소프트웨어 개발 문화를 만들어 간다는 관점에서 접근이 필요하다.# 단순히 어떤 기술을 도입한다는 관점이라면 오히려 독이 될 수 있다.# 여러 부서를 아우를 수 있는 DevOps 팀 구성이 필요하며 권한이 주어져야 한다.# 제품을 잘 만들어 가치를 창출한다는 공동의 목표에서 진행되어야 한다.# 워크플로우가 원활하게 진행되도록 자동화가 잘 이루어져야 한다.# 품질과 성능을 최적화 하기 위해 피드백 및 측정이 지속적으로 이루어져야한다.   이점문화가 잘 형성되고 자동화가 잘 이루어지게 되면 여러 이점을 얻을 수 있다.# 각자 일하지 않고 책임을 공유하여 협업이 원활해..

Concept 2025.01.06

[Concept | DevOps] 라이프사이클

DevOps 라이프사이클의 각 단계를 정리한다.> 작성일 : 2025-01-05  기획사용자 피드백 및 이해관계자 의견을 바탕으로 다음 출시에 포함될 기능(백로그화)을 정의합니다.   개발기획 단계에서 작성된 스토리 및 백로그를 기반으로 기능을 개발합니다.# 테스트 주도개발(TDD), 페어프로그래밍, 코드리뷰와의 결합을 고려합니다.# 내부 정책에 따라 개발테스트를 수행합니다.   빌드개발된 코드를 테스트 가능한 형태로 빌드합니다.# 이부분은 개발테스트가 완료되고 코드가 배포되면 수행됩니다.# 코드의 병합, 컴파일, 단위테스트, 패키징이 자동으로 이루어 집니다.   테스트개발과 릴리즈 사이에서 요구사항을 충족하는지 테스트 합니다.# 테스트 또한 자동화 되기도 합니다.# 여러 형태의 테스트에서 특정요소를 수..

Concept 2025.01.05

[Concept | DevOps] 정의

DevOps란 무엇인지 정리한다.> 작성일 : 2025-01-05  기본정의 개발과 운영에서의 작업을 결합하고 자동화해 개발의 고품질화 및 서비스의 가속화를 이룬다는 개념의 방법론# 도구의 활용과 관행의 정의 필요 (Jira, GitFlow)# 효율성 / 신속성 / 신뢰성의 향상   포괄적정의개발과 운영간 서비스를 가속화 하기 위한 개발 프로세스 및 조직 문화까지를 의미함# 워터폴 (Waterfall) 개발의 문제점(요구사항의 잦은변경)으로 인한 애자일 (Agile) 개발의 등장 - 애자일 : 애플리케이션을 소규모로 빈번히 업데이트하는데 중점을 둠# 애자일 (Agile)의 발전된 형태인 DevOps는 지속적 통합 / 지속적 배포 (CI/CD)를 핵심요소로 함   DevOps 라이프 사이클서비스의 기능개..

Concept 2025.01.05

[Concept | Java] Garbage Collection 종류

Garbage Collection의 종류와 특징을 정리한다.> 작성일 : 2022-03-31  Serial GC- 한개의 스레드가 동작하여 메모리를 해제- 동작이 느리고 Stop The World 시간이 길어 근래에는 사용되지않음- Java 실행시 옵션 : -XX:+UseSerialGC   Parallel GC- Minor GC에서 멀티스레드가 동작하여 메모리를 해제- Serial GC대비 Stop The World가 짧음- Java 8의 Default GC- Java 실행시 옵션 : -XX:+UseParallelGC   Parallel Old GC- Minor GC & Major GC에서 멀티스레드가 동작하여 메모리를 해제- Major GC에서 Mark-Summary-Compact 방식을 사용- 멀티스..

Concept 2025.01.05

[Concept | Java] Garbage Collection 구동원리

JVM에서 메모리가 어떻게 관리되어지는지 이해하기 위해 Garbage Collection (GC) 구동원리를 정리한다. 개발 최적화와 서버 튜닝을 위해 이해하고 있어야 한다.> 작성일 : 2022-03-30  메모리 영역의 구분 Young Generation- 새롭게 생성된 객체는 Eden 영역에 할당된다.- Young Generation에서 발생하는 Garbage Collection을 Minor GC 라 한다. Old Generation- Young Generation에서 계속 사용되고 있다고 판단되는 객체가 Old Generation으로 이동된다.- Old Generation에서 발생하는 Garbage Colleciton을 Major GC 또는 Full GC 라 한다.   Garbage Collect..

Concept 2025.01.05

[Tip | iOS] Device UDID 확인

프로젝트 진행시 모바일 기기(iPhone / iPad)의 고유값인 UDID를 확인해야할 필요가 있다. (예를 들어 애드혹 배포시)iTunes를 사용하여 확인하는 방법을 설명한다.> 작성일 : 2021-02-18  iTunes를 다운받아 설치한다.  모바일 기기가 암호로 잠겨있을 경우 경고창이 보인다. 모바일기기에서 신뢰를 선택한 후 재시도을 클릭한다.  연결이 완료되면 '환영합니다' 메시지의 창이 보이는데 동의를 클릭한다.   연결이 정상적으로 완료되면 아래와 같이 휴대폰 모양의 아이콘이 활성화 된다.  일련번호가 표시된 부분을 UDID가 보일때 까지 클릭한다.  UDID를 확인할 수 있다.

Tip 2025.01.05

[Guide | Test] JMeter를 활용한 서비스 성능 테스트

JMeter를 통해 성능테스트 하는 방법을 정리한다.> 작성일 : 2023-01-09> 테스트클라이언트 : Windows10 + JMeter5.5> 테스트서버 : Ubuntu22.04  아래 사이트에 접속하여 바이너리 파일을 다운로드 하고 압축을 해제한다.https://jmeter.apache.org/download_jmeter.cgiapache-jmeter-5.5.zip 파일 압축해제  JMeter 실행압축해제 폴더/bin/jmeter.bat 실행  Thread Group 추가Test Plan 우클릭 > Add > Threads(Users) > Thread GroupNumber of Threads (users) : 사용자수Ramp-up period (seconds) : 요청 반복주기Loop Count..

Guide 2025.01.05

[Guide | Marketing] 웹사이트 수집 설정 - Google

운영중인 블로그나 사이트가 구글에 수집되어 노출될 수 있도록 설정하는 방법을 정리한다.> 작성일 : 2022-01-27  구글계정에 로그인계정이 없다면 아래메뉴를 통해 생성하고 로그인한다.  Google Search Console 에 접속 & URL 등록https://search.google.com/search-console/about시작하기 클릭URL을 입력하고 계속 클릭① html 파일을 클릭하여 다운로드 받는다.② 서버의 서비스폴더에 저장한다. (https://{입력한 URL}/{html파일} 경로로 접근이 가능해야함)③ 확인을 눌러 등록을 완료한다.   robots.txt 등록 - 수집될 내용에 대한 제한설정User-agent:*Allow:/① 위와같이 robots.txt 파일을 생성한다.②..

Guide 2025.01.04