怎么查询候诊队列变化与否,实时更新客户端显示数据。

任务:做一个查询医院候诊队列实时显示到大屏幕。
前提:医院门诊系统服务器端是其他人写的,他不肯给我做接口,我要自己另外写一个查询候诊队列的基于SSM框架的服务器端和安卓客户端,与医院门诊系统用同一个数据库。一开始我在安卓客户端用Service+Thread轮询进行http请求,然后发现太耗资源,决定用websocket,让客户端与服务器端保持连接,如果数据库有更新,服务器端给客户端进行消息推送。
难题:我该怎么查询候诊队列,实时更新客户端的显示数据?我目前的做法是,在后端轮询,先将一开始查到的候诊队列保存到list1,服务器端定时查询候诊队列,保存到list2,两个list比较,如果两个list不同,则数据库发生了变化,通知客户端查询新数据。还有没有更好的办法,请各位大神搭救!!!

采用 Service 和 AlarmManager可以试试
https://www.jianshu.com/p/63a9c9187389

1.dwr有一个主动模式,可以了解一下,代码侵入少,改的东西不多,2.spring boot2也有服务端推送技术,
另外你的算法也太慢,如果搞并发的情况,你比较的数据是不准确的,可以和后端的同学商量,在更新数据库的同时,如果更新成功,同步把更新请求发给你就好,如果担心更新请求太多导致服务压力大,可以把更新请求放入到队列中,监控队列当队列长度达到一定时间的时候推送客户端,同时采用定时监控,如果段时间内更新数量比较少,则定时推送服务端