Skip to content

Conversation

@Junh-b
Copy link
Contributor

@Junh-b Junh-b commented Jun 23, 2025

✨ 작업내용

  • ConcurrentSkipListSet 기반 주문큐로 변경
  • otel-collector, spanmetrics 도입
  • jaeger 설정 변경

🐞 이슈사항

이슈 번호 제목 상태
#000 예시 이슈 ✅ 해결

⚠️ 특별사항

  • monitoring 스택이 일부 수정되었습니다.
  • jaeger가 기존 only inmemory 방식에서, 파일 저장도 되는 방식으로 수정되었습니다.
  • jaeger가 자주 터지는 현상을 수정하기 위해, jaeger에 전달되는 trace의 양을 1% 수준으로 줄였습니다. 과도하지 않은 요청을 보내지 않는 상태에서 더 많은 trace를 받고 싶으시면 otel-collector-config.yml에서 sampling_percentage를 늘려주세요

Junh-b added 14 commits June 16, 2025 12:45
기존 PriorityBlockingQueue 기반의 주문 큐를, ConcurrentSkipListMap, ConcurrentSkipListSet을 사용한 구조로 변경했습니다.
매수 주문이 생성시간과 반대로 정렬되고 있었던 문제를 수정했습니다
span으로부터 나온 trace정보로부터 metric을 추출해내는 설정을 반영했습니다
기존 jaeger가 인메모리 기반으로 동작하여 자주 종료되는 이슈가 있었기에 파일 기반으로 동작하도록 변경했습니다
추가 지표를 제공하도록 actuator yml 설정
jaeger가 터지지 않도록 sampling 비율 수정
jaeger가 셀프 모니터링시 오류가 발생하지 않도록 수정
hibernate가 너무 많은 지표를 전달하기 때문에, 얻고 싶은 지표만을 필터링합니다.
테스트 환경에서만 동작하고, local.properties의 secret에 기반해 동작하므로 안전합니다
wallet 생성 시점이 바뀐 후, 제대로 동작할 수 있도록 데이터 초기화 코드를 변경했습니다.
hibernate metric 지표가 warn 레벨로 찍히도록 수정,
docker compose시 intellij 디버그용 에이전트를 포함하지 않도록 변경
기존 PriorityBlockingQueue에서 ConcurrentSkipListSet 기반으로 적용되도록 변경했습니다
@Junh-b Junh-b self-assigned this Jun 23, 2025
@investfuture-sonarqube1
Copy link

Failed Quality Gate failed

  • 23 New Issues (is greater than 0)
  • 58.50% Coverage on New Code (is less than 80.00%)
  • 31.69% Duplicated Lines (%) on New Code (is greater than 3.00%)

Project ID: CleanEngine_cleanengine-be_2b6f2f63-fa39-426c-b9c7-8aa127fd14d8

View in SonarQube

Copy link
Contributor

@caniro caniro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

불필요 설정 제거 및 otel collector 추가, 큐 구조 변경 고생하셨습니다.
주문 관련 작업과 체결 관련 작업 사이에 간섭이 훨씬 덜하겠네요.

@Junh-b Junh-b merged commit 581043c into dev Jun 23, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants