我为什么要使用它:
如果没有分布式跟踪哪些工具比较好,通过不同的服务跟踪你的请求会令人沮丧或不可能 。你可以借助用于演示请求流的丰富 UI 轻松跟踪请求和事件 。
哪些工具比较好:
OpenTelemetry , Jeager,Zipkin
数据持久化它是什么:
在大多数系统中,我们需要持久化数据,将应用程序的数据写入具有不同结构的物理文件中,以便数据用于进一步的处理或报告 。
我为什么要使用它:
在单体应用程序中,我们曾经有一种或两种不同的持久性类型,大多数单体应用程序使用关系数据库,如 SQL Server、Oracle、MySQL 。但是在微服务架构中,我们应该遵循“DataBase Per Service”模式,这意味着保持每个微服务的持久数据对该服务是私有的,并且只能通过其 API 访问 。
对于不同的用途和场景,你将拥有不同的数据库 。例如,数据展示服务可能会使用像 ElasticSearch 或 MongoDB 这样的 NoSQL 数据库,因为它们使用文档基础结构,这意味着这些数据库中持久化数据的结构与关系数据库不同,更适用于具有读多写少的服务 。
另一方面,在某些微服务中,你可能需要 Oracle 或 SQL SERVER 等关系数据库,或者你可能还需要一些支持图结构或键值结构的数据库 。
所以,在微服务架构中,根据服务的使命,你会需要不同类型的数据库 。
哪些工具比较好:
关系数据库或 RDBMS : PostgreSQL, MySQL, SQL SERVRE, Oracle
NoSQL 数据库 : MongoDB, Cassandra,Elasticsearch
缓存它是什么:
缓存减少了微服务架构的服务到服务通信的延迟 。缓存是高速数据存储层 。当从缓存中请求数据时,它的速度比访问硬盘中的数据要快 。
我为什么要使用它:
在微服务架构中,有许多策略可以通过这些方式实现缓存 。考虑以下:
1:嵌入式缓存(分布式和非分布式)为了减少延迟,可以在不同的层中实现缓存 。此外,你还可以实现分布式缓存,它可以被多个微服务访问 。它们还有不同的用途,比如限流,限流的目的是通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务 。。
2:客户端-服务器缓存(分布式)
3:反向代理缓存(Sidecar)
哪些工具比较好
redis (Remote Dictionary Server), Apache Ignite,Hazelcast IMDG
云供应商它是什么:
云服务提供商是一个第三方公司,提供基于云的平台,基础设施,应用程序或存储服务 。就像房主为电力或天然气等公用事业付费一样,公司通常只需根据业务需求为他们使用的云服务数量付费 。
云提供商最重要的类别:
我为什么要使用它
- 软件即服务 (SaaS) 。
- 平台即服务 (PaaS) 。
- 基础设施即服务 (IaaS) 。
使用云计算服务的一个好处是,公司可以避免搭建和维护自己的 IT 基础设施的前期成本和复杂性,而只需在使用时为所用的东西付费 。今天,公司可以租用从应用程序到存储的任何东西,而不是拥有自己的计算基础设施或数据中心 。
哪些工具比较好
Amazon Web Services (AWS), Microsoft Azure, google Cloud,Alibaba Cloud
结论在本文中,我试图展示一个与微服务架构模式相关的路线图 。如果你想从头开始实现微服务架构或将单体架构迁移到微服务架构,你将需要了解这些概念 。
除了这些概念之外,我们还有其他概念,如服务网格、缓存、持久性,它们可能是本路线图的一部分,但为了简单起见,我故意没有提及它们 。
【一张图聊聊微服务架构路线】
推荐阅读
- 梦见罐子有什么征兆 梦见罐子有什么征兆周公解梦
- 水葫芦花怎么养 水葫芦花好养吗
- 梦见脸是什么征兆 梦见 脸
- 梦见自己来月经是什么征兆女 梦见自己来月经是什么征兆
- 关于感情的句子有哪些
- 梦见烧水什么预兆解梦 梦见烧水什么预兆
- 盘点蔬果中的“护肝大将”
- 这12种蔬菜最养肝
- 15种食物让你越吃越瘦
- 主食吃少易患6种病