我正在使用AWS EC2上的MySQl在Apache上构建一个具有PHP REST API的应用程序和网站。
我想做负载平衡,我知道我可以使用两个或更多EC2,但MySQL将如何工作(两个EC2如何共享数据库)?
如果您想要一个负载平衡功能,它必须在Web层上,下面是它的解决方案。在这里你必须管理EC2,如果这个下降,那么将在DB层中遇到错误,因此解决方案2
AWS ALB --> EC2 ( Apache, PHP, AZ1 ) --> EC2 ( Mysql )
\ /
\----> EC2 ( Apache, PHP, AZ2 ) /
如果您使用带有MultiAZ的RDS,那么下面是没有单点故障的选项
AWS ALB --> EC2 ( Apache, PHP, AZ1 ) --> RDS ( Mysql ) --> with Standby in another AZ
\ /
\----> EC2 ( Apache, PHP, AZ2 ) /
AZ =可用区