这是使用web服务并操作其数据的最佳方法


Which is the best approach to consume webservices and manipulate its data?

需要一些最佳方法的建议。

目前,我们将开始一个新的CI web项目,我们需要大量利用来自外部web服务或API的数据?

是更好地操纵数据编程(在对象或数组),当我需要对它们进行排序或将它们存储在数据库中,并调用它们的顺序,组等?

是否有一个已知的架构或框架?

现在使用的最佳方法是什么,比如聚合网站如何从各种供应商API中提取许多数据源?

我建议使用curl等操作作为数组等获取数据,然后存储。

确保你也内置了一些缓存,这样你就不会产生不必要的请求。

我的方法背后的原因是处理一次,而不是每次你的网站请求。

经过这么长时间,我终于想出了这个计划,而且效果很好!

  • 消耗webservices
  • 将XML反序列化为数组/对象
  • 存储在缓存中(APC/文件缓存,顺便说一下,我使用codeigniter)(每4小时过期)

第一个请求将花费3-4秒来完成(首先调用webservice抓取数据,将其存储在缓存中),而来自用户的后续请求由于缓存数据而花费0.002秒。4小时后,循环将重复,以确保数据每4小时从webservice更新一次。如果你是每次刷新后第一个访问网站的用户,你就是那个不幸的家伙。但你为所有其他家伙牺牲了。