php - 在本地 mysql 数据库中缓存 SOAP Web 服务

标签 php mysql web-services soap

我正在检索多个 soap xml 文件(来自同一台服务器)并创建了一个简单的 php 应用程序来显示、搜索和添加来自 soap xml 数据的购物车列表。

有很多数据,即使我限制它,响应时间仍然太慢,无法有效地用于实时获取和设置数据(10 秒+)

因此,我正在考虑获取每个相关的 soap 提要并每天自动将数据添加到 mysql 数据库中。然后直接使用数据库。在提交订单时,我将更新 soap 网络服务中的相关订单数据。

这是正确的做法吗?有没有其他选择?如何执行数据库的自动更新?

最佳答案

您将生成网络服务的镜像。具有优点(更好的性能)和缺点(不是实时数据)。如果您问我,我不会那样做,因为它违背了面向服务环境的原则。

如果您想缓存 SOAP 服务器的响应,您和 SOAP 服务器之间的 HTTP 代理将是最透明的方法。它会缓存响应,但您的应用程序仍然认为它是实时数据(并且可以保持不变)

此外,我会尝试加快 SOAP 通信的速度。例如,您可以使用 socket_select() 方法等技术同时发送多个请求。

关于php - 在本地 mysql 数据库中缓存 SOAP Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14349437/

相关文章:

javascript - 使用 PHP 将 MySQL 时间以毫秒转换为 javascript 时间戳

mysql - 无法在mysql上创建触发器

c# - 通用 Windows 平台应用程序中的 MySql 数据库连接

javascript - WebSocket JS 的自定义 header

php - 拉维尔 5 |找不到接口(interface) 'Illuminate\Contracts\Routing\Middleware'

php - 获取数组中的sql数据

php - 为什么这个计数总是返回 1?

java - 如何使用restcontroller在spring restful webservice中记录传入的json请求?

java - 通过 netbeans 在 Java Web 服务中获取方法?

php - mysql查询根据日期检索记录