目录:
视频: 10 Off Road Vehicles That'll Help You Through The Winter 2024
无论AWS提供了多少服务,您仍然需要一定数量的硬件来使用这些服务。在云中使用服务时所需的硬件数量很少,因为AWS硬件的所有重要工作。在本地使用服务时,您需要额外的硬件,因为AWS不再为您负担繁重的工作。因此,您应根据托管AWS服务的位置考虑不同的硬件要求。
<! --1 - >在本地托管服务
隐藏在AWS文档中的是各种服务的各种有用信息。例如,AWS Storage Gateway将使用基于云的存储将本地 软件设备 (应用程序结合了足够的操作系统功能,以在硬件或虚拟机上运行)连接。换句话说,您使用网关将您的应用程序连接到所需的数据存储。看起来好像在云中运行网关将是一个好主意,因为您不需要投资额外的硬件。但是,在查看要求时,您会看到AWS Storage Gateway带有特定的硬件,实例和存储要求。要了解的重要一点是,云计算在任何计划阶段都必须考虑到限制。
<!降低应用速度的潜力
需要保持可靠的互联网连接- 丧失灵活性
- 供应商停业
- 尽管基本硬件需求变得更便宜,您确实需要考虑冗余形式的额外费用。大多数组织发现,迁移到云的硬件成本远远低于维护一个完整的IT部门,这就是为什么他们采取行动。但是,您必须理解,您在做其他事情时需要考虑。
- 托管云中的服务
当在本地托管服务时,您需要提供所有必需的基础设施,这可能会变得昂贵。AWS确实提供了本地托管服务的最低要求指南。在本地托管服务时,一个好的经验法则是将供应商提供的任何要求视为最低要求。如果你不打算大量加载服务,这些最低限度通常是有效的。但是,当您单击优化网关性能链接时,您看到的第一个建议是将资源添加到您的网关。规划太多的容量比没有足够的更好,但尽可能接近你所需要的配置总是会在经济上帮助。
提前计划足够的资源。
并不是所有的服务都可以在本地使用,但是您可能会惊讶地发现许多服务都可以。这个问题就是准确定义你打算如何使用给定的服务以及你愿意做出的折衷。例如,在本地托管服务时,您可能难以提供您在云中托管相同服务时可能提供给第三方的相同级别的连接。
定义一个良好的开发环境
在了解了AWS所需的资源并且已经考虑了设置的基本知识之后,您需要考虑您的开发环境。你必须考虑的第一个问题是语言之一。 AWS不关心你使用的是什么IDE(尽管IDE的选择决定了你有哪些功能可用于远程访问),但是它确实关心语言。您必须验证AWS是否支持您希望访问的服务的所选语言。例如,下面是简单队列服务(SQS)的选择。确保AWS提供对您要使用的语言的支持。
您可以使用EC2创建部署环境。本教程介绍了如何执行此任务。这种方法的主要优点是可以从理论上从任何地方开发AWS应用程序,因为开发不再需要具有特定资源的本地系统。
然而,这种方法绝对不是免费的,这意味着你必须有一个可靠的互联网连接,无论你想从事任何开发任务 - 这在工作中不是一个问题,但在家里可能是一个问题。基于云的开发方法使用AWS命令行界面(CLI)。
使用本地化开发环境的主要原因是您保留对本地资源的访问权限,以及您的组织目前依赖的代码库来执行开发任务。此选项在可靠性方面也有优势,因为您不依赖远程连接来使用它。如果您的Internet连接断开,您可以继续开发代码(但在连接恢复之前无法进行测试)。使用此选项时,您确实需要额外的带宽 - 至少为了通过组织的防火墙进行AWS访问的测试目的和权限。
使用AWS时,您不仅限于两个选项。例如,您可以使用本地开发环境,但将代码放在S3上。使用基于云的数据存储意味着您可以在多个位置进行本地化设置(这样您就可以保留对本地资源的访问权限),并且还可以获得基于云的开发的优势,例如可以从任何位置访问您的代码有一个开发环境配置。
本教程也很有趣,因为它告诉您如何配置开发环境以使用Elastic Beanstalk进行项目,源代码管理和存储库使用。与本地化的开发环境一样,您仍然需要Internet访问所需的权限和足够的带宽来处理数据请求的增加,以使此选项正常工作。实际上,带宽要求高于本地配置,开发环境必须与远程资源配合使用。
选择正确的开发环境并不容易。在许多情况下,选择成为个人偏好和组织要求之一。例如,在处理敏感的开发任务时,使用基于云的开发解决方案可能不是一种选择;安全需求可能超过其他需求。