侦听从 PHP Web 服务访问的 MySQL 数据库中的更改
Posted
技术标签:
【中文标题】侦听从 PHP Web 服务访问的 MySQL 数据库中的更改【英文标题】:Listening for changes in a MySQL Database that is accessed from a PHP web service 【发布时间】:2014-04-28 14:57:46 【问题描述】:我的场景是这样的:我在 mysql 数据库中有一些表,我通过 JSON-RPC 2.0 协议使用 php Web 服务连接到它。我在一个用 Java 编码的桌面应用程序上显示这些表的数据,它就像一个用于进行更改的管理工具(还有一个 android 应用程序也使用这些数据)。我需要定期检查更改并将其显示给用户,这些表有一个 last_update 列。应用程序中的数据存储在一个数组中。
如何获取上次检查后的更改?
【问题讨论】:
【参考方案1】:最简单的方法是使用您上次阅读的时间向 PHP 服务发出请求。然后,您只需查询 last_update 时间大于上次请求时间的任何元组(实体)。这将要求两个应用程序在一定的时间间隔内请求更改(可能每秒一次)。
另一种方法是创建一个长时间运行的 PHP 或 C++ 任务,该任务将不断地查询数据库并通过网络套接字将数据推送出去。这往往更难支持,并且您很快就会遇到保持数据“同步”的问题,因此您最终会发送比服务自己请求更多的数据。
** 请告知这是否回答了您的问题,或者您是否需要更多详细信息。
【讨论】:
是的,你给了我一个想法。获得更新的元组后,我可以检查数组以根据 id 更新值。只是我需要更改 ArrayList 的数组,或者使用 id 作为键的更好的 TreeMap。以上是关于侦听从 PHP Web 服务访问的 MySQL 数据库中的更改的主要内容,如果未能解决你的问题,请参考以下文章