我想使用Amazon Web Services创建Java应用程序,我也希望能够将其作为本地应用程序运行。因此它将有两个版本:亚马逊云和本地应用程序。我还不知道AWS,我担心是否存在某些特定的api或数据库访问权限,因此我无法作为本地应用程序运行。我根本不想写那个应用程序的两个单独版本,或者只是尽量少写。
有可能吗?
答案 0 :(得分:1)
在EC2中,您可以使用root或管理员访问权限启动虚拟服务器(或实例)。这意味着您的EC2实例几乎可以运行您可以在本地运行的所有内容。
没有特定的API可以学习在EC2上运行Java代码。只需编译并打包您的代码,将其上传到您的服务器(使用scp / rsync /您可能更习惯的任何其他内容),然后在实例上安装Java后使用java -jar myapp.jar
运行它。您也可以将源代码直接上传到您的实例中,并根据需要在那里进行编译。它的行为就像一个“普通”的服务器。
关于数据库访问,它的工作原理与您期望的完全相同:只需在实例上安装数据库服务器,比如MySQL,并正常连接(例如使用JDBC)。另外,请注意有一个名为Relational Database Service (RDS)的服务,它简化了数据库系统的部署和管理:您不必安装数据库软件,维护,升级,备份等,一切都为您完成。您只需指定“主”用户的名称和密码,它就会返回一个连接字符串。 (还有一个“微型”RDS实例,它包含在free tier中,以便您可以免费开始探索!)
最后,如果您不想自己启动和维护虚拟服务器,可以使用Elastic Beanstalk,它可以为您自动执行大量操作:使用Web界面,您只需上传“.war” “文件,Elastic Beanstalk为您启动和实例,安装Java,Tomcat,部署您的应用程序,并为您监控它 - 如果出现任何问题,您可以在收件箱中收到电子邮件。 Elastic Beanstalk中包含大量其他功能,它们都是完全免费的(您只需支付它启动的服务器 - 如果您指示它最多启动一个t1.micro实例,它包含在免费等级,你再付钱!)