강의

멘토링

커뮤니티

Inflearn Community Q&A

ddr478525103's profile image
ddr478525103

asked

[MMORPG Game Development Series with C# and Unity] Part 6: Web Server

Blazor and WebApi Integration

DB를 수정하는 과정에서 Lock의 사용 유무

Written on

·

391

0

현재 강의를 보며 DB를 실시간으로 수정하는 것을 확인했습니다. 궁금한 점은 DB를 수정하는 과정에서 별도의 Lock이 없이 코드를 작성했다는 점입니다. 멀티 쓰레드, 멀티 유저 상황에서 DB에 접근한다면 race condition이 발생할 수 있다고 생각이 듭니다.

현재 블레이저로 만든 툴은 맛보기 정도라서 그런 상황을 고려하지 않은 거고 추후 서버에서 DB의 정보를 수정할 때는 lock을 걸어서 관리할 예정인가요?

찾아봐도 await 자체가 그런 기능을 하지 않는 것 같아 질문 남겨봅니다.

rest-apiASP.NET-Coreblazorweb-api

Answer 2

0

  1. RDBMS 제품군들은 lock 을 프로그래머가 별도로 걸어줘야 한다는 얘기일까요?

  2. mssql 도 락을 별도로 걸어줘야 하나요?

0

Rookiss님의 프로필 이미지
Rookiss
Instructor

RDBMS 제품들은 다 LOCK을 건다고 생각하시면 됩니다.
딱히 크래시는 나지 않겠지만
멀티쓰레드 환경에서 동시에 실행할 경우
어떤 SQL QUERY가 먼저 실행될지는 운빨겜이 되겠죠.
그렇기 때문에 컨텐츠 단에서 큐를 만들어서 일감을 관리해줄 필요가 생깁니다.

ddr478525103님의 프로필 이미지
ddr478525103
Questioner

늦은 시간 답변 감사합니다.

ddr478525103's profile image
ddr478525103

asked

Ask a question