代码编织梦想

分片架构

分片架构就可以解决主从复制存在的问题,如果主机能够承担写的性能,那么主从就够了,如果不能,那么就需要分片架构了。

分片架构设计核心

分片架构设计核心-分片规则

案例1:不合理,因为不同年龄是不均匀的,城市也是不合理的

案例2:动态适合用户ID来分片,微博适合用hash分片

分片架构设计核心-路由规则

分片动态路由-配置中心

分片动态路由-路由转发

分片架构高可用

分片架构本身是一个高性能架构,分片架构需要结合复制架构才能具备高性能高可用特性。

分片架构高可用方案1-独立备份

分片架构高可用方案2-互相备份

分片架构高可用架构 案例

左边方案1,右边方案2

分区架构

分区架构全局路由-DNS 和 GLSB

DNS:比如北方用户来到南方,那么根据DNS就近原则,此时请求会被打到南方,但是南方没有用户信息,此时我们还需要在业务层做一个用户区域的转发,让用户的请求被打到北方。

北方区和南方区的数据都是不一样的。

分区架构备份策略-集中式(使用最多)

分区架构备份策略-互备式

分区架构备份策略-独立式

本节思维导图

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/huanfeng_AI/article/details/140906940

分片架构&分区架构_lee_nacl的博客-爱代码爱编程

分片架构 主从复制 缺点: 只有主机承担写,写性能会存在瓶颈每台机器保存全量数据,存储存在瓶颈 分片架构 本质 通过叠加更多服务器来提升写性能和存储性能 设计核心 分片规则:数据按照什么规则分片

架构训练营学习笔记:4-3存储架构模式之分片架构和分区架构-爱代码爱编程

分片架构的本质: 分片架构能提升写性能和存储性能,对应的主备架构的本质是备份,主从架构本质提升读性能。  分片架构的两个关键点:分片规则跟路由规则 分片规则: 选择基数比较大的某个数据键值,让数据均匀分布,避免热点切片  基数Cardinality。被选的数据维度取值范围均匀。数据在取值范围内是均匀分布的 分片数据 主键 :适合主业务数据,

架构模式:分片-爱代码爱编程

什么是分片? 分片是一种数据库架构模式,涉及将数据库划分为更小、更快、更易于管理的部分,称为分片。每个分片都是一个不同的数据库,这些分片共同构成了整个数据库。分片对于管理大型数据库特别有用,可以显着提高性能、可维护性和可扩展性。 主要特点 ​数据分布: 分片可以分布在多个服务器上,从而减少任何单个服务器上的负载并缩短响应时间。 水平分区:分片通常

spring之底层架构核心概念解析-爱代码爱编程

BeanDefinition BeanDefinition表示Bean定义,BeanDefinition中存在很多属性用来描述一个Bean的特点。比如: class,表示Bean类型 scope,表示Bean作用域,单例或原型等 lazyInit:表示Bean是否是懒加载 initMethodName:表示Bean初始化时要执行的方法 des

《arm cortex-爱代码爱编程

第二章 ARM 架构与处理器 ARM 会定期发布新版本的架构,这些版本会增加新功能或对现有行为进行更改。这些更改几乎总是向后兼容的,这意味着在旧版本架构上运行的用户代码在新版本上仍然可以正确运行。当然,利用新功能编写的代码

革命性架构:如何用命令模式彻底革新手游后端设计-爱代码爱编程

利用命令模式实现一个手游后端架构是一种将请求封装为对象,从而使得用户可以用不同的请求对客户进行参数化的设计方法。这种方法不仅可以解耦系统的请求发起者和执行者,还支持撤销操作、命令排队和日志记录等功能,极大地提高了系统的灵活性和可扩展性。具体分析如下: 一、命令模式的基本原理与结构 定义与目的:命令模式是一种行为设计模式,旨在将请求封装为对象,从而允许

mybatis一级缓存和二级缓存以及 mybatis架构-爱代码爱编程

缓存 数据缓存,让数据离我们执行的程序更近一点,让程序能够快速的获取到数据 缓存的作用就是减轻数据库的压力,提高查询性能。缓存实现的原理是从数据库中查询出来的对象在使用完后不要销毁,而是存储在内内(缓存)中,当再次需要获取该对象时,直接从缓存中直接获取,不再向数据库只是select语句,从而减少数据库的查询压力 mybatis一级缓存 一级缓存默认

cuda与tensorrt学习一:并行处理与gpu体系架构-爱代码爱编程

文章目录 一、并行处理简介1)串行介绍2)并行介绍3)并行与并发的区别4)编译器优化课程汇总5)常见并行处理 二、GPU并行处理1)基础概念介绍2)CPU和GPU在并行处理的优化方向3)CPU的特点及优

“智能化自动化” 架构之3:中间建模脑的领域驱动设计的“同声传译”技能-爱代码爱编程

Q1、今天我们继续用软件技术的两个词 插件plugin和挂钩hook 来继续 我们的“智能化自动化”架构设计。 前面说过,这个架构被设计为一个双面神结构。 外侧面是 数据模型(抽象理论 ,对物理世界的抽象面。带自然语言处理processing功能的一个专家智能化系统),内侧面是程序模型(实践常识 ,实现机器的工程面。带程序语言开发功能的一个工业自动化系统)

“智能化自动化” 架构之4:中间建模脑的软件设计三大原则-爱代码爱编程

‌领域驱动设计(DDD)是一种软件设计方法论,而不是一种具体的架构或框架。‌ 领域驱动设计(DDD)是由Eric Evans在其2003年的同名书籍中首次提出的,旨在解决快速变化和复杂系统的设计问题。它强调以领域为核心构建软件设计体系,通过将业务模型抽象成领域模型进行拆解和封装,来应对业务领域的复杂性。DDD通过引入领域模型、通用语言、界限上下文等概念,