0. PHP 뮤텍스 락 설치법(redis 활용)

 

https://xe1.xpressengine.com/tip/23276556

 

 지난번 PHP 뮤텍스 락 설치법(memcached 활용) 을 공유드렸습니다.

사용하면서 memcached 가 안좋은 면이 발견되어 redis 로 전환하였습니다.

* 문제 : 커맨드 라인에서 인터럽트 시 memcached 재기동하기 전까지 해당 세션은 락을 계속 갖고 있는 문제 (웹브라우저 인터럽트 시에는 문제 없었으나 동일현상이 웹브라우저에서 발생할 여지가 완전히 없는 것인지 불확실)

* 대체 : redis 를 활용할 경우 위 문제 해결 (인터럽트 시 지정한 겟 락 허용 시간 초과 시 락 릴리즈 확인)

 

1. Windows 에 Redis 설치하기

https://www.lesstif.com/pages/viewpage.action?pageId=54952780

별도의 패키지 관리자를 사용하지 않는다면 MSI 인스톨러 버전을 설치하는 게 편리합니다.

브라우저를 열고 Redis-x64-3.2.100.msi 를 다운받은 후에 실행해서 설치합니다.

https://github.com/MicrosoftArchive/redis/releases/download/win-3.2.100/Redis-x64-3.2.100.msi

 

2. php_redis.dll 을 다운하기

https://windows.php.net/downloads/pecl/releases/redis/3.0.0/

php ext 디렉토리에 복사 ...

 

3. php.ini 설정하기 

[redis] 

extension=php_redis.dll ; <= 위 make install 에서 확인된 redis 모듈 경로를 기입하세요.

session.save_handler = redis  ;<= 기존 session.save_handler 가 활성화 되어 잇다면 주석

session.save_path    = "tcp://127.0.0.1:6379"  ; <= 기존 session.save_path 가 활성화 되어 잇다면 주석