찾다

 >  Q&A  >  본문

聊天系统的mongodb设计问题

我想用mongodb加nodejs做一个聊天系统 他有添加好友和给好友分组的功能 不知道这样的mongodb要怎么设计比较好

天蓬老师天蓬老师2762일 전640

모든 응답(4)나는 대답할 것이다

  • 黄舟

    黄舟2017-04-24 09:14:18

    으아아아

    사람들이 명확하게 mongo에 대해 질문했지만 위의 사람들은 모두 redis라고 대답했습니다. Redis는 1차원 선형 데이터에 매우 유용하지만 여전히 mongo와 같은 관계형 데이터에 사용해야 합니다.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-24 09:14:18

    데이터베이스: 지속성을 고려하면 mongodb는 여전히 충분히 빠르지 않습니다. 캐시 레이어를 추가하는 것이 좋으며, Redis의 Ordered Collection을 사용하는 것이 좋은 선택이 될 것입니다.
    프로그래밍 방식으로 web/iOS/Android가 통신할 수 있도록 websocket을 통해 구현합니다. 클라이언트와 서버가 연결을 맺은 후 클라이언트는 서버에 메시지를 보내고 이를 redis에 저장한 후 온라인 대상 친구에게 보냅니다. 서버를 통해.
    상대방이 오프라인인 경우 상대방이 온라인 상태가 되는 즉시 읽지 않은 메시지를 검색하여 상대방에게 보냅니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-24 09:14:18

    Redis가 주도하고 pgsql이 백업을 수행합니다. mongodb가 이런 일을 합니다. . . . . 이 장면에는 아직 적합하지 않습니다.

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-24 09:14:18

    어떤 영구 데이터베이스도 이 요구 사항을 충족할 수 없습니다. 버퍼링을 위해서는 Redis가 필요하고, 지속성을 위해서는 Redis가 필요합니다. (특정 솔루션을 온라인으로 검색할 수 있습니다. Momo의 기술을 사람들이 공유한 것으로 기억합니다.)
    버퍼링 후 mongodb에 데이터를 저장하는 방법은 기본적으로 데이터를 합리적인 방식으로 저장하는 방법만 고려하면 훨씬 쉽습니다.

    회신하다
    0
  • 취소회신하다