2012-11-12 11 views
0

나는 현재 웹 페이지에서 작업 중입니다. 웹 페이지는 채팅 네트워크와 비슷하기 때문에 사용자가 열어 다른 사람들과 채팅 할 수있는 여러 대화방이 있습니다.대화방에있는 사용자 목록

제 문제는 내가 대화방에 입장 한 사용자를 보여주는 가장 좋은 방법을 모른다는 것입니다. 대화방이나 다른 세션에있는 사용자를 저장하기 위해 세션 변수를 사용합니까? 항상 업데이트되고 변경된 이후 데이터베이스에 저장해서는 안됩니다.

이 응용 프로그램에는 MVC 3이 사용됩니다.

미리 감사 드리며 명확하지 않은 것이 있는지 물어보십시오.

+0

이것은 많은 것들에 달려 있습니다. 대화방을 만들고 관리하는 데 당신은 무엇을 사용하고 있습니까? 이를 위해 프레임 워크를 사용하고 있습니까? 아니면 자신의 솔루션을 롤백 했습니까? 전자의 경우,이 방법을 제공 할 수 있습니다. 후자의 경우 구현은이 질문에 대한 가능한 대답을 제한합니다. – Tyrsius

답변

0

세션 변수는 세션마다 고유하므로 세션 변수를 사용할 수 없습니다. 내 머리 꼭대기에서 벗어나는 한 가지 방법은 사용자에 대한 모든 정보가 포함 된 ChatUser 클래스를 만든 다음 List generic 콜렉션이있는 서버의 각 채널에 대한 Cache 객체를 만드는 것입니다.

사용자가 채널에 가입하면 캐시 된 목록에 추가되고 채널을 벗어날 때 캐시 목록 컬렉션에서 제거됩니다.

이렇게하면 모든 것을 메모리에 유지합니다.

+0

감사합니다. 세션으로 생각한 것이 무엇인지 모르겠군요. – kakebake