关于C#由后台推送数据到前端HTML显示

邓燕华 2018-04-20 05:59:22
第三方按照我们要求的数据格式通过我们提供的接口推送数据过来,我们这边的前端负责暂时,现在有一种思路,就是我把传递过来的数据存储到本地,然后前端定时刷新页面读取本地数据显示;还有另外一种思路就是第三方推什么数据我就显示什么数据,而不是我这边的页面定时刷新,我是这么一个技术路线,我用WCF来做接口,数据一过来我就存储到本地,然后用线程实时监控数据是否过来,如果一有数据过来我就用SignalR把数据推送到前端,这样的技术路线是否可行,或者有没有什么其他方式?望各位大神支招
...全文
1428 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2018-06-30
  • 打赏
  • 举报
回复
数据一过来我就存储到本地,这是必须的,不然容易出现数据丢失
至于是客户端轮询,还是服务端主动推送,这就要看整体实时性要求了
显然后者技术复杂度和资源占有率都远高于前者
raynors 2018-06-30
  • 打赏
  • 举报
回复
从软件项目的角度来考虑,不应该由 (远程)消息 直接触发前端显示,我以前做SOCKET通讯的时候这么干过,各种坑。

把远程消息缓存本地,由本地定时监控轮询数据库来触发前端显示是比较合理的做法,特别是对浏览器页面。

还有一个做法就是做消息中心封装。这个就写的比较复杂了,适用于非B/S的构架,远程来数据,由自身程序的消息中心发消息封装给前台UI。各种系统LOG,DEBUG和数据流转 都可以用到。你把封装写好了,用起来很不错。

threenewbee 2018-04-20
  • 打赏
  • 举报
回复
SignalR是可以的,如果并发大,可以前端做群集+队列
  • 打赏
  • 举报
回复
什么叫做“用线程实时监控数据是否过来”呢?对方访问你的 WCF 接口来提交数据,那么你自然就“数据一过来我就.......”了,你还另外搞什么线程监控? 而这里所谓的线程除了阻塞、死等,哪里有什么效率和经济性可言?

110,545

社区成员

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

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

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