본문 바로가기

분류 전체보기258

[Docker] 도커 이미지 디스크 초과 에러 아침부터 예상치 못한 에러를 만나 시간을 허비했다.할 일 많은데!failed to register layer: Error processing tar file(exit status 1): write /usr/local/opt/sam-cli/lib/python3.7/site-packages/samcli/local/docker/__pycache__/exceptions.cpython-37.pyc: no space left on device CDK로 빌드 중에 에러가 떠서 뭐지 이게 했는데 도커 이미지 디스크 용량이 초과해서 발생한 에러였다. 해결방법애초부터 그냥 무지막지한 용량을 할당해준다. 안쓰는 친구들을 지워준다.docker system prune​ 2022. 2. 17.
레거시 코드를 대하는 자세 원래 서비스와 완전히 분리가 일단 불가능한 상태에서 한 feature가 MSA로 나가는 상황. feature에서 데이터가 create되면 그 함수에서 event를 만들어 카프카로 보내게 만들었다. 그리고 그 카프카 이벤트를 MSA의 feature가 컨슘하게 되고 데이터는 MSA의 DB로 저장되게 된다. create 발생, event 생성 -> Kafka -> MSA -> DB 일단 이 방식으로 잘 동작하는 건 확인했고, 이제 모든 CRUD 에서 이 로직이 동작하게끔 해야하는데 여기서 문제가 생겼다. 레거시 코드가 너무 거대했다. update 함수가 수십개에 달하고 그 update 로직들이들이 어디있는지 모두 찾기가 어려웠다. 업데이트 로직이 컨트롤러에도 있고, 뭔가 알 수 없는 서비스에서도 업데이트가 일.. 2022. 1. 27.
DB에 쿼리 날리지 마라 입사한지 이제 정확히 50일 되었다. 처음으로 새로운 feature를 담당하여 맡게 되었고, 컨플루언스에 로드맵을 정리하여 올렸다. 아침 스크럼 이후, 슬랙에 피드백을 위해 로드맵을 올렸는데 CTO님이 내 글을 보시고 바로 댓글을 다셨다. "이거 일을 좀 더 크게 벌리는게 좋을거 같네요" 이유는 group by와 order by 쿼리를 DB로 바로 날리는 식으로 짰는데, 이렇게 하면 DB 서버의 부담이 크기 때문이었다. 물론 데이터가 작다면 상관없겠지만... 그럼 도대체 어떻게 해결해야하는가? 그래서 내가 'Redis에 일별로 데이터를 저장하고 데이터 정리는 백엔드에서 하는게 어떨까요?'라고 제안했다. 그랬더니 그게 엘라스틱 서치에서의 aggeregation 방식이라고 하셨다(뭔지 몰랐다). 그것도 좋긴.. 2021. 12. 20.