PHP 매뉴얼에서 session.gc_probability와 session.gc_divisor는이 확률에 따라 gc가 발생한다고 설명합니다. 알 겠어.PHP 가비지 컬렉션 설명
이 확률이 세션별로 또는 전체적으로 세션에 있는지 여부는 확실하지 않습니다.
따라서 GC가 발생하는 확률이 1 % (1/100)라면 특정 세션이 정리 될 1 % 변경이있을 때마다 한 세션이 계속 확장되는 것을 의미합니까? 또는 기존의 모든 세션 (새 세션은 물론)의 1 %가 다른 모든 기존 세션에 대해 GC를 트리거한다는 의미입니까?
나는 꽤 후자라고 확신한다. 나는 확실히하고 싶다.
이 질문의 목적은 본 사이트에서 사용자들에게 장기간 세션 (6 개월)을 제공하기 위해서입니다. 모든 세션의 1 %가 GC를 트리거하면 GC는 매시 또는 2 시간마다 종료되므로 장기 세션을 갖는 목적을 효과적으로 제거합니다.
매우 흥미로운 질문입니다! +1 –
related http://stackoverflow.com/questions/3865303/debian-based-systems-session-killed-at-30-minutes-in-special-cron-how-to-overri –
이 시도를 읽는 다른 사용자에게 6 개월의 세션 파일로 인해 심각한 성능 문제가 발생할 수 있습니다 (아래 명시). 그러나 session_set_save_handler()를 사용하여 FS 대신 DB를 사용하는 사용자 정의 세션 처리기를 작성하여 많은 성능 저하를 방지 할 수 있습니다. – Meep3D