摘要:编者按:本文由「高可用架构后花园」群讨论整理而成。 有人的地方,就有江湖 有江湖的地方,就有纷争 问题的起源 在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性? 具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、 阅读全文
posted @ 2017-10-27 11:12 crazyYong 阅读(318) 评论(0) 推荐(0) 编辑
摘要:互联网行业是大势所趋,从招聘工资水平即可看出,那么如何提升自我技能,满足互联网行业技能要求?需要以目标为导向,进行技能提升,本文主要针对高并发分布式系统设计、架构(数据一致性)做了分析,祝各位早日走上属于自己的"成金之路"。 目录:问题分析概念解读Most Simple原理解读eBey、去哪儿、蘑菇 阅读全文
posted @ 2017-10-27 11:10 crazyYong 阅读(166) 评论(0) 推荐(0) 编辑
摘要:开篇 在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多个数据库。我们通常只需借助开发平台中特有数据访问技术和框架(例如Spring、JDBC、ADO.NET),结合关系型数据库 阅读全文
posted @ 2017-10-27 11:09 crazyYong 阅读(189) 评论(0) 推荐(0) 编辑
摘要:前阵子从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额宝账户并没有增加1万,数据就会出现不一致状况了。 上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后,除了在订单表插入一条记 阅读全文
posted @ 2017-10-27 11:07 crazyYong 阅读(176) 评论(0) 推荐(0) 编辑
摘要:1、使用watch,采用乐观锁 2、不使用悲观锁,因为等待时间非常长,响应慢 3、不使用队列,因为并发量会让队列内存瞬间升高 测试代码: 阅读全文
posted @ 2017-10-27 10:56 crazyYong 阅读(300) 评论(0) 推荐(0) 编辑
摘要:redis事务中的WATCH命令和基于CAS的乐观锁 在Redis的事务中,WATCH命令可用于提供CAS(check-and-set)功能。假设我们通过WATCH命令在事务执行之前监控了多个Keys,倘若在WATCH之后有任何Key的值发生了变化,EXEC命令执行的事务都将被放弃,同时返回Null 阅读全文
posted @ 2017-10-27 10:55 crazyYong 阅读(1250) 评论(0) 推荐(0) 编辑
摘要:摘要:电商的秒杀和抢购,从技术的角度来说,会对Web系统产生巨大的考验。本期《问底》,徐汉彬将带大家关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因。 【导读】徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在 阅读全文
posted @ 2017-10-27 10:54 crazyYong 阅读(200) 评论(0) 推荐(0) 编辑
摘要:最初的理解 (也可以每个nginx都挂在上所有的应用服务器) nginx大家都在用,估计也很熟悉了,在做负载均衡时很好用,安装简单、配置简单、相关材料也特别多。 lvs是国内的章文嵩博士的大作,比nginx被广泛接受还要早7年,并且已经被红帽作为了系统内置软件,可谓很牛了。lvs相对于nginx来说 阅读全文
posted @ 2017-10-27 10:51 crazyYong 阅读(2878) 评论(1) 推荐(1) 编辑
摘要:“七层”是OSI参考模型,即物理层 、 数据链路层 、 网络层、传输层、 会话层 、表示层、应用层 ; “四层”是TCP/IP参考模型,即物理链路层、 网络层、传输层、应用层。 虽说有四层和七层之说,但是其实一样的,TCP/IP中的物理链路层对应OSI中的物理层和数据链路层 ,网络层对应网络层,传输 阅读全文
posted @ 2017-10-27 10:48 crazyYong 阅读(230) 评论(0) 推荐(0) 编辑
摘要:拓扑如下所示 # 节点分布情况 LVS-dr-master eth0: 192.168.146.141 LVS-dr-slave eth0: 192.168.146.142 nginx1: eth0: 192.168.146.139 nginx2: eth0: 192.168.146.140 tom 阅读全文
posted @ 2017-10-27 10:46 crazyYong 阅读(297) 评论(0) 推荐(0) 编辑
摘要:通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短。下面来以keepalived结合tomcat来实现一个web服务器的双机热备。keepalived的工作原理是VRRP(Virtual R 阅读全文
posted @ 2017-10-27 10:44 crazyYong 阅读(403) 评论(0) 推荐(0) 编辑
摘要:负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可以实现故障转移和高可用环境,避免单点故障,保证网站健康持续运行。关于负载均衡介绍,可以参考:linux负载均衡总结性说明(四层负载/七层负载) 由于业务扩展,网站的访问量不断加大,负载越来越高。现需要在we 阅读全文
posted @ 2017-10-27 10:43 crazyYong 阅读(197) 评论(0) 推荐(0) 编辑
摘要:OSI七层模式简单通俗理解 这个模型学了好多次,总是记不住。今天又看了一遍,发现用历史推演的角度去看问题会更有逻辑,更好记。本文不一定严谨,可能有错漏,主要是抛砖引玉,帮助记性不好的人。总体来说,OSI模型是从底层往上层发展出来的。 这个模型推出的最开始,是是因为美国人有两台机器之间进行通信的需求。 阅读全文
posted @ 2017-10-27 10:41 crazyYong 阅读(439) 评论(0) 推荐(0) 编辑
摘要:TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。 OSI和TCP/IP是很基础但又非常重要的网络 阅读全文
posted @ 2017-10-27 10:40 crazyYong 阅读(303) 评论(0) 推荐(0) 编辑
摘要:在常规运维工作中,经常会运用到负载均衡服务。负载均衡分为四层负载和七层负载,那么这两者之间有什么不同? 废话不多说,详解如下: 一,什么是负载均衡 1)负载均衡(Load Balance)建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能 阅读全文
posted @ 2017-10-27 10:37 crazyYong 阅读(503) 评论(0) 推荐(0) 编辑
摘要:1.虚拟IP是什么? 要是单讲解虚拟 IP,理解起来很困难,所以干脆把 动态 IP 、固定 IP 、实体 IP 与虚拟 IP都讲解一下,加深理解和知识扩展 实体 IP:在网络的世界里,为了要辨识每一部计算机的位置,因此有了计算机 IP 位址的定义。一个 IP 就好似一个门牌!例如,你要去微软的网站的 阅读全文
posted @ 2017-10-27 10:32 crazyYong 阅读(10182) 评论(1) 推荐(1) 编辑
摘要:http://atong.blog.51cto.com/2393905/1347895 阅读全文
posted @ 2017-10-27 10:20 crazyYong 阅读(385) 评论(0) 推荐(0) 编辑
摘要:LVS官方网站:http://www.linuxvirtualserver.org/zh/lvs1.html 阅读全文
posted @ 2017-10-27 10:16 crazyYong 阅读(440) 评论(0) 推荐(0) 编辑