微服务架构 - 不同元素

到目前为止,我们已经了解了什么是微服务,以及它在现代 MVC 架构之上的基本需求是什么。在本章中,我们将学习这种架构中对服务同样重要的不同元素。

服务类别

通过名称"微服务",我们假设它将是一种可以通过 HTTP 协议使用的服务,但是我们需要知道可以使用这种架构构建哪种服务。以下是可以使用微服务架构实现的服务列表。

平台即服务 [PaaS] − 在这种面向服务的架构中,平台作为一种可以根据业务需求进行定制的工具。PaaS 在移动应用程序开发中发挥着重要作用。PaaS 最伟大的例子是 Google App Engine,Google 在其中提供了不同的有用平台来构建您的应用程序。PaaS 最初是为了向开发人员提供内置架构或基础设施而开发的。它大大减少了高级编程的复杂性,缩短了时间。以下是 Google 提供的 PaaS 的快照。

Google Cloud Platform

软件即服务 [SaaS] − 软件即服务是一种软件许可业务,其中软件集中托管并以订阅方式获得许可。SaaS 主要通过浏览器访问,它是许多垂直业务领域(如人力资源管理 (HRM)、企业资源规划 (ERP)、客户关系管理 (CRM) 等)中非常常见的架构模式。以下屏幕截图显示了 Oracle 提供的不同 SaaS 的示例。

Common Infrastructure Services

基础设施即服务 [IaaS] − 基础设施在 IT 行业中发挥着重要作用。一些组织使用云计算提供虚拟基础设施作为其服务。IaaS 对于在软件开发中带来灵活性、成本效益、安全性、性能、生产力等非常有帮助。Amazon EC2 和 Microsoft Azure 是 IaaS 的最大例子。下图描绘了 AWS 的一个示例,其中数据中心作为 IaaS 提供。

数据中心服务

数据即服务 [DaaS] − 信息技术处理数据,一些顶级行业领导者认为数据将成为社会的新支柱。DaaS 是一种服务,其中数据与商业集团共享以进行研究和分析。DaaS 在数据访问层带来了简单性、灵活性和安全性。以下是 Oracle 数据云的示例,您可以根据自己的业务需求进行访问或授权。

Oracle 数据云

后端即服务 [BaaS] − BaaS 也称为 MBaaS,即移动后端即服务。在这种类型的服务中,应用程序的后端将提供给业务部门,供其开展自己的业务。所有推送通知、社交网络服务都属于此类服务。Facebook 和 Twitter 就是著名的 BaaS 服务提供商的例子。

安全性

在处理大量客户数据时,安全性起着重要作用。安全问题与市场上提供的所有类型的服务有关。无论您使用哪种云 - 私有云、公共云、混合云等,都应在各个层面保持安全性。整个安全问题大致可细分为以下几个部分 −

  • 服务提供商面临的安全问题 −此类安全问题由 Google、Amazon 等服务提供商面临。为确保安全保护,需要对客户进行背景调查,尤其是那些可以直接访问云核心部分的客户。

  • 消费者面临的安全问题 − 云成本低廉,因此被广泛应用于各个行业。一些组织将用户详细信息存储在第三方数据中心,并在需要时提取数据。因此,必须保持安全级别,以使任何客户的私人数据都不能被其他用户看到。

为防止上述安全问题,以下是组织使用的一些防御机制。

  • 威慑控制 − 了解潜在威胁以减少网络攻击。

  • 预防控制 − 维护高级别的身份验证策略以访问您的云。

  • 侦查控制 − 监控您的用户并检测任何潜在风险。

  • 纠正控制 − 与不同团队密切合作并解决侦查控制阶段出现的问题。