高性能分布式发号器(ID生成器)
分表分库的分布式应用通常需要用到 ID 生成器生成流水号(支付流水号,订单号等),又称为发号器,以标识数据的全局唯一,ID 全局不可重复。
需要特别注意的是发号器服务的高可用性和高性能。当业务严重依赖发号器服务时,发号器服务有可能成为整个系统的短板。
所以发号器服务需要高可用集群部署来保障高可用性,需要高性能以满足高并发的场景。
分表分库的分布式应用通常需要用到 ID 生成器生成流水号(支付流水号,订单号等),又称为发号器,以标识数据的全局唯一,ID 全局不可重复。
需要特别注意的是发号器服务的高可用性和高性能。当业务严重依赖发号器服务时,发号器服务有可能成为整个系统的短板。
所以发号器服务需要高可用集群部署来保障高可用性,需要高性能以满足高并发的场景。
架构师职责、能力,良好架构设计。
衡量系统性能的常用指标:QPS,TPS,RT,吞吐量,UV,PV,并发数,用户数,在线用户数,日活跃用户数,同时在线用户量。
请设想下一个大型企业级系统需要如何设计? 在开始主要软件开发之前,我们必须选择一个合适的架构,以提供所需的功能和质量属性。 因此,在将它们应用到的设计之前,我们应该了解不同的架构。
RPC(Remote Procedure Call),即远程过程调用。
RPC 的核心目的是实现进程间通信,在分布式环境中广泛应用。
RPC 框架面向开发者屏蔽了网络底层逻辑,使远程调用可以像本地调用一样方便。
服务治理(SOA Governance) 起源于 SOA 面向服务架构,随微服务架构的火热而变的普及,但其最终目的是要对微服务框架下的大量微服务可能出现的问题进行治理。
服务治理本身一个大而泛的概念,没有明确的官方或标准化组织对其给出定义;服务治理的概念、内涵和实践,在业界还没有达成共识,更无法形成行业标准。随着系统的复杂程度越来越高,服务治理的需求越来越紧迫,并已成为一大痛点。
MQ 消息中间件基本都支持延时消息或消息过期处理相关功能,可以使用此功能来实现消息队列。
使用 MQ 实现延时队列的基本逻辑,是将消息发送到普通队列,让消息自动过期被转发路由到死信队列,消费者订阅死信队列。
常用的定时任务的实现方式:
基于 Redisson 的最佳实践应用 Redisson 实现了延时队列(Delayed Queue )功能,可以直接拿来使用。