最近项目要使用到websocket做消息通知功能,分析完这个需求之后,开始查资料,开发一个功能需要把思路理清楚是很重要的,今天先在这边文章把开发思路捋一捋。
消息通知:主要做消息通知,我们公司做的产品电子名片,用户关注你和你交换信息的时候会收到消息通知,这里就需要一对一通信。用户通知是广播模式。
用户connect到websocket服务端,服务端记录用户在线状态,项目是集群部署的,这里需要使用redis缓存记录,用户关注和交换信息的时候,会给关注的人发送一条消息通知,将发送的内容,将关注人的信息发送到客户端。用户新建名片也通过消息发送新建的名片信息。模版更新也会通知到用户。这样做的目的是为了减少客户端的查询次数,提高软件的性能。
附近的人:今天要阐述的第二个功能开发思路是附近的人,我们后端采用node.js来写的,mongodb数据库。mongodb有地理位置索引,2d和2dsphere,对应平面和球面。能够实现搜索附近的人。
智能推荐:根据用户特征推荐相关客户