게임에서 메시징 시스템의 백 엔드로 데이터베이스를 사용하려고합니다 (일종의 인스턴트 메시징). 로컬 데이터베이스를 사용하여받은 메시지와 데이터베이스를 내 서버에 저장합니다.데이터베이스 게임 메시징 스키마
사용자 : 여기 내가 사용하고있는 테이블은
이름 (VARCHAR)
나 displayName (VARCHAR)
currentGames (VARCHAR)
메시지 :
보낸 사람 (VARCHAR)
수신기 (VARCHAR)
메시지 (VARCHAR)
타임 스탬프 (int)를
내 놀이터 n은 사용자가 메시지를 보낼 때 먼저 로컬 데이터베이스에 메시지를 저장 한 다음 메시지를 서버로 보냅니다.
사용자가 새 메시지 (폴링)가 있는지 확인하면 사용자는 먼저 자신의 로컬 데이터베이스에서 최신 타임 스탬프를 가져 와서이 시간 이후에 보낸 모든 메시지에 대해 온라인 데이터베이스를 쿼리합니다. 수신 된 모든 메시지는 데이터베이스에서 삭제됩니다.
내가이 일을하는 방식에 문제가 있습니까? 나는 최악의 상황을 대비하려고 노력하고 있으며 이런 종류의 계획이 어떻게 확장 될지 전혀 모른다. 나는 "사용자"테이블에 대해 고유 ID를 사용하지 않고 있어야한다고 생각합니다. 데이터베이스 경험이 제한되어 있으므로 고유 한 자동 증가 ID의 중요성이나 여기에서 내가 어떻게 도움이되는지 완전히 이해하지 못합니다. 모든 조언/비평은 인정 될 것입니다.
로컬 데이터베이스에서 일부 메시지를 먼저 저장하고 온라인 서버로 보내고 로컬 데이터베이스 메시지를 삭제합니다. 그래서 이걸 위해서'xml'과 같은 간단한 데이터 접근법을 사용할 수 있습니다. – Sudantha
오, 아니요, 로컬 데이터베이스에 저장하여 사용자가 로그 오프 한 경우에도 여전히 메시지를 볼 수 있습니다. 로컬 db에 안전하게 저장되면 서버에서 삭제합니다. xml을 사용하여 데이터를 전송하고 있습니다. 질문은 내가 스키마를 올바르게 수행하고 있는지에 대한 것입니다. – jnortey