随笔分类 - [12]Architecture分布式系统架构
-
计算机体系
摘要:文章已收录到: https://github.com/sunshinelyz/technology-binghe https://gitee.com/binghe001/technology-binghe 计算机结构 计算机结构主要由运算器、控制器、存储器、输入设备和输出设备组成。简化的结构图如下图 阅读全文
-
Redis击穿、穿透、雪崩
摘要:Redis击穿、穿透、雪崩 击穿 大家都知道,计算机的瓶颈之一就是IO,为了解决内存与磁盘速度不匹配的问题,产生了缓存,将一些热点数据放在内存中,随用随取,降低连接到数据库的请求链接,避免数据库挂掉。需要注意的是,无论是击穿还是后面谈到的穿透与雪崩,都是在高并发前提下,当缓存中某一个热点key失效, 阅读全文
-
传统的SOA是否已经过时
摘要:今天准备再聊下在当前微服务,中台和云原生技术下,传统的SOA是否已经过时这个话题。现在出去跟别人交流,谈到SOA的时候有些客户直接的反馈就是过时的技术怎么还在用?或者一说到SOA就认为过时了没必要采用,因此今天还是有必要就SOA是否过时进一步说明。 SOA的基本概念 我们可以来看下SOA本身的定义, 阅读全文
-
微服务架构设计实践
摘要:微服务架构设计实践总结和思考 微服务架构核心 再次强调,微服务架构核心是传统单体应用大拆小,同时拆分为小的微服务后相互之间以轻量的API接口进行通信。而这个拆分本身又分了多个方面。 开发团队的拆分 代码层的拆分,可独立构建打包 数据库的拆分 在拆分后为了更加敏捷开发和集成,引入了DevOps和容器云 阅读全文
-
解决单点问题,方法就是堆机器,堆应用吗?---一致性哈希算法的计算思想
摘要:转载面试官常问的“一致性哈希” 大家好,好久不见啦。最近快年底了,公司、部门事情太多:冲刺 KPI、做部门预算……所以忙东忙西的,写文章就被耽搁了。再加上这篇文章比较硬,我想给大家讲得通俗易懂,着实花了很多时间琢磨怎么写。 话不多说,小故事开始。 前言 当架构师大刘看到实习生小李提交的记账流水乱序的 阅读全文
-
什么是分布式系统
摘要:# 转载每一个程序员,都希望能成为分布式系统架构师 1. 什么是分布式系统 分布式系统大家从网络上看到的学术定义简单来说就是一套由一组计算机协同工作,让用户感觉像是一个统一的整体的系统。 但是,由于这个定义定的过于简练,很多初入门的人会毫无感知的潜意识就会混淆了分布式系统的概念。 什么意思?我这里问 阅读全文
-
分布式系统中那些不靠谱任务-CAP 到底是什么
摘要:当领导给出的任务不靠谱时,我们可以依据 CAP 去否决它。 比如,有这么一个任务,给你定了三大目标: 既要提升系统的可用性 又要保证数据的实时可见 还有提升系统的容错能力 CAP 理论,相信很多人都听过,它是指: 一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availab 阅读全文
-
分布式系统架构中关于切分数据库事务的 ACID 性质的可用性与性能-BASE 理论和CAP 定理
摘要:BASE 理论本质上只是一种架构思想,它告诉人们世界上还存在着这么一些事情: 能通过巧妙地设计,通过局部轻微的损失减少全局严重的损失; 能通过一些解耦、异步、推迟执行、批量执行等技巧,构造出一种中间状态,从而提高系统的整体性能; 平台是为业务服务的,业务的核心是数据状态,而数据状态无论中间变成什么样 阅读全文
-
如何保证扣减库存的并发量不超卖?生成订单与商品库存的最终一致性?多次请求商品服务扣减库存的接口,不多次扣减库存?
摘要:转载框架中使用的技术知识 NET Core基础知识,EF CORE Code First,DB First 领域驱动设计理论,三层架构,DDD经典分层架构 WebApi,Swagger,WebApiClient,Grpc,Exceptionless,Serilog Redis,Consul,Iden 阅读全文
-
微服务架构-Consul集群、Ocelot服务和Nginx网关服务
摘要:https://www.cnblogs.com/PatrickLiu/category/1872950.html 微服务架构Consul集群、Ocelot网关和Nginx版本实现 基于单节点Consul服务组件实现的微服务架构是有缺点的,而且这个缺点也是很致命的。如果这个Consul节点死掉,整个系 阅读全文
-
2PC/3PC/TCC/seata/消息队列柔性事务
摘要:五大分布式事务,你了解多少? 一、前言 事务(Transaction):一般是指要做的或所做的事情,由 事务开始(begin transaction) 和 事务结束(end transaction) 之间执行的全体操作组成。 简单的讲就是:要么全部被执行,要么就全部失败。 那分布式事务,自然就是运行 阅读全文
-
高并发架构相关概念
摘要:写在前面 最近不少小伙伴们都在问我:高并发专题我学了不少文章了,但是如何设计一个高并发的系统我还是一脸懵逼!这个问题怎么解决呢?其实,相信不只是问我的这些小伙伴有这个困惑,就连工作(入坑)了好几年的开发人员也都有这样的困惑:我学习了很多的高并发课程,也看了不少的高大上的文章,可就是不知道怎么去设计一 阅读全文
-
重复订单解决方案
摘要:问题描述:用户下订单购买,因为各种原因(网络卡,快递点击等)重复提交2个或者以上一模一样的订单,由于是同时提交的,第一个订单执行扣款生成订单未完成时候,第二个已经进来了,导致付一笔钱购买了2次或多次商品 解决方案: 1、缓存lock,缓存此用户的操作行为,注意紧紧缓存操作的标志,下次进入判断此标志是 阅读全文
-
ES亿级别数据分页
摘要:上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB 面试题 & 真实经历 面试题:在数据量很大的情况下,怎么实现深度分页? 大家在面试时,或者准备面试中可能会遇到上述的问题,大多的回答基本上是分库分表建索引,这是一种很标准的正确回答,但现实总是很骨感,所以面试官一般会追问你一句,现 阅读全文
-
分布式事务、幂等控制、异步消息乱序和补偿方案
摘要:谈谈对分布式事务的一点理解和解决方案 前提# 最近,工作中要为现在的老系统做拆分和升级,刚好遇到了分布式事务、幂等控制、异步消息乱序和补偿方案等问题,刚好基于实践结合个人的看法记录一下一些方案和思路。 分布式事务# 首先,做系统拆分的时候几乎都会遇到分布式事务的问题,一个仿真的案例如下: 项目初期, 阅读全文
-
分布式事务就是由多个本地事务组合而成的事务
摘要:漫谈分布式事务的那些解决方案 事务我们都不陌生,我们常说的事务一般都是指单机事务,即本地事务。那分布式事务是什么?分布式事务就是由多个本地事务组合而成的事务,一般在分布式场景下才会出现。 比如电商平台中,我们在购物的时候,下单支付这个过程看上去是一气呵成的,但是背后可能是多个系统的分工合作。订单系统 阅读全文
-
高并发秒杀系统架构秒杀
摘要:【高并发】高并发秒杀系统架构解密,不是所有的秒杀都是秒杀! 前言 很多小伙伴反馈说,高并发专题学了那么久,但是,在真正做项目时,仍然不知道如何下手处理高并发业务场景!甚至很多小伙伴仍然停留在只是简单的提供接口(CRUD)阶段,不知道学习的并发知识如何运用到实际项目中,就更别提如何构建高并发系统了! 阅读全文
-
「微服务」「RPC」「服务治理」「下一代微服务」
摘要:单体式应用程序 与微服务相对的另一个概念是传统的「单体式应用程序」( Monolithic application ),单体式应用内部包含了所有需要的服务。而且各个服务功能模块有很强的耦合性,也就是相互依赖彼此,很难拆分和扩容。 说在做的各位都写过单体程序,大家都没意见吧?给大家举个栗子,刚开始写代 阅读全文
-
交易中台系统设计与思考---防腐层
摘要:交易中台系统设计与思考 系统架构 在这里主要想说的是服务接入层,在我们目前的系统架构中并没有服务接入层。但是在我日后的反思中,觉得服务接入层的存在还是很有必要的。 服务接入层的作用 防腐层作用。因为业务中台要服务于企业内多条业务线,日常开发中应对不同的业务需求,我们常常在底层服务中的添加许多转换、判 阅读全文
-
Creating a multi-tenant .NET Core Application - Tenant resolution
摘要:Introduction This series of blog posts is an exploration of how to achieve multi-tenancy in an ASP.NET Core web application. There’s a lot of code sni 阅读全文