다음 기술 및 언어를 사용하여 MMO 서버를 작성합니다. .Net Framework 4, C#, SQL Server 2008 R2, Entity Data Model, LINQ.MMO 서버 - 사용자 상태 데이터에 대한 데이터베이스 액세스 최적화
내가 가지고있는 질문은 사용자 상태 데이터를 영구 저장 장치 (SQL Server)에 액세스하여 서버 성능을 향상시키는 방법과시기에 관한 것입니다.
이전에는 사용자가 MMO 서버에 로그온했을 때 사용자 연결이 지속되는 동안 빠른 읽기/쓰기 액세스를 위해 RAM에 모든 사용자 데이터를로드 했었습니다. 사용자가 서버에서 로그 오프하면 해당 데이터는 데이터베이스에 보존됩니다.
엔터티 데이터 모델의 출현과 관련된 캐싱의 경우이 메서드가 더 이상 필요합니까? 해야 할 때 Context.SaveChanges(); 이 경우에 전화해야합니까?
모든 안내는 내 질문과 관련하여 평가됩니다. 감사합니다. .
추가 정보 : 저는 .NET 엔터티 모델의 캐싱 기능을 다루는 사람이 없다고 생각합니다. .NET Entity Database 모델이 캐싱을 수행하므로 쿼리가 항상 실제 데이터베이스에 대해 실행되는 것이 아니라 RAM의 데이터에 대해 실행된다는 점을 이해합니다. 내 관점에서 볼 때 RAM 데이터 액세스와 데이터베이스 액세스를 구별 할 필요가 없습니다. 이것은 올바른 가정입니까?
얼마나 많은 사용자가이 데이터베이스에 액세스하려고합니까? 응용 프로그램을 빌드하는 동안 캐싱을 구현하는 방법을 살펴보고 다음 단계에서는 예측을 늘리려면 어떤 쿼리가 실행되는지 살펴 보는 것이 좋습니다. – Jethro
사람들은 왜 코멘트에 질문에 답합니까? –
@ 존 질문이 충분하지 않거나 "대답"이 "시도해야한다"와 같은 경우 사람들은 의견에서 "대답"하는 질문을하지만, 나는 당신의 문제를 돌 보도록 100 % 긍정적이지는 않다 " ,이 경우 주석 *이 올바른 것입니다 *. –