php - EC2 上的内存缓存

标签 php memcached amazon-ec2 load-balancing

我的想法是否正确,除非我能够负担得起专用服务器或拥有任何备用服务器,否则我可以通过 EC2 成功运行少量内存缓存服务器?

亚马逊今天宣布了新的自动缩放和负载平衡,你们认为这是一个可行的选择吗?

您建议我采取哪些基本技术步骤?

谢谢

目前,我只有一台专用服务器,没有内存缓存服务器。我想使用 EC2 的强大功能来设置一些实例并运行此类 memcached 服务器。这是我当前的设置。

最佳答案

  • 负载平衡与 Memcached 无关——它使用哈希算法连接到服务器
  • 我强烈建议不要对 Memcached 使用自动缩放——添加服务器会破坏散列算法并使缓存失效。数据将会丢失,您将不得不重新缓存。
  • 您需要检查从您的服务器到 EC2 的延迟——如果超过 50 毫秒,您将严重损害您的性能。好吧,无论如何我会假设。

您可以通过一个请求提取多个 key (请参阅 here for how )以减少延迟影响,但您仍然会受到初始攻击。这也意味着您需要在调用电话之前知道您将要获得的所有 key 。否则,每个请求都会使脚本的执行时间增加 50 毫秒(或更多)。

考虑您尝试缓存的数据。 64mb 的 slab 是否足够大以帮助您?您或许可以在主服务器上运行它。

关于php - EC2 上的内存缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/879293/

相关文章:

php - function_exists 返回 false 但声明抛出错误

ruby - 安装 ruby​​ gem : memcached 后看不到二进制文件

php - Laravel 4从远程域连接到EC2 MySQL

java - Apache FTP 服务器 - 20 秒不活动后连接超时 - 无法检索目录列表

amazon-ec2 - AWS EC2 启动模板与启动配置

php - 如何在后台运行 php 文件(websocket 服务器)到 Web 服务器(www.example.com)

php - WooCommerce 购物车 - 条件项目类别验证

php - MySQL 查询 - WHERE 和 IF?

memcached - Memcache 根据模式使条目无效?

ruby-on-rails - rails fresh_when/stale?用法