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