본문 바로가기

전체 글

(24)
ElasticSearch - index Alias를 활용한 유연한 인덱스 운영 ElasticSearch(이하 ES)를 사용하다 보면 운영 중인 index를 수정할 일이 생긴다. (mapping이나 setting 등) 그런데 ES는 MySQL과 달리 인덱스의 메타데이터를 수정하기가 쉽지 않다. (ES의 데이터 불변성이 인덱스에도 적용되는 느낌이다) 그래서 나는 보통 새로운 인덱스를 생성해 reindex를 해주는 방식을 사용했는데, 이 때 index의 크기가 클 경우 reindex의 시간이 길어 그 동안 해당 index를 사용할 수 없는 문제가 생긴다. 실제 운영 중인 서비스의 경우 이 문제가 상당히 크게 다가오는데, 이 때 유용하게 사용될 수 있는 것이 ES에서 제공하는 Alias 기능이다. Alias는 어떤 인덱스의 별칭을 정해두고, ES에 요청이 올 때 인덱스명이 별칭인 요청이 ..
클린코드를 위한 5가지 팁 클린코드 5가지 팁 검색이 가능한 이름을 쓴다. 86400 대신 SECOND_IN_A_DAY를 사용해 그 숫자가 무엇이 의미하는지 쉽게 이해하도록. 함수명은 동사로. 함수는 하나만 잘해야 함. 인자는 3개 이하로. 인자가 많을 경우 configuration object를 사용할 것. boolean을 인수로 보내는 것을 지양. boolean 사용 → 함수 내 if, else가 있다는 뜻 → 분리 필요 축약 등으로 짧은 변수명을 쓰지말고 이해하기 쉽게 쓰기. 참고 : 처음부터 클린코드를 하지말고, 마지막에 작업하기. 처음부터 로직과 클린코드를 동시에 신경쓰기란 쉽지 않음 출처 : https://www.youtube.com/watch?v=Jz8Sx1XYb04&ab_channel=노마드코더NomadCoders
MySQL show processlist - mysql에서 현재 실행중인 쿼리의 프로세스들을 볼 수 있음. RDS 재부팅이 AWS Console에서 가능하니 참고.