我有一个销售某些产品的应用程序,有时它会因为需要解决的大量流量而崩溃,我希望AWS负载均衡器和自动扩展功能一定会对此有所帮助。
我对此有一些疑问,
如果我在同一实例中具有代码库和MySql服务器怎么办? (在这种情况下,我可以使用RDS)
如何部署代码?每次部署时是否需要创建AMI还是有一个自动过程?
我正在寻找实现这一目标的最佳方法。
答案 0 :(得分:0)
如果您使用的是Wordpress,基于自由层的实例的最佳配置是:
1)通过输入以下命令在您的实例上安装LAMP Stack
CentOS,RHEL,Amazon Linux AMI
yum install httpd php php-mysql php-pdo php-gd php-mbstring
Ubuntu,Debian
sudo apt-get install apache2 php php-mysql php-pdo php-gd php-mbstring
2)设置一个RDS来托管您的数据库服务器。您可以使用MySQL Workbench连接到RDS实例。
3)将您的Wordpress文件上载到/ var / www / html文件夹,并在wp-config文件中更改数据库主机,数据库用户名和数据库密码。如果要部署新站点,建议您使用Duplicator Pro迁移整个站点并在安装之前进行配置。
4)如果看不到反映的变化。在MySQL Workbench上执行以下查询。
UPDATE wp_options SET option_value = replace(option_value, 'old_url', 'new_url') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'old_url', 'new_url');
UPDATE wp_posts SET post_content = replace(post_content, 'old_url', 'new_url');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'old_url', 'new_url');
要回答您的问题:
1)您必须将代码的MySQL Server部分删除/迁移到RDS,否则由于Server和Client同时使用实例的CPU,它将给您504错误超时。
2)您不必每次都创建AMI。一旦选择了实例类型,就可以自动创建AMI,可以使用ssh,用于FTP上传的Filezilla,用于RDS部署的MySQL Workbench来部署代码