首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >和Laravel一起在Memached有很多唱片是正常的吗?

和Laravel一起在Memached有很多唱片是正常的吗?
EN

Stack Overflow用户
提问于 2014-11-26 20:49:11
回答 2查看 291关注 0票数 4

我有一个Laravel的实例和运行与负载平衡器到位。我们已经设置memcached (两个服务器节点)来处理会话管理。到目前为止,该站点在我们的测试环境中运行良好。该站点主要与基于web的API联系在一起,因此我们只在用户会话中存储一些值(用户身份验证数据除外)以处理站点。

经过一两个用户的少量使用后,缓存中大约有3000项。我没有完全访问节点的权限,所以我不知道具体的项目是什么。然而,我们似乎并没有用内存来优化节点,而且应用程序的功能也很好。

这是意料之中的吗?我知道缓存管理会清除过期的旧记录,因此这些记录可能只是“残余”数据记录,但这是我第一次使用memcached,因此我想验证这是正常行为。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-12-08 01:11:39

任何缓存解决方案都会占用许多项,这是非常正常的。特别是对于许多小型对象,缓存通常更有效地将它们保存到过期(但不再为它们服务),然后定期清除它们。“留恋记录”很大程度上描述了它。

只要您的应用程序按预期执行,我就不会担心。当您收到大量缓存丢失的对象时,您应该担心,这些对象本来应该在缓存中,但由于缺少存储它们的内存而在过期前被踢出。

票数 2
EN

Stack Overflow用户

发布于 2014-12-08 12:23:44

在Memcache中有很多记录是正常的。但是你需要有适当的会话管理。每个会话存储少量的值。(大部分API所需的数据,如用户访问令牌)

缓存过期

在使用Memcache时,最大的挑战是在编写干净代码的同时避免缓存丢失。大多数开发人员将数据存储到Memcache,并在数据更改时删除或更新数据。这种策略很快就会变得杂乱无章-- Memcache代码会在整个应用程序中变得凌乱。Rails的筛选器可以帮助解决这个问题,但是其他语言和框架没有类似的替代方案。

避免代码复杂性的一个简单策略是在到期时将数据写入Memcache。到期数据将在到期时自动过期。大多数应用程序都可以从基于时间的缓存过期中受益,因为不频繁地更改内容,如静态资产、头、页脚、博客帖子等。

列表管理

存储在Memcache中的简单列表对于维护非规范化关系非常有用。

例如,电子商务网站可能希望存储一张最近购买商品的小表格。与其在Memcache中保留序列化列表并在进行新的购买时重新计算它,还可以使用追加和预置来存储非规范化数据,从而避免数据库查询。

Note - Memcache只支持1MB的最大值大小。请注意,创建的列表的大小可能比允许的最大值更大。

还请检查这些链接- https://cloud.google.com/appengine/docs/adminconsole/memcache

01/refman-5.6-en/ha-memcached-faq.html

http://symas.com/mdb/memcache/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27158619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档