2015-10-19 186 views
0

我需要相关的设计问题提供一些帮助。我有一个运行在Apache服务器上的Web应用程序,其中包含大量关于用户的信息。多个页面使用用户表中的各种信息。假设该网站将有巨大的流量。如果我将数据存储在SESSION中,它将消耗服务器上相对较多的空间。如果我在不同的页面上使用数据库访问,它会增加I/O突发,这是昂贵的。
将数据作为cookie存储在客户端系统上是否好?我可以使用JS并在各种页面上呈现输出。有没有陷阱?存储数据

+1

可能重复的[会话变量:多少数据太多?](http://stackoverflow.com/questions/17554990/session-variables-how-much-data-is-too-much) – Andrew

+0

我明白了你的链接。我还有一个疑问,那就是如何在cookie中存储名称,地址,邮编,城市等信息?这些细节将在下订单时使用,会有什么问题吗? –

回答

2

解决方案 - 你的情况是一个完美的使用情况内存缓存。内存缓存是定期从DB加载数据的缓存。

为什么使用内存缓存 - 您的使用案例介于将会话中的信息保存在数据库中,正如您所提到的。内存缓存对于保存这些数据非常理想。

基本点,把它向前

  • 你需要存储所有用户表(和你经常需要任何其他信息)在此内存高速缓存。

  • 使用数据库中的数据的刷新间隔(也称为同步间隔)应该按照您网站上的资源可用性&流量保留。它可以从一个小时到一天不等。

  • 你需要找出哪些是一个很好的内存缓存的PHP。我与Java工作,memcache是在Java中最流行的内存缓存之一。

+0

请更好的格式你的答案,这是很难知道你的意思.. – Smar

+0

重新格式化为每评论。 –

+0

谢谢:)我做了一些小的文法修正。 FWIW,'memcache'和'memcached'都可用于PHP,也许'memcached'更常见。 – Smar