微服务指的是在当代软件开发生命周期中作为开发人员工具存在的数千种独立的Web标准、编程语言、数据库平台和Web服务器组件。从传统的角度来看,企业公司曾经专注于面向服务的架构(SOA),它代表了从单个IT公司集成的硬件和软件技术。借助微服务,来自独立开发公司或开源社区的云软件应用程序和Web服务器支持数以千计的不同组件。IT部门需要一种新的理念来跨超大规模公共云中的隔离多租户环境管理生产中的微服务数据中心,并已广泛采用由服务网格技术驱动的SDDC标准的虚拟化解决方案来解决这个问题。微服务构成了构建块或基本组件、平台和框架,代码在云数据中心的Web服务器上构建和运行。
微服务的好处
单体架构与微服务架构

微服务如何工作?
微服务主要通过在默认操作系统、网络或数据中心管理平台提供的功能上增加Web服务器上可用的功能来工作。一些微服务是Web服务器堆栈扩展,例如编程语言平台和数据库框架。为了开发PHP和MySQL应用程序,Web服务器环境必须配置LAMP平台支持。基于微服务的解决方案在很大程度上与Microsoft、Oracle、IBM和其他IT专业人士在闭源发行版中提供的面向服务的架构竞争。企业公司现在必须支持多种应用程序用PHP、Python、Ruby-on-Rails、Java、C++、ASP.net等在生产环境中串联或同时编写。在其他情况下,数据中心可能通过多租户硬件上的虚拟机运行多个数据库框架。必须配置Web服务器以支持流媒体的自定义扩展、API集成,或通过添加用于分析的专有实用程序。每当将所有这些第三方和开源服务加在一起时,它们就等于生产中典型Web服务器上的数千个微服务,然后在公共云服务环境中与数百万超大规模的VM相乘。
微服务的历史
使用微服务这个术语主要是在Web2.0时代之后开发的,因为企业IT需要一种新的方式来概念化软件开发环境,以反映当前的生态系统和最佳实践。使用微服务开发Web和移动应用程序导致数据中心管理员在企业运营中支持的复杂性增加。而不是简单地与Oracle、IBM或Microsoft签订所有必需的软件和数据中心解决方案的合同,公司现在必须在数以百万计的开源代码项目中驾驭环境,这些项目为商业用途提供企业级解决方案。许多网络标准都有来自不同公司的竞争版本。许多编程语言和数据库在使用中涵盖相同的功能。每个开发团队对工具和编程方法都有自己的偏好。在统一的企业IT部门内管理云时代的所有这些复杂性导致需要在全球许多复杂组织的专业软件开发中支持微服务。
了解微服务架构
理解微服务架构的最佳方式是描绘Web服务器堆栈中的软件层。Web服务器的操作系统可以是Windows、Linux或BSD。网络上有用于数据中心管理和负载平衡的工具。Web服务器可以选择Apache、IIS、NGINX、Caddy、Tomcat等。接下来是安装的编程语言支持层,例如PHP、ASP.net、Python、Ruby、Perl、Java和Go。以下是MySQL、MSSQL、PostgreSQL和MongoDB等数据库框架的层。用于缓存实用程序(如Varnish、Redis、CDN和优化实用程序)的另一层。其他支持层包括边缘服务器、无服务器平台和AI/ML集成。在公共云生态系统中,
面向服务的架构(SOA)与微服务
面向服务的体系结构(SOA)通常来自单个供应商,或者包含一揽子硬件和软件解决方案,可以针对明确定义的行业需求进行部署。SOA通过不同的发行版或产品模型支持数据中心、Web服务器和堆栈层。SOA在供应商的专有和开源解决方案中都可用。云数据中心与内部私有数据中心以不同的方式管理网络设备和光纤连接。在软件开发领域的当前状态下,创新需要微服务。即使是最大的公司也需要采用微服务来支持敏捷编程团队将新的Web/移动应用程序推向市场,其中产品支持可能包括数千个品牌或领域。
本文来源:国外服务器--什么是微服务(什么是微服务项目)
本文地址:https://www.idcbaba.com/guowai/2389.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。