![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
大神,快来碗里
专注于Java相关技术
展开
-
分布式技术(6) 后端接口设计方案
App与服务器的通信接口如何设计得好,需要考虑的地方挺多的,在此根据我的一些经验做一些总结分享,旨在抛砖引玉。安全机制的设计现在,大部分App的接口都采用RESTful架构,RESTFul最重要的一个设计原则就是,客户端与服务器的交互在请求之间是无状态的,也就是说,当涉及到用户状态时,每次请求都要带上身份验证信息。实现上,大部分都采用token的认证方式,一般流程是:1、用户用密码登录成功后...原创 2019-05-01 16:54:21 · 16680 阅读 · 1 评论 -
精选(48) 面试请不要再问我TCC分布式事务的实现原理
一、写在前面之前网上看到很多写分布式事务的文章,不过大多都是将分布式事务各种技术方案简单介绍一下。很多朋友看了不少文章,还是不知道分布式事务到底怎么回事,在项目里到底如何使用。所以咱们这篇文章,就用大白话+手工绘图,并结合一个电商系统的案例实践,来给大家讲清楚到底什么是TCC分布式事务。首先说一下,这里可能会牵扯到一些Spring Cloud的原理,如果有不太清楚的同学,可以参考之前的文章:...原创 2019-05-04 15:32:22 · 12907 阅读 · 0 评论 -
分布式相关(1)分布式锁的3种实现(数据库、缓存、Zookeeper)
分布式锁的几种实现方式目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们,任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数...原创 2019-04-29 22:05:42 · 10592 阅读 · 0 评论 -
分布式(2)知识体系
1.问题1、何为分布式何为微服务?2、为什么需要分布式?3、分布式核心理论基础,节点、网络、时间、顺序,一致性?4、分布式是系统有哪些设计模式?5、分布式有哪些类型?6、如何实现分布式?2.关键词节点,时间,一致性,CAP,ACID,BASE,P2P,机器伸缩,网络变更,负载均衡,限流,鉴权,服务发现,服务编排,降级,熔断,幂等,分库分表,分片分区,自动运维,容错处理,全栈监控...原创 2019-04-29 22:11:43 · 10709 阅读 · 1 评论 -
分布式技术(2)大型网站架构利器-CDN技术
概念CDN这个概念相信大家都比较耳熟,到底什么是CDN呢?CDN,全称为Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和...原创 2019-05-01 16:36:25 · 15602 阅读 · 0 评论 -
分布式技术(3) 分布式系统架构常识:CAP理论
什么是CAP理论?2000年7月,加州大学伯克利分校的Eric Brewer教授在ACM PODC会议上提出CAP猜想。2年后麻省理工学院的Seth Gilbert和NancyLynch从理论上证明了CAP,之后CAP理论正式成为分布式计算领域的公认定理。CAP理论是由下面三个概念组成的,且在分布式系统中三者不能兼得,只能同时满足两种条件。一致性(C)All nodes see the ...原创 2019-05-01 16:40:02 · 15530 阅读 · 0 评论 -
分布式技术(4) 5分钟带你理解一致性Hash算法
一、前言在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。但是普通的余数hash(hash(比如用户id)%服务器机器数)算法伸缩性很差,当新增或者下线服务器机器时候,用户id与服务器的映射关系会大量失效。一致性hash则利用hash环对其进行了改进。二、一致性Hash概...原创 2019-05-01 16:48:18 · 15633 阅读 · 0 评论 -
分布式技术(5)服务高可用:幂等性设计
什么是幂等性?一般在服务调用时,读服务如果调用失败了,会自动按配置次数转移到别的服务上去请求。而写服务就不能重复请求,如果因为超时或者网络故障等原因被调用服务并没有返回成功的响应,服务调用方就认为是失败了,但很有可能的是已经成功了,如果继续重复请求写服务,如转账类的服务,可能会造成严重的后果。所以,写服务失败不能设计成继续发重复请求,被调用服务也要设计幂等性,即使重复请求,也不会造成影响。知道...原创 2019-05-01 16:52:34 · 15550 阅读 · 0 评论 -
精选(59) 分布式系统面试连环炮
分布式系统面试连环炮有一些同学,之前呢主要是做传统行业,或者外包项目,一直是在那种小的公司,技术一直都搞的比较简单。他们有共同的一个问题,就是都没怎么搞过分布式系统,现在互联网公司,一般都是做分布式的系统,大家都不是做底层的分布式系统、分布式存储系统 hadoop hdfs、分布式计算系统 hadoop mapreduce / spark、分布式流式计算系统 storm。分布式业务系统,就是把...原创 2019-05-14 22:11:19 · 10633 阅读 · 0 评论 -
架构方案(21) RPC框架的实现原理,及RPC架构组件详解
谈微服务就不得不谈到RPC随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。垂直应用架构当访问量逐渐增大,单...原创 2019-05-02 18:07:14 · 10462 阅读 · 0 评论 -
架构方案(17) 分布式架构系统拆分原则、缘由、以及实战如何拆分步骤
分布式架构率先开始的就是应用工程拆分,如何拆分,什么情况拆分,拆分的原则是什么,能否实战详解拆分步骤?让我一一娓娓道来。为什么需要应用拆分我以淘宝技术架构演进为例,淘宝从一个大系统工程向分布式架构演变过程,你就能很清楚的知道为什么要需要进行应用拆分。1 人员的角度。维护一个代名工程Denali的百万级代码怪兽(虽然物理部署是分离的),从发布到上线,从人员的角度,百号人同时在一个工程上...原创 2019-05-02 17:51:21 · 16413 阅读 · 0 评论 -
分布式技术(7) 京东购物车的 Java 架构实现及原理
今天来开始写一下关于购物车的东西, 这里首先抛出四个问题:1)用户没登陆用户名和密码,添加商品, 关闭浏览器再打开后 不登录用户名和密码 问:购物车商品还在吗?2)用户登陆了用户名密码,添加商品,关闭浏览器再打开后 不登录用户名和密码 问:购物车商品还在吗?3)用户登陆了用户名密码,添加商品, 关闭浏览器,然后再打开,登陆用户名和密码 问:购物车商品还在吗?4)用户登陆了用户名密码,添加...原创 2019-05-01 17:06:49 · 16071 阅读 · 0 评论 -
分布式技术(8) 摸爬打滚出的高并发架构实战干货
一、关于高并发高并发是指在同一个时间点,有很多用户同时访问URL地址,比如:淘宝的双11、双12,就会产生高并发。又如贴吧的爆吧,就是恶意的高并发请求,也就是DDOS攻击,再屌丝点的说法就像玩LOL被ADC暴击了一样,那伤害你懂的。1 高并发会来带的后果**服务端:**导致站点服务器/DB服务器资源被占满崩溃,数据的存储和更新结果和理想的设计是不一样的,比如:出现重复的数据记录,多次添加了...原创 2019-05-01 17:10:54 · 16232 阅读 · 0 评论 -
分布式技术(9) 分布式Session解决方案
分布式Session一致性?说白了就是服务器集群Session共享的问题Session的作用?Session 是客户端与服务器通讯会话跟踪技术,服务器与客户端保持整个通讯的会话基本信息。客户端在第一次访问服务端的时候,服务端会响应一个sessionId并且将它存入到本地cookie中,在之后的访问会将cookie中的sessionId放入到请求头中去访问服务器,如果通过这个sessioni...原创 2019-05-02 08:21:04 · 10767 阅读 · 0 评论 -
分布式系统全局唯一ID简介、特点、生成
一、什么是分布式系统唯一ID在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在金融、电商、支付、等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求,此时一个能够生成全局唯一ID的系统是非常必要的。二、分布式系统唯一ID的特点全局唯一性:不能出现重复的ID号,既然是唯一标识,这是最基本的要求。趋势递增:在M...原创 2019-04-27 17:25:41 · 15118 阅读 · 0 评论 -
架构方案(11) 分布式、集群、负载均衡之间的区别与关联
服务器集群1.集群概念集群就是一组相互独立的计算机,通过高速的网络组成一个计算机系统。服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。2.集群的特点和优势1)高性能比如上千台服务器同时计算运行,远大于单机的运行效率(可以参考:google公开有关GFS,bigtable,mapreduce的三篇论文)。2)性价比优势利用通用廉价的服务器代替小...原创 2019-05-02 17:33:27 · 10485 阅读 · 0 评论 -
架构方案(16) 常见分布式文件存储介绍、选型比较、以及架构设计
数据正成为世界上最有价值的资源,分布式文件存储是应对数据爆炸的最好解决方案,那就会涉及到分布式文件存储方案、选型、架构设计等。分布式文件存储的来源在这个数据爆炸的时代,产生的数据量不断地在攀升,从GB,TB,PB,ZB.挖掘其中数据的价值也是企业在不断地追求的终极目标。但是要想对海量的数据进行挖掘,首先要考虑的就是海量数据的存储问题,比如Tb量级的数据。谈到数据的存储,则不得不说的是磁盘...原创 2019-05-02 17:47:22 · 12418 阅读 · 0 评论 -
精选(60) 面试官:分布式服务接口请求的顺序性如何保证?
面试题分布式服务接口请求的顺序性如何保证?面试官心理分析其实分布式系统接口的调用顺序,也是个问题,一般来说是不用保证顺序的。但是有时候可能确实是需要严格的顺序保证。给大家举个例子,你服务 A 调用服务 B,先插入再删除。好,结果俩请求过去了,落在不同机器上,可能插入请求因为某些原因执行慢了一些,导致删除请求先执行了,此时因为没数据所以啥效果也没有;结果这个时候插入请求过来了,好,数据插入进去...原创 2019-05-14 22:13:12 · 10894 阅读 · 0 评论