0

我的网站向外部服务发送 curl 请求并获得 XML 响应。
请求是特定于用户的,响应相当繁重(同一页面上有多个请求),因此加载页面需要时间并使用过多的服务器流量。

我如何尝试解决问题:

  • 从客户端(js)发送的请求。对我来说不幸的是,解析接收到的数据并将其集成到页面对象中变得相当混乱
  • 将响应放入会话中(因为它们是特定于用户的)。服务器上的会话文件变得太大太快。实现了一个计数器,如果它们的数量太大,它会删除会话中的所有响应(现在使用它)
  • 内存缓存?需要保存的数据太多

您认为我应该使用其中一种解决方案还是有另一种方法?

4

2 回答 2

0

使用组合

  • 缓存
  • 数据库

您将内容推送到“数据存储”(这是缓存和数据库)中。然后,您在数据存储中查找它是否可用。数据存储在缓存中查找,如果可用,则在数据库中查找。如果一切都失败了,请获取信息。

您还可以增加缓存的大小(但这不是一个好的解决方案)。

于 2013-05-30T07:12:33.770 回答
0

像这样试试

$key = "User_id_".$user_id."category_".$category_id;

然后根据此密钥存储每个数据,例如

$memcache->set($key, $data, , 3600);
于 2013-05-30T07:22:51.753 回答