代码之家  ›  专栏  ›  技术社区  ›  Kerry Jones

令牌/激活表还是memcache?

  •  0
  • Kerry Jones  · 技术社区  · 14 年前

    我最近对memcache的发现创造了一种狂热,让一切都有了新的可能性。

    现在,当我在某人注册我们的服务时发送确认电子邮件时,我会在“tokens”表中创建“token”,该表有一个设置的过期(通常为3天)供他们验证帐户。

    然后我有一个每日cron作业,检查是否有过期的内容,在这种情况下,它会删除令牌。

    这是可以用memcache完成的吗?也许是一个更好的问题——这是应该用memcache做的事情吗?

    1 回复  |  直到 14 年前
        1
  •  3
  •   David Z    14 年前

    该怎么办?不,memcache是一个临时内存缓存,这意味着它所保存的任何数据都可能在任何时候消失,或者至少您应该在这种假设下工作。即使没有任何东西存储在memcache中,您的应用程序也应该是完全正常的。实际上,一种相当常见的测试技术是创建一个虚拟内存缓存,它根本不在缓存中存储任何数据。(它有存储和检索数据的方法,但它们不做任何事情)一旦你满意你的应用程序使用虚拟缓存,你就把它换出来并放入真正的memcache中。

    在实践中,它可能大部分时间都能工作,因为除非您的计算机崩溃或内存不足,否则memcache不会随意删除任何东西,因为它感觉像是这样。但是我认为使用memcache来做类似的事情是不好的做法。