
전체 글
Nginx SSL 설정
개인 프로젝트 공간을 Lightsail로 옮기면서 Apache에서 Nginx로 변경했습니다. 옮기고 나니 저사양에서는 Nginx가 훨씬 좋았습니다. 설정도 간단하고, 성능도 좋아졌네요. Nginx에서 SSL 설정 방법을 설명합니다. 개인 환경 static html 페이지 몇 개가 노출 되야 합니다. node.js로 8080 포트로 서비스가 올라갑니다. grafana가 3000 포트로 올라갑니다. SSL 기본 설정 server_name에 도메인을 넣고, static html 노출을 위해 web root 경로를 지정합니다. 키 파일을 지정하고, favicon 관련 불필요한 설정 off 했습니다. server { server_name mydomain.com; listen 443 ssl; location / {..
Oracle 에서 MariaDB로 데이터 마이그레이션
Oracle에서 MariaDB로 DB 전환 프로젝트를 진행하면서 데이터를 마이그레이션해야 했습니다. 별도 솔루션을 사용하기 어려웠고 ssh 터미널에서만 작업이 가능했으며, 마이그레이션 해야하는 테이블이 많은 상황이었습니다. 직접 구현하기로 결정했고, 생산성 좋고 동시성 개발이 편한 go 언어를 사용했습니다. DB 설정을 euckr로 해야 했습니다. Oracle은 euckr이 아닌 데이터도 저장되는데 MariaDB는 euckr이 아닌 데이터를 저장하려면 오류가 발생하기 때문에, euckr 캐릭터셋 체크 및 로그 저장 기능이 들어갔습니다. 전체 소스코드는 여기(https://github.com/lmk/migrationOracle2Maria)서 볼수 있습니다. 버그 테이블 하나에 데이터가 많은 경우 처리하지 ..

Redis 성능 향상 방법
Redis 성능 향상 방안에 대해 조사하고, 테스트 한 내용입니다. 성능 향상 방안 스케일 up 스케일 up은 CPU 성능을 올려 redis 성능을 올리는 방법입니다. Redis는 싱글 스레드로 구현되어 있어서, core가 많은 장비보다 core당 속도가 높은 것이 유리합니다. 스케이일 out 스케이일 out은 Redis를 멀티 cluster로 구성해서 성능을 올리는 방법입니다. cluster 구성방법 변경 샤딩: 데이터를 나눠서 저장하는 방법으로 get/set의 성능이 향상됩니다. 리플리케이션: 데이터를 복제하는 방법으로 master 하나에 slave 여러개로 구성하여, app 에서 master에는 set 하고 slave 에는 get 하는 방식으로 read/write 채널이 분리되어야 합니다. 이 방법..
Redis Cluster 구성
각각의 Redis Cluster 구성이 필요해서 간단하게 구성할 수 있도록, conf 파일의 node 정보를 읽어서 cluster를 구성하는 bash script를 만들었다. 여기서는 Redis는 설치되어 있다고 가정하고, 구성 방법에 대해서만 설명한다. https://github.com/lmk/redis-cluster Cluster 구성 cluster 관계 master node 간에는 샤딩으로 구성한다. master - slave로 HA 구성으로 master down시 slave가 master를 백업한다. node 3개 일때 master slave redis_01:6010 redis_02:6021 redis_02:6020 redis_03:6031 redis_03:6030 redis_01:6011 nod..
Cobra로 Command 입력
개요 jeager의 소스 코드를 보다보니, cobra라는 package를 사용하고 있었고 검색해보니, 복잡한 파라미터를 사용하는 cli app 개발에 유용하며 kubeneties, jeager, promethtus등 go로 만들어진 많은 app 에서 사용하고 있다고 한다. cobra를 활용한 간단한 프로젝트를 해보려고한다. 데모 프로젝트 go_google_images 단어를 입력받아, 이미지를 검색해서 다운로드하는 간단한 프로그램입니다. cobra를 사용해서 커맨드 파라미터를 입력받을 것입니다. 기능 cobra로 param을 입력 받는다. 입력받은 검색어를 아래 URL로 google에 요청한다. "https://www.google.co.in/search?q="+QUERY+"&source=lnms&tbm=..