主要问题是:
基础设施:
自动缩放(最小 1 - 最大 3)
远程数据传送系统
紧急负载平衡
elasticache(redis)
elasticsearch
我想分享一卷(EFS / S3)使用我的应用程序的代码;尺寸其中约有1.3 Gb。
使用 EFS:
第一次尝试,我尝试使用权限和 uid、gid、umask 等进行挂载,并且成功了,但是EFS 真的很慢即使采用性能模式并采用专用的 10 Mb 数据传输。
阿帕奇尝试读取该路径上的内容(英语)而且响应非常慢。
mount -t nfs4 efs-amazonaws.com:/ /var/www/filesystem/custom/
使用 S3
它比 EFS 运行得更快,但问题是当 Apache 读取存储桶上的内容(与 EFS 挂载相同)时,它无法连接到存储桶内的资源,示例 Mysql 函数。
s3fs bucket-name /var/www/filesystem/custom/ -o allow_other,uid=33,gid=33,mp_umask=002
我的另一种选择是:
1- 在服务器的其他位置安装 S3 或 EFS。
2-使用 Lsyncd 将 s3 上的更改复制到服务器应用程序的真实路径。
我需要的是如何才能在我的自动缩放组中共享卷的替代方案。!!
谢谢!
答案1
EFS 性能取决于卷上有多少数据。存储的数据越多,性能就越高。这可能就是为什么只有 1.3GB 时速度很慢的原因。
不过你可以支付EFS 预置 IOPS这将会提高性能但需要额外的成本。
或者您也可以存储几个大文件(例如 10x 50GB)来提高与卷大小相关的性能。
测试这两种方法并看看效果如何。