首页
学习
活动
专区
工具
TVP
发布

架构师之路

专栏作者
459
文章
490292
阅读量
207
订阅数
分布式事务,一次性说清
的确,分布式事务的落地实践相对比较复杂,和数据库分库分表一样,很多公司采取的策略都是能不碰就不碰,因为在业务规模不庞大时,设计分布式事务要投入的精力,可能比采取人工补偿多得多。
架构师之路
2021-07-15
5920
MQ选型,究竟要考虑哪些因素?
成熟系统的构建,最不能缺少的一环就是消息队列。消息队列的概念看似好懂,但落实到复杂问题的解决,则非常考验内功。比如:
架构师之路
2021-07-15
4360
究竟先操作缓存,还是数据库?
但是,一旦没有命中缓存,或者一旦涉及写操作,流程会比没有缓存更加复杂,这些是今天要分享的话题。
架构师之路
2018-07-27
1.5K0
1分钟了解“挖矿”的本质
上一篇《1分钟了解区块链的本质》,介绍了什么是区块链,区块链是一个没有管理员,每个节点都拥有全部数据,高可用的分布式存储系统。 文章的留言里,不少朋友会用比特币来解释区块链,那区块链与比特币是什么关系
架构师之路
2018-03-27
1.8K0
一分钟了解负载均衡的一切
什么是负载均衡 负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。 常见的负载均衡方案
架构师之路
2018-03-02
1.3K0
分布式ID生成器 | 架构师之路
一、需求缘起 几乎所有的业务系统,都有生成一个唯一记录标识的需求,例如: 消息标识:message-id 订单标识:order-id 帖子标识:tiezi-id 这个记录标识往往就是数据库中的主键,数据库上会建立聚集索引(cluster index),即在物理存储上以这个字段排序。 这个记录标识上的查询,往往又有分页或者排序的业务需求,例如: 拉取最新的一页消息 select message-id/ order by time/ limit 100 拉取最新的一页订单 select order-id/ or
架构师之路
2018-03-02
1.6K0
浅谈CAS在分布式ID生成方案上的应用 | 架构师之路
近几篇文章聊CAS被骂得较多,今天还是聊CAS,谈谈CAS在一种“分布式ID生成方案”上的应用。 所谓“分布式ID生成方案”,是指在分布式环境下,生成全局唯一ID的方法。 可以利用DB自增键(auto
架构师之路
2018-03-01
1.1K0
究竟啥才是互联网架构“高并发”
一、什么是高并发 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。 高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。 响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间。 吞吐量:单位时间内处理的请求数量。 QPS:每秒响应请求数。在互
架构师之路
2018-03-01
1.4K0
这才是真正的分布式锁
昨晚十点下班,回家花了1个小时写了一篇《一分钟实现分布式锁》,引起读者一些反响,有些朋友反馈“setnx算什么方案”,“没有考虑超时”,“为啥不用zookeeper”,有甚者上升到 “质疑58同城的技术水平”,“拉低了架构师的层次”,“适合小学生阅读”。 给58带来负面的影响实在对不起公司,也抱歉耽误部分同学1分钟时间(还好是1分钟系列),不过大部分读者的反馈是正向的,只生气了5分钟。 技术领域,我觉得了解来龙去脉,了解本质原理,比用什么工具实现更重要: (1)进程多线程如何互斥? (2)一个手机上两个AP
架构师之路
2018-03-01
1.9K0
一分钟实现分布式锁
一、缘起 分布式环境下,多台机器上多个进程对一个数据进行操作,如果不做互斥,就有可能出现“余额扣成负数”,或者“商品超卖”的情况,如何实现简易分布式锁,对分布式环境下的临界资源做互斥,是今天将要讨论的
架构师之路
2018-03-01
9330
细聊分布式ID生成方法
一、需求缘起 几乎所有的业务系统,都有生成一个记录标识的需求,例如: (1)消息标识:message-id (2)订单标识:order-id (3)帖子标识:tiezi-id 这个记录标识往往就是数据库中的唯一主键,数据库上会建立聚集索引(cluster index),即在物理存储上以这个字段排序。 这个记录标识上的查询,往往又有分页或者排序的业务需求,例如: (1)拉取最新的一页消息:selectmessage-id/ order by time/ limit 100 (2)拉取最新的一页订单:selec
架构师之路
2018-03-01
1.2K0
缓存与数据库一致性保证
本文主要讨论这么几个问题: (1)啥时候数据库和缓存中的数据会不一致 (2)不一致优化思路 (3)如何保证数据库与缓存的一致性 一、需求缘起 上一篇《缓存架构设计细节二三事》(点击查看)引起了广泛的讨
架构师之路
2018-03-01
1.6K0
一分钟了解两阶段提交2PC(运营MM也懂了)
上一期分享了“一分钟了解mongoDB”,本期将分享分布式事务的一种实现方式2PC。 一、概念 二阶段提交2PC(Two phase Commit)是指,在分布式系统里,为了保证所有节点在进行事务提交时保持一致性的一种算法。 二、背景 在分布式系统里,每个节点都可以知晓自己操作的成功或者失败,却无法知道其他节点操作的成功或失败。 当一个事务跨多个节点时,为了保持事务的原子性与一致性,需要引入一个协调者(Coordinator)来统一掌控所有参与者(Participant)的操作结果,并指示它们是否要把操作结
架构师之路
2018-03-01
9330
一分钟了解两阶段提交协议/算法(分布式理论基础)
两阶段提交协议/算法(2PC) 概念 二阶段提交2PC(Two phase Commit)是指,在分布式系统里,为了保证所有节点在进行事务提交时保持一致性的一种协议算法。 背景 在分布式系统里,每个节点都可以知晓自己操作的成功或者失败,却无法知道其他节点操作的成功或失败。 当一个事务跨越多个节点时,为了保持事务的原子性与一致性,需要引入一个协调者(Coordinator)来统一掌控所有参与者(Participant)的操作结果,并指示它们是否要把操作结果进行真正的提交(commit)或者回滚(rollbac
架构师之路
2018-02-28
1.4K0
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档