답변 3개
다른 변수가 있을 수 있지만.. 생각나는대로 말씀드리겠습니다.
일단 컬럼 3개 추가 상태컬럼, 수정자, 상태업데이트 시간
1. A가 게시물의 수정버튼클릭(수정페이지 진입시 컬럼업데이트(상태[수정 중],수정자[A], 시간 업데이트 ))
-수정 모드시 1분 또는 수분 단위로 ajax를 이용하여 컬럼업데이트(상태[수정 중],수정자[A], 시간 업데이트 ))
2. B가 수정 시도시 컬럼정보(컬럼업데이트(상태[수정 중],수정자[A], 시간 업데이트 ))를 이요하여 차단
-상태가 수정중인데 상태업데이트가 1분이상(이론상 1분이지만 프로그램단에서는 10분이상으로 하는 거이) 경과한 경우 수정중 문제(사용자 세션 만료, 네트웍 오류등)가 생긴걸로 판단 수정 진입가능
3. 최종 업데이트시 다시한번 누군가 수정중인지 체크..
댓글을 작성하려면 로그인이 필요합니다.
DB를 이용하게 되면 정상적인 사용방법으로 사용시에는 문제가 없지만, 진행 중간에 창을 닫아버리거나 인터넷이 끊어져 버리거나 하는 여러가지 변수가 발생하게되면 오작동 우려가 있습니다. (볼피드님 말씀대로 브라우저 종료 처리가 중요합니다)
mysql lock을 이용하는 방법도 있습니다. 참고하세요.
https://backdoosaan.tistory.com/58">https://backdoosaan.tistory.com/58
https://blog.appkr.dev/cheatsheet/understanding-mysql-db-lock/">https://blog.appkr.dev/cheatsheet/understanding-mysql-db-lock/
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인