본문 바로가기

개발 이야기8

Redis Cluster 환경에서 'DEL Collection'은 왜 안 될까? 레디스를 로그로 활용해 스케줄링으로 수집하는 로직을 만들 때 발생했던 이슈이다.사실 increase로 쉽게 개발할 수 있었는데, 그 땐 increase를 몰라서 선택지에 두지 않았다. 저장한 키는 prefix_datetime 이런 구조였다. datatime에 ms 단위까지 저장하기 때문에 거의 겹칠일이 없었고, 반드시 수집해야하는 로그도 아니여서 겹칠 수 있다는 상황 자체를 고려하지 않았다.쨋든, 스케줄링의 역할은 하루에 저장된 여러 개의 prefix_datetime 키가 몇개있는지 찾아와 저장하고, 삭제하는 방식이였다. (사실 삭제할 필요도 없었다. TTL을 걸었다면 .. 옛날의 나는 여기까지는 생각못했던 것 같다.) 로컬에서 prefix를 기준으로 키를 가져와 데이터 개수를 세고, 삭제한 후, 가져온.. 2024. 7. 20.
비즈니스 로직 분산 입사 초에 있던 일을 공유해보려고 한다. 우리 회사는 백로그 단위로 일을 하며, 각 분야별로 1명씩 붙는다. 예를 들어 1개의 백로그에 기획, 백엔드, 프론트엔드 이런 식으로 붙는다.입사 후 사수와 같이 계속 작업을 하다가, 어느 정도 적응을 하고 처음 혼자 맡게된 백로그였다. 개발해야 하는 백로그는 주문 지연 알림톡이라고, 주문이 20분 이상 지연될 경우 관계자들한테 일괄적으로 알림톡을 보내는 기능이였다.지금 다시 한다면 쉽게 구현이 가능하겠지만, 그 때는 경험이 없어서 어려웠던 것 같다. 주문은 새벽에 발생할 수도 있는데, 주문 알림톡이 새벽에 온다면 짜증나지 않을까? -> 그래서 시간 조건도 존재하였다.마트와 마트 관계자는 1:N 관계이다. 최종적으로 알림톡을 보내는 시간 조건은 마트의 운영 시간에.. 2024. 7. 13.