일단 해보고, 아니면 뭐

실패했어도 배웠으면 실패가 아냐.

무한한 개발세계 여행기

Database/Elastic Search 2

Elastic Search는 Thread Pool 관리를 어떻게 할까?

어느 회사에서든 비슷하겠지만 내가 다녔던 회사는 운영 서버를 패치하는 날이면 모든 팀원들이 각각의 서비스들을 빌드하고 배포한 후에 운영에 이상이 없는지 전체적인 테스트를 거치게 된다. (모든 개발자가 세상에서 제일 예민한 시간) 나도 마찬가지로 내가 담당하고 있는 서버를 빌드 배포한 후에 로그와 함께 예기치 못한 Exception 이 나지는 않는지, 새로 추가된 기능들이 정상적으로 동작하는지 등의 점검을 진행했다. 로그를 계속적으로 모니터링 하고 있는데, 사용자에게 표출되지 않는 내부 스케줄러 로직에서 에러가 계속적으로 나고 있는걸 확인할 수 있었고, Elastic Search관련 로직에서 'HTTP/1.1 429 Too Many Requests'과 같은 에러 로그가 출력되고 있었다. 무슨 로그였을까? ..

Elastic Search 데이터 필드타입 변경하기 (Re-Index)

회사에서 사용 중인 Elastic Search 일정 Template의 데이터 필드 타입이 무언가의 이슈로 인해서 수정해야 할 일이 생겼다. 데이터 필드 타입 바꾸는 걸로 포스팅을 쓸게 있다니? 사실, 결론부터 말하면 한번 지정하여 Template를 등록한 후에는 데이터 필드 타입을 변경할 수 없다! 오마이갓 아니 그러면 어떻게 해야 할까? 기존 Template를 Delete 하고 새로 만들면 된다! 이상. 장난이었다. (진짜 이 방식으로 했다가 지운 데이터를 필요로 하는 개발자분에게 저 이모티콘 처럼 사과를 해야 하기도 했다.) 개발환경이거나 데이터가 수집되기 전이라면 위의 방식처럼 삭제하고 새로 만들어도 무방하지만, 운영환경이거나 수집되고 있는 데이터를 지워서는 안 되는 경우에는 그저 지우고 새로 만드..