CI 묻고 답하기

제목 ci_session_lock에 대하여 질문드립니다.
카테고리 CI 2, 3
글쓴이 케케케 작성시각 2021/01/25 15:33:26
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 9660   RSS

안녕하세요

기존에 있던 서버가 window환경에서  + xampp + codeigniter2 + mysql을 사용하였는데

서버를 이전하면서 linux환경에서 docker컨테이너로 + apache2 + codeigniter3로 변경하였습니다.

 

소스는 codeniger2와 codeginiter3의 차이때문에 다른점만 있고 나머지는

대부분 동일한데요

서버 이전을 하고나서 아래와같은 slow쿼리가 쌓이고 있습니다.

이거 외에 특정 프로시저도 slow쿼리가 계속 발생중입니다.

DB는 동일하게 바라보고있습니다.

 

 

문제를 보면 ci_session_lock는 무시해도 되고

ajaxcall을 여러번 호출하면? 이라고 생기는 문제라고 하는데

전에는 발생하지 않던 문제가 계속 발생하고 dba가 해당 문제에 대해서 문의가왔네요...

해당 문제의 원인과 해결법에 대해서 질문드립니다

 

 

 

# Query_time: 7.714971  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0

SET timestamp=1609982238;

SELECT GET_LOCK('8c1fee26eedc80fcd0728f5c7c3e4010', 300) AS ci_session_lock;

# User@Host: nbb_****[nbb_*****] @  [10.168.XXX.XXX]  Id: 93596088

 

 

 

# Query_time: 4.658136  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0

SET timestamp=1609982242;

SELECT GET_LOCK('c89e0448913e88cf0ed604cbdd673852', 300) AS ci_session_lock;

#User@Host: nbb_****[nbb_*****] @  [10.168.XXX.XXX]  Id: 93596109

 다음글 Flashdata에 대해서 (3)
 이전글 로그인 세션 불러오기가 안 됩니다 (4)

댓글

변종원(웅파) / 2021/01/26 10:56:15 / 추천 0

검색해보니 db세션을 다른 드라이버로 바꾸거나 ajax 호출을 여러번 하지 않도록 처리하는 방법이 있더군요.

특별히 db세션을 사용해야 하는 이유가 있는게 아니면 파일 드라이버로 바꾸는 것을 추천합니다.

케케케 / 2021/01/26 14:50:50 / 추천 0

웅파님 답글 감사합니다.

세션에 저장된id로 다른것을 하는게 있어서 db세션을 활용해야합니다.

 

기존에는 생기지 않던 이슈인데 어렵네요 ㅠ