为什么我们需要模型
以前我们认为“程序 = 算法 + 数据结构”,后来做了复杂的项目变成“程序 = 控制逻辑 + 业务逻辑 + 数据结构”,现在我们认为“程序 = 模型 + 业务规则”
2022-02-08
远程过程调用RPC基本概念及实现原理
RPC 的全称是 Remote Procedure Call 是一种进程间通信方式。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。
2022-02-02
设计一个分布式环境下全局唯一的发号器
1、UUID 常见的方式。可以利用数据库也可以利用程序生成,一般来说全球唯一。 优点: 简单,代码方便。 生成ID性能非常好,基本不会有性能问题。 \3. 全球唯一,在遇见数据迁移,系统数据合并,或者数据库变更等情况下,可以从容应对。 ...
2022-01-27
如何设计一个带有过期时间的LRU缓存
问题描述 如何设计实现LRU缓存?且Set() 和 Get() 的复杂度为O(1)。 问题分析 LRU,全称Least Recently Used,最近最少使用缓存。 2022-01-27
从零设计一个分布式环境下的统一配置中心
我可以把我们的工作称之为在快速飞行的飞机上修理零件。我们人类总是无法掌控和预知一切。对于我们系统来说,我们总是需要预留一些控制线条,以便在我们需要的时候做出调整,控制系统方向(如灰度控制、限流调整),这对于拥抱变化的互联网行业尤为重要。对于单机版,我们称之为配置(文件),对于分布式集群系统,我们称之 ...
2022-01-27
分布式锁及其常见实现方式
在分布式系统中,为了保证对数据的修改有最终一致性,通常使用分布式锁或者分布式事务。与单机锁不同,分布式锁更加复杂,需要考虑网络延迟、服务阻塞等。目前主流的实现方式包括:基于数据库实现分布式锁、基于 Redis 实现分布式锁、基于 ZooKeeper 实现分布式锁。
2022-01-27
分布式系统下的唯一序列
在分布式系统中,由于涉及到多个不同业务module的交互,以及高并发的场景。我们需要系统能够生成一个跨业务module的全网唯一序列号,来保证我们业务操作的独立性和唯一性。
2022-01-24
微服务在弹性云实现无损发布实践
原来的系统是个单体服务,导致逻辑越来越复杂,牵一发而动全身。为了提高系统的可扩展性,我们把原来的单体系统,按照功能拆分成不同的微服务。
2022-01-24
多租户系统中如何实现分别限流
限流是后端服务开发中经常要集成的一个功能,对于防范系统因压力过大导致崩溃特别有用。在多租户系统中,限流对于限制单个租户使用的资源量也特别有用,这篇文章就来一探究竟。
2021-11-30
分布式事务XA
分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。本质上来说, ...
2021-11-28

© 2016 - 2024 chengxuzhixin.com All Rights Reserved.

浙ICP备2021034854号-1    浙公网安备 33011002016107号