이야기를 나눠요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
스프링 DB 2편 - 데이터 접근 활용 기술
자바와 데이터베이스에 대한 기본기 보강 문제...
선생님, 안녕하세요강의들 너무 즐겁게 듣고 있습니다.선생님 강의를 통해 정말 즐겁게 개발하는 실무 1~2년차를 보낼 수 있었는데요, 선생님 강의 중에 자바를 기반으로 스프링과 JPA 두 가지 무기를 탄탄히 하라는 말씀을 종종 하셔요.스프링은 선생님의 강의와 강의 자료들, 토비 선생님의 책과 강의를 바탕으로 공부하고JPA는 역시 선생님의(^^) 강의와 책을 한 바퀴 돌리고 필요할 때 마다 찾아보고, 실무에도 적용하며 계속 공부하고 있는데요이번 강의에서도 그렇고, 2년차 이직 면접을 보러 다니면서 느낀 점은... 자바 기본기 추가 공부와... 특히 데이터베이스 기본기 쪽으로 다지기~심화 공부가 많이 필요하겠다는 생각이 들었습니다. 선생님과 spring과 jpa를 공부한 것 처럼 자바와 DB 모두 사용 이면에 원리 터득이 필요한 시점이라고 느껴졌어요. (더불어 회사에서는 이제 자바 17로 가자는 이야기도 솔솔 나오고 있는데, 이런 변화에도 미리 준비하여 대응하고 싶습니다!)자바, 데이터베이스 분야에서 입문~기초 단계를 지났다고 했을 때, 초급~중급 단계를 밟아가는 시점에 보면 좋을 데이터베이스와 자바 기본기를 다질 수 있는 책과 공부할 거리들 추천해주시면 감사하겠습니다.
-
실전! 스프링 데이터 JPA
DB 동시성 이슈
안녕하세요. 선생님의 강의를 수강하고 MSA프로젝트를 수행하던 중 의문이 생겨 질문드립니다. 상황 : - order-service가 A, B 두개의 애플리케이션으로 운영되고 있습니다. - 두개의 서비스는 단일 DB를 공유합니다. - 주문 수량만큼 아이템의 수량이 감소됩니다. - 아이템의 수량은 1개가 남아있습니다. - 이때 A, B가 동시에 아이템을 한개씩 주문합니다. 이슈 : 1. A의 서비스 로직에서 아이템의 수량이 주문 가능함을 확인 2. B의 서비스 로직에서 아이템의 수량이 주문 가능함을 확인 3. A는 주문 로직을 수행, 아이템의 수량은 0이 됨 4. B는 2.에서 주문 가능함을 확인했기 때문에 주문 로직을 수행 5. B는 주문 할 수 없는 상황임에도 불구하고 주문이 완료됨 2번을 실행할 때 modified_date를 저장하고 있다가 4번에서 modified_date를 비교하여 2번과 4번 사이에 데이터가 수정되었는지를 확인하는 방법도 생각해보았는데요. 그 사이에 데이터가 수정되었다고 해서 매번 요청을 거절하는 것도 문제가 있다고 생각이 됩니다. 시간이 굉장히 짧기 때문에 이런 일이 일어날까 싶기도 한데... 실무에서는 어떻게 생각하시는지, 어떻게 해결하시는지 궁금합니다. 강의 내용에 다소 벗어난 내용이라 죄송하지만ㅠㅠ 선생님의 답변을 듣고 싶어 질문 드립니다. 감사합니다.