1. 미들웨어이야기 139

redis 보안

redis 보안서버 실행일반 사용자가 실행할 것root 실행 금지 서버 실행 환경 설정 파일 접근 권한chmod og-rw 환경설정파일그룹 및 다른 사용자 읽기, 쓰기 금지 snapshot 기능을 쓰는 경우(자료를 디스크에 저장하는 경우) 서버 실행 전 해당 OS 계정 umask 값이 0066 으로 그룹 및 다른 사용자가 rdb 파일 읽기, 쓰기 금지할 것umask 0066 && redis-server redis.conf 외부 접속을 허락 하는 경우bind 0.0.0.0 설정을 한 경우는 반드시 requirepass 설정을 할 것, 기본값 사용 금지 - plain text 로 conf 파일을 OS 다른 사용자가 사용할 수 없도록 파일 접근 권한 조정 필수protected-mode no 설정 금지 redi..

redis 대량 데이터 입력

redis 대량 데이터 입력 이 글은 https://gist.github.com/Squab/52d42652719cc28451d7코드의 사용법에 대한 이야기입니다. 1. redis-cli --pipe 이야기 redis에서 자료를 입력하는 방법은 여러가지가 있습니다. 가장 간단하게, 일반 텍스트 파일에 redis-cli 에서 사용하는 명령 구문 형태로 자료 입력 명령을 쭉 입력하고, OS 파이프 기능을 이용해서, 표준 출력 내용을 redis-cli 쪽 표준 입력으로 보내서 자료를 입력하는 방법입니다. $ cat medi_code.txt HSET medi_code 100 의료보험 HSET medi_code 110 직장 HSET medi_code 120 지역 HSET medi_code 130 "공무원 및 사립학..

지리정보와 redis

redis geo... 명령어들 redis에서 지리 정보를 다루는 것은 딱 좌표(2차원 점)에 대한 것만이다. 여러 지리 정보를 다루는 다른 소프트웨어에 비교하면, 참 단순하다. 공식 홈페이지의 이 관련 명령어는 https://redis.io/commands#geo페이지를 살펴보면 된다. 국내 홈페이지인 redisgate에는 아직 다루고 있지 않는다. 그나마 joinc에서 간략하게 다루긴 한다. https://www.joinc.co.kr/w/man/12/REDIS/geo geoadd좌표 추가 geopos추가한 좌표 보기 geodist좌표간(점들 사이) 거리 구하기 georadius... 명령어들주변 좌표 찾기 실무에서 쓰일 예제 이야기는 다음에. - posted by 김상기

rdb 테이블을 redis로

관계형 테이터베이스 테이블을 redis로 옮기기 1. redis 자료형문자열, String: 일반적인 key - value, hash로 보면 된다. range, between 이런 것 없다. 그냥 오직 그 key 목록, List: 그냥 배열, push & pop 용, 순서가 색인, 중복된 value, 목록 이름이 key. 하나의 목록을 샤딩할 수는 없다.집합, Set:: 중복된 value를 가질 수 없는 집합 - RDB 인덱스의 value가 된다. insert = sadd, delete = srem , index key update = smove해시, hash: RDB의 테이블, key가 테이블이름, field가 Primary Key, value가 json 칼럼들값들, 하나의 해시는 샤딩할 수 없다.정렬..

Apache Name-Based VirtualHosts and SSL

Name-Based VirtualHosts and SSL하나의 Apache 웹서버에 동일한 포트로 다양한 SSL을 사용하는 서비스를 하기 위해서는 다음과 같은 방법을 사용하면 됩니다. 1. 가상호스 사용 - ServerName을 달리 설정한다. - 각 가상호스트마다 SSL 인증서를 설정한다. 2. NameVirtualHost 지시어 사용 설정 예제 참고하십시오.Listen 192.168.1.1:443 LoadModule ssl_module modules/mod_ssl.so SSLPassPhraseDialog builtin AcceptMutex flock SSLSessionCache shmcb:/var/cache/httpd/mod_ssl/ssl_scache(512000) SSLSessionCacheTime..

apache redirectmatch

아파치에서 설정한 도메인으로 접속한 모든 사용자에 대해 모두 특정 url로 보내고 싶을때(서비스 잠시 문닫아 서비스 안내공지 페이지로 보낸다던가...)RedirectMatch 옵션을 사용할 수 있습니다. RedirectMatch (.*) http://aaa.com/pp.html 이와는 약간 다르게...뒤에 주소를 그대로 가지고 가면서 도메인만 변경되는 경우도메인이 변경되어 뒤에 주소는 동일하나 도메인만 변경된 주소로 변경하여 Redirect 시킬 경우 Redirect / http://aaa.com

Apache 로그 파일 관리

* Apache 로그 파일 관리 1. 로그 rotation 적용 - 설명 : 아파치 rotatelogs를 이용하여 일자별 로그 생성 - 설정방법 : CustomLog "/usr/sbin/rotatelogs logs/access_%Y%m%d.log 86400" common 2. 로그 포맷 변경 - 설명 : 아파치 로그 출력을 아래의 항목으로 변경 - 설정방법 : LogFormat "%h - %t \"%r\" %s>s %b" common 항목 설명 %A (지역화된) 완전한 요일 이름 %a (지역화된) 3-문자 요일 이름 %B (지역화된) 완전한 달 이름 %b (지역화된) 3-문자 달 이름 %c (지역화된) 날짜와 시간 %d 2-자리 일 %H 2-자리 시간 (24 시간 시계) %I 2-자리 시간 (12 시간 ..

알아두면 유용한 apache httpd실행 옵션

httpd는 아파치의 데몬 실행파일 입니다.옵션을 통해 유용한 정보를 얻어 봅시다. [아파치 conf파일 바꿔 기동하기]./httpd -f /usr/local/apache/conf/httpd.conf./httpd -f /usr/local/apache/conf/httpd_abc.conf보통 기본 위치에 존재하는 httpd.conf를 이용하여 아파치를 실행하나,두개 이상의 설정 파일을 두고 서비스마다 따로 띄운다거나 등에 사용할 때 유용합니다../httpd -f /usr/local/apache/conf/httpd.confroot 32170 1 0 21:35 ? 00:00:00 ./httpd -f /usr/local/apache/conf/httpd.confnobody 32171 32170 0 21:35 ? 0..

apache graceful restart

운영중인 서비스의 httpd.conf등의 conf파일을 수정하고,해당 conf파일을 읽어서 apache가 새로 시작시킬 수 있는 방법이다. 현재 접속된 커넥션은 그대로 유지하고 그외 http 모든 프로세스를 종료시키고 재시작 시그널을 보낸다서비스의 세션 및 연결 종료없이 conf설정 파일 불러서 재실행단, 모듈 추가 등의 apache 내에 삽입되어야 하는 작업들은 반드시 restart를 해주셔야 합니다. 점잖은 재시작 시그널: USR1 apachectl -k gracefulUSR1이나 graceful 시그널을 부모에게 보내면 부모 프로세스는 자식들에게 현재 요청을 처리한후 종료하라고 (혹은 현재 아무것도 처리하지 않다면 즉시 종료하라고) 조언한다. 부모는 설정파일을 다시읽고 로그파일도 다시 연다. 자식이..