将结果保存在cakephp缓存(即tmp / cache)中的主要优点是什么

时间:2013-11-28 15:47:16

标签: cakephp caching

我见过很多使用Cache来存储结果的插件,比如来自第三方api的结果,直接采用 缓存的结果,而不是再次向第三方服务器发送请求。

1。)但是,如果来自服务器的结果不时发生变化,情况会怎样。

2。)假设我们假设我们将用户登录尝试的次数保存到缓存中,我们将检查此计数 用于保护用户的帐户。即如果用户进行了5次错误的登录尝试,那么他/她的帐户将被锁定5分钟并允许 用户仅在5分钟后登录。

可能会出现这样的情况:

现在,用户已从一台计算机进行了3次登录尝试,计数将保存到缓存中(缓存名称将为username)。 休息2次他从另一个系统进行的登录尝试,计数变为5然后它会显示一条消息“你已经完成了5次不正确的登录 尝试,请在5分钟后尝试。“

相反,我可以在这里使用会话来获得最佳效果。

在这种情况下,Cache的重要性在哪里?

请告诉我,先谢谢。

1 个答案:

答案 0 :(得分:1)

1)如果您依赖更改,则不会缓存结果。有不同的API,一些APIS发送过期日期,结果可用于缓存结果。有时您根本不需要为每个请求获取新数据,然后您将其缓存。地理定位是一个很好的例子,几乎可以永久缓存。

2)这没有任何意义,如果您尝试从多个设备访问帐户,则无法使用会话。每个设备都将获得一个新的会话ID。但在这种情况下,我根本不会使用缓存引擎,而是将其写入users表,在任何情况下都需要查询表以获取登录数据。所以这只是每次尝试的更多写作。