破产程序中的_青藤云安全浅谈云原生应用程序中的微服务

关于云的原生技术,很多安全工作者都不知道。 包括一些技术,如微服务、网格服务和Devops。 今天青藤云安全向大家详细说明微服务。 微服务是云本机应用程序中使用的设计示例,可将大型组件分解为多个独立的可部署部分。

以人事系统为例。 以前,整个人力资源系统都部署在一个大软件包中(例如,使用MVC框架的WAR文件)。 使用微服务不再需要将人力资源组件作为大包进行部署,这些包被分为多个按用途分组的小功能单元(工资、工作、员工等微服务)。 这样,如果您维护的模块类似于“工资”模块,则不会影响其他功能。 因为这些模块是独立运作的。

微服务是指将大规模复杂的软件应用程序分割成多个简单的应用程序,各个简单的应用程序记述小业务,系统内的各个简单的应用程序可以独立展开。 单个微服务之间有一个松散的联接,可以独立执行每个服务的升级、部署、扩展和重新启动等过程,以便在不影响最终用户的情况下进行频繁更新。 与传统的单体体系结构相比,微服务体系结构具有系统复杂性、独立部署、独立扩展、跨语言编程等特点。

微服务的诞生是应对大型应用程序整体复杂性和灵活性的需求。 整个应用程序是将所需功能编码为同一服务的应用程序。 例如,这是一个保留应用程序的图表,它代表整个事件(如音乐会、表演等),负责付款处理和事件保留

破产程序中的

消费者可以使用这个应用预约音乐会和表演。 这需要一个用户界面。 您还必须能够查找事件,使用预订处理程序处理和保存用户的预订,使用事件处理程序查找事件,确保有可用的位置,然后将其链接到预订。 生产层应用产品需要执行更多任务(例如付款处理),但现在我们来看看上图中显示的四个任务。

这些整体应用程序在中小型负载下运行良好。 应用程序可以在单个服务器上运行,可以连接到单个数据库,并且可以使用相同的编程语言编写。

如果现在业务激增,需要处理成千上万的用户,会发生什么情况? 一开始,短期的解决方案是验证运行应用程序的服务器是否具有强大的硬件规格,否则就需要增加服务器的内存、存储和处理能力。 这称为垂直缩放,是为运行高负载应用程序而增加硬件(如RAM )和硬盘容量的能力。 但是,随着应用程序负荷的持续增加,这往往不能长期持续。

整个应用程序的另一个难题是灵活性低,因为它仅限于一种或两种编程语言。 没有这种灵活性可能会影响应用程序的总体质量和效率。 例如,node.js是构建Web应用程序的常见JavaScript框架,r语言是数据科学应用程序的常见语言。 整体应用难以利用这两种技术,但微服务应用能够简单地构建用r语言书写的数据科学服务和用Node.js书写的Web服务。

事件应用程序的微服务版本如下:

破产程序中的

此应用程序可以在称为水平扩展的多个服务器之间扩展。 每个服务可以部署在具有专用资源的不同服务器或容器中。 可以使用不同的编程语言创建不同的服务以提高灵活性,而不同的专业团队可以集中精力提高整个应用程序的质量。

青藤云安全表明,利用微服务的另一个显着优势是可持续提供,可随时随地引进软件。 微服务容易实现连续传递的原因是,与整个应用相比,一个微服务中引入的新功能很少影响其他微服务。

大家都在看

相关专题