关于服务器数据库主动推送的问题!

[复制链接]
查看11 | 回复6 | 2021-1-27 07:15:46 | 显示全部楼层 |阅读模式
我现在需求是这样的,我本来有一套完整的项目,里面有班组信息,作业状态,班组设置(班组状态改变,比如:休息,作业等),现在要单独把班组状态拿出来,从新写个小项目界面展示,其它都好说,就是当我项目1改变班组状态时,如何相应的项目2班组信息弹出提示信息,我项目二不对数据库做任何操作,只查询一些班组工作的相关信息,说白了就是,我项目1,一旦对班组进行操作,对应的项目二如何自动触发弹出提示信息,两个项目完全独立,没有接口,数据库用的同一个。
分 -->
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层
数据库是oracle11g~~~
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层
设置一个状态标记
1.页面用ajax不断的请求状态标记有变化变弹出信息.
2.服务器用定时器查询状态标记有变化.则使用websocket推送到页面.
3.轮询.
4.第三方推送组件
我只知道这几个方案了
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层
引用2楼ctrl7416的回复:设置一个状态标记
1.页面用ajax不断的请求状态标记有变化变弹出信息.
2.服务器用定时器查询状态标记有变化.则使用websocket推送到页面.
3.轮询.
4.第三方推送组件
我只知道这几个方案了

1、这个开始也考虑了,不过对服务器的压力太大了,只有一两个人访问时还好说,当访问人数多时,服务器压力可想而知(想过一个办法,我先查一次然后把这个状态的字段值存到缓存里,然后就是定时请求,每次和前一次请求的缓存对比)
4、第三方的大多都是收费的这个肯定也不行
3、轮询的话不也是通过频繁请求,来获取更新的数据么?
看来只能考虑websocket了
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层


我也想过这个问题,看微信网页版的好像是使用长连接加轮询的方式
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层
读取数据库的logbin,然后推送到MQ,你项目2对接收的MQ做对应的回调处理就好了
回复

使用道具 举报

千问 | 2021-1-27 07:15:46 | 显示全部楼层
数据库写个触发器,调用运用程序。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行