개발일기 - 2022-05-24

jude Kim·2022년 5월 24일
0

개발일기

목록 보기
21/28

몸상태 안 좋은지 15일째 - 아직도 약간의 몸살기와 인후통이 있다. 진통제 한알
재택근무

오전

  • DailyScrum
  • 마일스톤을 위한 사전 점검 미팅

오후

  • 테스트 데이터 작성 및 공유
  • 코드 리뷰
  • ObjectBuilder 구조 리팩토링 및 버그 수정
  • Sequence 에 의한 이슈 해결
  • ReactiveRequestContextFilter 작성

아침부터 코드 삼매경.

오늘의 이슈

  1. 마일스톤을 위한 정리 논의 중 테스트 데이터 정리 필요
  2. 생각지도 못한 sequence 처리가 있어 당황스러웠다. 정규식으로 해야 하나 심각하게 고민했다.
  3. webflux 기반의 코드는 생각보다 레퍼런스가 적다.
  4. ReactiveRequestContextFilter 작성

마일스톤 논의중 테스터 데이터 정리가 얘기나와서 데모전에 준비도 할겸 겸사겸사 진행했는데 생각보다 지루하고 오래 걸리는 작업이었다.
한 3시간은 집중해서 만들어낸것 같다.
Flyway 파일로 만들까 하다가 이것도 마이그레이션 이슈가 생길듯 해서 별도의 파일로 만들고 위키에 정리해두었다.

어제 DB 설정 및 라이브러리 정리를 하고 나서 PostgreSQL이 비약적으로 빨라졌다. 로컬에서 진행하는 것이라 당연하게 빠를것이라 첨에 기대했는데 느려서 원래 그런가보다? 라는 안일한 생각으로 진행했는데 뒷걸음질 치다가 쥐를 잡았다.

멀티 모듈 환경이라 중복된 라이브러리가 있는듯 해서 정리를 했는데, DB관련 라이브러리가 중복되었고, 이로 인해 느렸던 것이었다.

대략 500ms ~ 2000ms 정도 걸리던 API가 10ms ~ 500ms 정도로 빨라졌고, 마치 mybatis 내부에 있는 캐시같은게 있나? 싶을 정도로 빨라져서 놀랬다.

나만 그런가 싶어 팀원들에게 관련사항 공지하고 머지된 코드를 받아서 실행해보라했는데 모두 비약적으로 빨라진 속도를 체감했다고 하니 근본적인 문제가 있었나보다.

라이브러리가 겹쳐서 이런 문제가 생길거라고는 상상도 못했다.

ObjectBuilder 개발하다 다시 난관에 봉착했다.
sequence 는 위치에 따라 가변적이라서 단순 replace가 안되는데, 그걸 까맣게 잊고 있었다. 역시 생각을 엄청나게 했지만 이런부분도 예측하지 못했다.
한순간은 sequnce 쯤은 어짜피 정렬상태로 내려주니 무시해도 되지 않을까? 했지만.. 타협하면 안된다. ( 할생각도 없었음 )

암튼 무사히 잘 정리했다.
다만, 불안요소가 계속 있긴하다.

Promotion API 개발하면서 코드 리팩토링을 했다.
생각보다 많이 뜯어 고치고, 진행하면서 ThreadLocal 과 같은 Context를 알게 되었고, Webflux 레퍼런스를 찾아서 적용했다.

잘 동작했다.

요즘 잠을 제대로 못자서 컨디션이 좋지 않다.
빨리 자려면 술을 마셔야 하나? 라는 생각까지 들었다.

최근 6시 이후에 먹지 않았는데.. 오늘은 둘째가 나가서 먹고 싶다고 해서.. 기사겸 출동했다.

돌아와서 지금까지 다시 코딩하고 커밋하고 일기쓰는 중.
자야겠다.

profile
씨봉봉이

0개의 댓글