【问题标题】:Memcached for Social Network Site (Correct Me)用于社交网站的 Memcached(更正我)
【发布时间】:2012-02-03 12:36:29
【问题描述】:

我计划在我的社交网络项目中使用 PHP 和 Memcached 来完成这个场景,如果我错了,请纠正我:

就像任何其他社交网站一样,大多数用户只是“阅读”数据库内容,而不是“编写”它。正确的?

所以,我计划在用户登录(创建会话)后从数据库中“读取”所有内容,例如:朋友数量、出生日期、今天朋友的帖子等,然后将其存储到 Memcached 服务器中。

除非用户退出或点击“昨天朋友的帖子”,否则用户不会再次读取数据库,而是从 Memcached 中读取所有数据。

也许它会像 Gmail 一样,用户在登录到他们的帐户时会看到加载栏。但是一旦他们拥有它,一切都会运行得更快。

这可能与 Memcached 有关吗?

【问题讨论】:

  • 如果他们在登录时交了新朋友会怎样?
  • 我认为这不是一个好主意,使用 memcached 很好,但是为了获得良好的可伸缩性,您可以使用可伸缩性功能。最好使用 Yii yiiframework.com 之类的框架并使用其可扩展性功能
  • AkhilThayyil :谢谢你的线索,兄弟......我会做一些研究。

标签: php networking gmail memcached social


【解决方案1】:

是的,使用 Memchace 可以做这些事情。我认为你最好看看这个技术讲座。 http://www.infoq.com/presentations/Facebook-Software-Stack

【讨论】:

    【解决方案2】:

    您可能需要查看 https://groups.google.com/forum/?fromgroups#!topic/memcached/n8zLJRyYNY4 以使用特定于社交网络系统的 memcached 优化多获取查询。

    【讨论】:

      【解决方案3】:

      看看他们是2个系统memcached哪个键值noSQL系统和memcache哪个分布式内存缓存系统。我认为对于您的应用程序,您必须使用类似 noSQL 的系统,该系统非常适合阅读。你可以试试 mongoDB。 mongoDB 有许多可以帮助你的好特性。

      【讨论】:

      • 我对这个 mongoDB 真的很陌生,但我的问题是……我必须用 mongoDB 替换 MySQL 吗?或者 mongoDB 仅用于读取目的,而整个数据库仍然存储在 MySQL 上。
      • 我建议从简单的基于 MySQL 或 MongoDB 的设置开始。如果您的社交网络每天获得数百万的页面浏览量,那么您将担心优化和负载平衡
      • 您的问题具有讽刺意味的是,您担心数据库负载过重,担心性能(这很好)但仍然使用 php。 Php 不是大型项目的最佳语言。如果你真的希望你的社交网络会像疯了一样发展,那么至少用 Java 或 C++ 编写它
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-12
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      相关资源
      最近更新 更多