我目前的情况是我有一个基于Struts 2.0构建并在tomcat + mysql服务器上运行的Java EE应用程序.该应用程序目前托管在具有2GB RAM和60GB磁盘的虚拟专用服务器上.但是,在高峰时段,应用程序使用量增加了10到20倍,导致Tomcat和MySQL服务器崩溃.
我开始寻找替代方案,并发现亚马逊的EC2是最佳匹配.我已经成功设置了RHEL AMI的免费层Micro实例,并在机器上安装了Tomcat + MySQL.我还在亚马逊网站上阅读了有关EBS,负载均衡器,自动缩放,Cloud Watch和相关内容的内容.
这是我想通过AWS实现的主要目标:
我有以下愚蠢的问题:)
如何在EC2实例之间共享MySQL数据?我可以在EBS卷上安装MySQL并同时在EC2实例上安装此卷吗?这会解决我现有的MySQL问题:太多连接,我在高峰时段对我当前的VPS有很多看法?
如何在EC2实例上共享上传的文件和图像?我是否必须将这些文件存储在外部EBS卷上(在我的Tomcat WebApps目录之外)?
我可以将完整的项目文件夹保留在外部EBS卷中,并让EC2 tomcat实例都进行虚拟映射吗?请告诉我它的优点和缺点.
此外,关于EC2上的群集tomcat,会话管理,AWS自动缩放和负载平衡器的一些好的教程将会有很大的帮助.