阿里云 原生云
在众多编程趋势的世界中,公司开始夸耀自己如何成为“云原生”。 该声明似乎充满了狂热和自负,但是,拥抱真正的云原生具有巨大的价值。
简而言之,云原生是一种创建和部署应用程序的方法,可以充分利用在云上交付,扩展和分发产品的优势。 该概念与您在哪里部署应用程序无关, 而与您如何创建和部署它们有关!
我相信,对于采用云原生概念来说,有三个至关重要的Struts:
- 架构中微服务的利用
- 持续集成的利用
- 在您的应用程序中使用容器
采用和掌握这三个方面将为公司带来成为云原生的最佳优势。 为了进一步探讨这一点,我们将在实践层面分解每个Struts及其含义。 首先是微服务。
微服务
微服务已经启动了在过去的几年里通用的编程趋势。 这个想法是基于分解一个巨大的整体应用程序并将其分解为较小的应用程序。 这很像面向对象的设计 ,但是对于架构!
具有面向微服务的架构将使您能够利用云原生提供的可伸缩性。 使用传统的单片架构,您只能扩展应用程序的几个方面。 这些方面很可能是应用程序服务器和数据库服务。 虽然将它们移至云将为您带来优势,但您在扩展和微调方面的工作量有限。
但是,拥有微服务可以使我们更好地利用云中的托管应用程序为我们提供的服务。 在单片应用程序不提供很多扩展选项的地方,一个结构良好的微服务应用程序套件使我们可以微调我们要扩展的应用程序的更多方面。 这不仅使我们可以更严格地控制性能,而且还为我们节省了很多服务器托管费用!
但是,在我们部署并微调了所有微服务之后,如何从开发和部署中简化它们的环境? 这就是集装箱化的来历!
货柜
容器化试图解决环境差异和编排问题。 它在本地和部署级别都解决了这些问题。 在本地,您的开发人员拥有一个可以启动并继续工作的一致环境。 它们为开发人员创建了一个稳定的环境,以便其创建和部署代码。 此外,诸如Docker和Kubernetes之类的工具使编排这些容器化应用程序变得简单而有效!
在云上使用容器化的优势在于,它提供了从开发代码到生产代码的一致环境。 我们不再需要调试生产服务器和本地计算机之间的差异。 使用容器化,可以确保在其中创建和测试代码的环境与生产服务器中的环境相同。
对于云原生而言,具有这种一致性至关重要。 容器化使我们能够轻松创建,部署和扩展应用程序,因为它们具有一致的环境。
前面我提到过代码从开发到生产的过程。 但是,当您是云原生用户时,该旅程到底如何进行? 输入持续集成 。
持续集成
如果不进行持续集成,您将错过成为云原生的最大优势之一:从开发到部署的无缝流程。 为了使大型组织真正利用云的优势,需要在您的流程中采用某种形式的持续集成。
您可以使用诸如Codeship之类的工具来帮助您的团队遵循以下模式:
- 您的团队会创建一批要部署的代码。
- 您将该发行版本推向Codeship。
- Codeship测试并对新代码进行审核。
- 如果测试和审核成功,Codeship会将您的新版本部署到您选择的生产环境中。
此过程有效地消除了手动打包代码并将其部署到服务器的需要。 确定要通过的适当标准后,符合这些标准的任何代码都会立即发送到实时代码库中。
这对于本地化云非常重要,因为它具有对云进行小型快速部署的优势。 由于服务器托管和部署的基础架构是由云处理的,因此我们只需担心要创建出色的功能和修复程序! 有了正确的CI配置,您的云原生资产将能够轻松地大规模增长!
结语
回顾一下,我们涵盖了云原生的三个关键方面:
- 微服务在架构中的使用
- 持续集成的用法
- 通过Docker等工具利用容器化
这三个Struts的结合和编排将帮助您的团队不仅利用成为云原生的最佳部分,而且还可以创建快速发布,更安全的代码和更简化的开发。 将您的资产转移到云中是一笔可观的投资。 为什么不尽其所能呢?
翻译自: https://www.javacodegeeks.com/2018/01/road-cloud-native.html
阿里云 原生云