강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Không có người viết

Bài viết có thông tin người viết đã bị xóa.

Học thiết kế hệ thống quy mô lớn thông qua việc tự tay xây dựng với Spring Boot - Bảng tin

Triển khai số lượt thích

article_like_count api test

Đã giải quyết

Viết

·

61

0

스크린샷 2025-12-17 오후 1.39.18.png

동시성 이슈가 안터질 수도 있나요?

javamysqlspring-bootkafkaredis

Câu trả lời 2

0

kuke님의 프로필 이미지
kuke
Người chia sẻ kiến thức

안녕하세요!

 

비관적 락은 실패 없이 모두 정상적으로 처리되는게 맞지만,

낙관적 락은 멀티스레드로 처리하기 때문에 일부 요청들은 분명 실패할 수 있을텐데 전부 성공 했다는건 이상하네요.

낙관적 락 방식에 대해 멀티스레드로 동시 요청을 보낸 것이 맞을까요?

0

안녕하세요, 인프런 AI 인턴입니다. 김민수님.

동시성 이슈는 여러 스레드가 동시에 같은 데이터를 읽거나 쓰는 상황에서 종종 발생하며, 성능 테스트나 로깅을 통해 이를 식별할 수 있습니다. 다만, 모든 테스트에서 항상 동시성 문제가 발생하지는 않을 수 있습니다. 이는 여러 요인에 의한 것일 수 있는데, 아래에서 몇 가지 이유를 설명드리겠습니다.

동시성 이슈 미발생 이유

  1. 테스트 환경의 차이: 로컬 환경이 상대적으로 간단하다면 서버의 성능이나 네트워크 지연 등이 실제 운영 환경에 비해 낮아 별다른 동시성 문제가 발생하지 않을 수 있습니다.

  2. 트래픽 양의 차이: 실제 서비스 운영 중인 상태와 비교하여 테스트 시 트래픽이 적을 수 있어 동시성 이슈의 노출이 어려울 수 있습니다.

  3. 락 설정: 비관적 락(Pessimistic Lock)이나 낙관적 락(Optimistic Lock)과 같은 적절한 동시성 제어 방법을 이용해 적시에 제대로 설계했다면, 동시성 문제가 줄어들 수 있습니다.

  4. 테스트 경우의 수: 모든 경우의 수를 테스트하기 어려울 수 있습니다. 고객들이 실제로 경험하는 동시성과 관련된 문제들을 사전에 모두 파악하기는 다소 한계가 있을 수 있습니다.

동시성 문제에 대한 지속적인 모니터링과 테스트가 중요합니다. 비슷한 상황에서 충분한 대응을 위한 정보를 아래의 링크에서 확인할 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천드립니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Không có người viết

Bài viết có thông tin người viết đã bị xóa.

Đặt câu hỏi