详细介绍:
华翔云语电销系统办理
适用于教育,房产,代理记账,装修,增值应有尽有,029,外显手机号等多种线路
更改事件:从数据库生成的事件,指示状态转换。这些事件是更改数据捕获所关心的。
事件 streamer 是耐用的、持久的、容错的,不受消费者干预。在这种情况下,处理器是 dumb 类型(从某种意义上说,它仅充当消息路由器),并且客户端 / 服务拥有以域为中心的,负责 转储处理器与活跃客户端 的逻辑。这样就避免了复杂的集成平台,例如传统 SOA 设计中使用的 ESB。
图:微服务设计中的事件
微服务原理——智能消费者与哑管道
微服务社区提出了智能端点和哑管道的理念。Martin Fowler 是他称为微服务通信的智能端点和哑管道的拥护者。统治 SOA 领域的 ESB 存在与复杂性、成本和故障排除相关的诸多问题。
异步通信协议
MQTT——消息队列遥测传输(MQTT)是一项基于发布 / 订阅的轻量级消息传递协议 ISO 标准,已在物联网中广泛使用。
AMQP——高级消息队列协议(AMQP)是一项开放标准应用程序层协议,用于面向消息的中间件。
STOMP——简单文本定向消息传递协议(STOMP)是 HTTP 上基于文本的协议,用于在服务之间交换数据。
通用消息 / 流平台
ActiveMQ
Kafka
RabbitMQ
Redis Streams
评估标准的一些常见基准包括可用性、持久性 / 耐用性、耐用性、推 / 拉模型、可伸缩性和消费者能力。
微服务设计模式
微服务建立在独立和自治服务、可伸缩性、低耦合 + 高内聚和容错性等原则上。这些原则会带来许多挑战,包括复杂的管理和配置需求。微服务设计模式的目的是在给定的上下文中描述问题的可重用解决方案。我们将探讨这些模式如何应对挑战,以提供经过验证的解决方案来打造更高效的微服务架构。
Saga 模式——跨多个服务维护原子性
单个事务可能会跨越多个服务。例如,在电子商务应用程序中,新订单(与订单服务链接)不应超过客户信用额度(与客户服务链接),并且货品(与库存服务链接)应处于可用状态。这个事务根本不能使用本地 ACID 事务。
一个 saga 是一系列本地事务,这些事务可更新各个服务并发布一个消息 / 事件以触发下一个本地事务。有任何本地事务失败的情况下,saga 会执行一系列 补偿事务,以回退先前的本地事务所做的更改,从而保持 原子性。
基于编舞(Choreography)的 saga——参与者在没有中心化控制点的情况下交换 事件。
基于编排的 saga——一个中心化控制器告诉 saga 参与者要执行哪些本地事务。
在这两种模式之间具体选择哪一种,取决于工作流程的复杂性、参与者数量、耦合水平以及其他因素。