问一个设计scoket服务器方面的问题

诗和远方C 2019-06-20 03:07:05
好像也不完全是scoket服务器端的问题,我先说下:
现在设计了一个scoket服务器,浏览器《==》服务器《==》ios/安卓 app端,最终目的是能在网页上实时显示某个产品是否在线,并达到网页点击事件发送数据到app,app根据不同数据 转发给产品,做相应操作。

产品是绑定用户,一个用户有多个产品,一个app客户端只可同时在线一个产品,当前登录网站的用户只可查看本用户下的产品是否在线。

现在做网页这边查询数据的时候,根据UI设计的界面,根据用户查询产品内容有一些东西是在scoket服务器上的list中,就是那些app端实时传过来的数据,有一些是存在数据库中的东西,比如查此用户下的所有产品,在线和不在线的产品同时都要显示,在线的产品那我肯定在scoket可以查到,不在线的就得去DB里查了,用户下有多少产品。 还有产品的状态,是否在维修啥的(在DB中保存信息),产品的一些实时数据(在scoket中保存)
问题:

1.查询是在网页中写定时去scoket服务器中查呢,还是根据app端推送来的,服务器接收到实时数据,就找到相应的网页登陆用户推送过去。就是服务器主动推送好,还是网页主动查询好,还有频率需要大概在个什么频率好?

2.还一个问题就是上面说的,涉及到这种查询的时候怎么做比较好,要我的话可能就是在服务器确定需要返回的目标用户后,根据目标用户分别查出DB中的数据和scoket中的数据合并在一起返回出去。。这样好像有点别扭感觉。。。有啥好办法没


...全文
111 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq14923349 2019-06-20
  • 打赏
  • 举报
回复
其实很简单的 把微服务那套搬过来 先这样 再这样 然后那样 就可以了
wanghui0380 2019-06-20
  • 打赏
  • 举报
回复
别掉技术,有大白话写出要求就行了 1.有个客户登录上来,要要获取一个列表,列表项目里有个状态属性 2.客户可以把状态属性里,可以运行的产品设置为当前产品 3.设置当前产品前,检查是否可用(状态正常,并且在线) 4.通知前面那个产品下线,同时启动设置当前产品(其实也不必产品下线,只需要把请求转向或者ip转向) 这个你要这么写出来了,其实就跟俺们的所谓API注册中心,都是一个玩意。(注册,状态检查,推选主控)
wanghui0380 2019-06-20
  • 打赏
  • 举报
回复
哎呀,我勒个去。你这个绕来绕去的绕口令 这才是真正的domain,啥子仓储完全就是没招。 来吧,别绕。告诉这个领域有啥,别绕。别掉技术。无非就一句话“有个客户登录上来,要要获取一个列表,列表项目里有个状态属性” 好了,我不管你那些什么sokect,什么db。就是那玩意放火星上都行。什么推啊,拉啊,别绕。就只是红字那一句话,把他实现了就行。 本来我们可以说有etcd,有redis,有consol,----------------但是我们不想提,因为你自己还在绕来绕去,我们不想在这种情况下,多给你几个词,在多点你更绕不出来了
诗和远方C 2019-06-20
  • 打赏
  • 举报
回复
分有点不够用了,要去水水贴了

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧