개발자

스프링 부트 프로젝트 성능 개선 궁금증

4월 7일조회 112

다른 사람들의 포트폴리오들을 보면 예를 들면 API 요청 시간이 평균 10ms → 6ms로 줄였다 이렇게 성능 개선을 하던데 주로 어떻게 하는지가 궁금합니다. 프로메테우스랑 그라파나를 사용하고 jmeter으로 부하를 걸고 성능을 테스트 하는건가요? 어떤 방식으로 사용하는지 잘 모르겠습니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 0

답변이 없을 때 보이는 아이콘

첫 답변을 기다리고 있어요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

4월 7일

송부트 프로젝트의 성능을 개선하는 방법은 다양하며, 그 중 일부 방법은 다음과 같습니다: 1. **프로파일링**: 프로파일링 도구를 사용하여 시스템의 성능 병목 지점을 찾습니다. 이 과정에서 JVM 모니터링, SQL 쿼리 분석 등이 포함될 수 있습니다. 대표적인 도구로는 JProfiler, Yourkit 등이 있습니다. 2. **캐싱**: 자주 사용되거나 변하지 않는 데이터에 대해 캐시를 사용할 수 있습니다. 이는 데이터 접근 시간을 줄여 성능을 향상시킵니다. 3. **데이터베이스 최적화**: 인덱스 설정, 쿼리 최적화 등으로 데이터베이스 성능을 향상시킬 수 있습니다. 4. **비동기 처리**: 가능한 경우 요청-응답 사이클 없이 별도의 스레드에서 비동기로 작업을 처리하여 성능을 향상시키는 것입니다. 5. **부하 테스트와 모니터링**: JMeter 같은 부하 테스트 도구를 사용하여 시스템에 부하를 주고 어디에서 문제가 발생하는지 확인합니다. 또한 Prometheus와 Grafana 같은 모니터링 도구를 활용하여 시스템의 메트릭을 지속적으로 모니터링함으로써 성능에 문제가 발생할 수 있는 지점을 사전에 파악하고, 적절한 대응을 할 수 있습니다. 활용하는 방식은 프로젝트의 특성과 요구사항에 따라 달라질 수 있습니다. 예를 들어 데이터 접근이 빈번하다면 캐싱을, 데이터베이스 조회가 복잡하다면 쿼리 최적화와 인덱싱을 고려해볼 수 있습니다. 각 방법들은 그 자체로도 큰 주제이므로, 필요한 부분에 대해서는 추가적인 학습이 필요할 것입니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!