![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
wangxiang1292
这个作者很懒,什么都没留下…
展开
-
你的系统如何支撑高并发?
高并发系统各不相同。比如每秒百万并发的中间件系统、每日百亿请求的网关系统、瞬时每秒几十万请求的秒杀大促系统。他们在应对高并发的时候,因为系统各自特点的不同,所以应对架构都是不一样的。另外,比如电商平台中的订单系统、商品系统、库存系统,在高并发场景下的架构设计也是不同的,因为背后的业务场景什么的都不一样。最简单的系统架构假设刚刚开始你的系统就部署在一台机器上,背后就连接了一台数据库,...转载 2019-10-22 20:05:10 · 193 阅读 · 0 评论 -
微服务架构中分布式事务实现方案如何取舍
提起微服务架构,不可避免的两个话题就是服务治理和分布式事务。数据库和业务模块的垂直拆分为我们带来了系统性能、稳定性和开发效率的提升的同时也引入了一些更复杂的问题,例如在数据一致性问题上,我们不再能够依赖数据库的本地事务,对于一系列的跨库写入操作,如何保证其原子性,是微服务架构下不得不面对的问题。1 分布式事务解决方案针对分布式系统的特点,基于不同的一致性需求产生了不同的分布式事务解决...转载 2019-10-22 14:19:08 · 208 阅读 · 0 评论 -
面试官问:你讲讲分布式事务问题的几种方案?
面试题1、分布式事务了解吗?2、你们是如何解决分布式事务问题的?面试官心理分析只要聊到你做了分布式系统,必问分布式事务,你对分布式事务一无所知的话,确实会很坑,你起码得知道有哪些方案,一般怎么来做,每个方案的优缺点是什么。现在面试,分布式系统成了标配,而分布式系统带来的分布式事务也成了标配了。因为你做系统肯定要用事务吧,如果是分布式系统,肯定要用分布式事务吧。先不说你搞过没有,...原创 2019-10-09 10:25:27 · 88 阅读 · 0 评论 -
分布式事务实践(三)--Spring的全局事务JTA 李理可
01.Spring的本地事务Spring本身提供了一套Spring容器中进行事务管理的接口:不同的数据源厂商对Spring提供的事务管理接口都有相应的实现.0.jpg而在Spring的容器内,调用者实际上是通过调用Spring的事务接口来实现事务的管理.1.png02. 容器内存在多个数据源时如果一个应用容器中存在多个不同的数据源,通常我们会创...转载 2019-10-09 10:23:33 · 157 阅读 · 0 评论 -
Spring事务:事务属性之7种传播行为
事务传播行为什么叫事务传播行为?听起来挺高端的,其实很简单。即然是传播,那么至少有两个东西,才可以发生传播。单体不存在传播这个行为。事务传播行为(propagation behavior)指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行。例如:methodA事务方法调用methodB事务方法时,methodB是继续在调用者methodA的事务中运行呢,还是为自...转载 2019-10-08 15:10:10 · 115 阅读 · 0 评论 -
Zookeeper常见问题(二)
Zookeeper是一个分布式协调框架,有不错的性能,也经过许多公司的验证,所以在很多场景都有使用。大家一般用Zookeeper来实现服务发现(类似DNS),配置管理,分布式锁,leader选举等。在这些场景中,Zookeeper成为了一个被依赖的核心组件,Zookeeper的稳定性是需要特别关注的。 去哪儿网也在很多场景依赖Zookeeper,所以我们也一直在摸索怎么更好的运维稳定的Zook...原创 2019-10-07 15:17:13 · 415 阅读 · 1 评论 -
Zookeeper常见问题一
ZK选举过程当leader崩溃或者leader失去大多数的follower,这时候zk进入恢复模式,恢复模式需要重新选举出一个新的leader,让所有的Server都恢复到一个正确的状态。Zk的选举算法使用ZAB协议:选举线程由当前Server发起选举的线程担任,其主要功能是对投票结果进行统计,并选出推荐的Server; 选举线程首先向所有Server发起一次询问(包括自己); 选举线...原创 2019-10-07 15:16:18 · 1028 阅读 · 0 评论 -
Zookeeper的问题整理
Zookeeper典型应用场景有哪些?ZooKeeper是一个高可用的分布式数据管理与协调框架。基于对ZAB算法的实现,使该框架保证了分布式环境中数据的一致性,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题。典型场景:数据发布与订阅(配置中心) 发布与订阅模型,即所谓的配置中心,顾名思义就是发布者将数据发布到ZK节点上,供订阅者动态获取数据,实现配置信息的集中式管理和动...原创 2019-10-07 12:05:14 · 158 阅读 · 0 评论 -
Java分布式锁看这篇就够了
### 什么是锁?在单进程的系统中,当存在多个线程可以同时改变某个变量(可变共享变量)时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。 而同步的本质是通过锁来实现的。为了实现多个线程在一个时刻同一个代码块只能有一个线程可执行,那么需要在某个地方做个标记,这个标记必须每个线程都能看到,当标记不存在时可以设置该标记,其余后续线程发现已经有标记了则等待拥有标记的线...原创 2019-10-05 14:29:16 · 70 阅读 · 0 评论 -
什么是分布式锁
概述为了防止分布式系统中的多个进程之间相互干扰,我们需要一种分布式协调技术来对这些进程进行调度。而这个分布式协调技术的核心就是来实现这个分布式锁。为什么要使用分布式锁成员变量 A 存在 JVM1、JVM2、JVM3 三个 JVM 内存中 成员变量 A 同时都会在 JVM 分配一块内存,三个请求发过来同时对这个变量操作,显然结果是不对的 不是同时发过来,三个请求分别操作三个不同 ...原创 2019-10-05 14:27:48 · 1068 阅读 · 0 评论 -
dubbo与zookeeper的关系
Dubbo建议使用Zookeeper作为服务的注册中心。1. Zookeeper的作用: zookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知道,简单来说就是ip地址和服务名称的对应关系。当然也可以 通过硬编码的方式把这种对应关系在调用方业务代码中实现,但是如果提供服务的机器挂掉调用者无法知晓,如果不更改代码会继续请求挂掉的机器提供...原创 2019-10-04 19:50:22 · 120 阅读 · 1 评论 -
dubbo集群服务下一台服务挂了对服务调用的影响
dubbo集群服务下一台服务挂了对服务调用的影响一、问题描述:项目中2台dubbo服务给移动端提供查询接口,移动端反应说查询时而很快(秒刷),时而很慢(4-5秒)。二、问题分析: 1、问题猜想:网络不稳定原因导致,但是切换公司wifi和手机4G,问题依旧存在。说明问题不是网络原因导致 2、因为服务提供者中有记录服务响应时间日志,打开2台服务提供者的日志,发现有一台不会打印最新日...原创 2019-10-04 19:13:43 · 1146 阅读 · 0 评论 -
一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下
场景一有这样一个场景:系统中有大约100w的用户,每个用户平 均有3个邮箱账号,每隔5分钟,每个邮箱账需要收取100封邮件,最多3亿份邮件需要下载到服务器中(不含附件和正文)。用20台机器划分计算的压力,从 多个不同的网路出口进行访问外网,计算的压力得到缓解,那么每台机器的计算压力也不会很大了。通过我们的讨论和以往的经验判断在这场景中可以实现并行计算,但我们还期望能对并行计...转载 2019-10-04 19:11:42 · 139 阅读 · 0 评论