나는 PHP codeignitor와 MySQL을 개발하는 소셜 웹 사이트를 운영하고 있습니다. 다중 서버 환경을 처리하기 위해 데이터베이스에 사용자 세션을 저장합니다. 현재 데이터베이스는 1 개뿐입니다.소셜 웹 사이트의 사용자 세션 - 논리 질문
1) 여러 데이터베이스 (다중 서버)를 처리하려면 사용자 세션을 어떻게 그리고 어디에 저장해야합니까? 다중 데이터베이스 환경에서 데이터베이스가 작동하지 않는다고 가정합니다.
2) 사용자에게 제공된 세션 ID는 데이터베이스의 자동 증가 또는 응용 프로그램 논리에서 생성 된 것인가? GUID가되어야한다고 가정합니까?
3) 세션 ID와 함께 login_datetime, logout_Datatime, 웹/모바일 등 사용자와 관련된 모든 세션 관련 세부 정보를 기록하는 user_session 테이블이 있습니다. 따라서이 테이블은 2 단계로 작성되어야합니다. 사용자는 로그 오프 할 때 다시 로그인합니다. 질문은 사용자가 시스템이 날짜를 기록하기 위해 따라야하는 논리가 무엇인지를 logsoff 할 때입니까? 이 PK ID는 데이터베이스에 의해 구동되는 자동 기록 값이며 메인 세션 ID가 생성 된 이후에 생성되기 때문에 시스템이 데이터를 쓸 user_session을 어떻게 알 수 있습니까? 그래서 결국 user_session 테이블을 쿼리하여 user_Session ID를 찾은 다음 작성해야합니다.
기본 PHP 세션 메커니즘을 사용해 본 적이 있습니까? –
데이터베이스에 사용자 세션을 저장하는 것이 다중 서버 환경과 관련이 있습니까? 왜 PHP 세션이 당신에게 어울리지 않는가? 어쨌든. 다중 데이터베이스 환경의 문제점은 무엇입니까? 여기에 어떤 특별한 문제가 있습니까? –
memcached for sessions를 사용하면 꽤 잘 작동합니다. – mfonda