peter peter
4年前
Go:分布式锁实现原理与最佳实践
分布式锁应用场景很多应用场景是需要系统保证幂等性的(如api服务或消息消费者),并发情况下或消息重复很容易造成系统重入,那么分布式锁是保障幂等的一个重要手段。另一方面,很多抢单场景或者叫交易撮合场景,如dd司机抢单或唯一商品抢拍等都需要用一把“全局锁”来解决并发造成的问题。在防止并发情况下造成库存超卖的场景,也常用分布式锁来解决。实现
Stella981 Stella981
3年前
Clickhouse替代ES后,日志查询速度提升了38倍!
​作者介绍GavinZhu,携程软件技术专家,负责监控系统运维开发、ES系统运维及Clickhouse技术应用推广及运维工作。ElasticSearch是一种基于Lucene的分布式全文搜索引擎,携程用ES处理日志,目前服务器规模500,日均日志接入量大约200TB。随着日志量不断增加,一些问题逐渐暴露出来:一方面ES服务器越来越多,投入
Stella981 Stella981
3年前
Python远程方法调用 RPyC
rpyc(RemotePythonCall)为分布式计算环境提供了优良的基础平台。使用rpyc编写c/s结构程序,完全不用考虑老式的socket编程,现在只用编写简单的3、5行代码即可完成以前的数千行代码的功能。RemotePythonCall(RPyC)是一个Python的库用来实现RPC和分布式计算的工具。支持同步和异步操作、
Stella981 Stella981
3年前
Raft协议
在很多分布式系统场景下,并不需要解决拜占庭将军问题(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.868qkl.com%2Fjiaocheng%2Fmingci%2FByzantinefailures.html),也就是说,在这些分布式系统的实用场景下,其假设条件不需要考虑拜占
Wesley13 Wesley13
3年前
RPC的简单实现
RPC(RemoteProcedureCall)—远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC采用客户机/
Wesley13 Wesley13
3年前
2.Mysql集群
前言:Mycat:一个彻底开源的,面向企业应用开发的大数据库集群支持事务、ACID、可以替代MySQL的加强版数据库一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQLServer结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品
Stella981 Stella981
3年前
RSocket——Http协议的替代者
1\.简介RSocket是一种二进制的点对点通信协议,是一种新的网络通信第七层协议。旨在用于分布式应用程序中。从这个意义上讲,RSocket是HTTP等其他协议的替代方案。它是一种基于ReactiveStreams规范具有异步,背压的双向,多路复用,断线重连,基于消息等特性。它由Facebook,Netifi和Pivotal等工程师开发
Stella981 Stella981
3年前
Eureka与Zookeeper的区别
作为服务注册中心,Eureka比Zookeeper好在哪里著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。由于分区容错性P是在分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。因此Zookeeper保证的是CPEureka则
Wesley13 Wesley13
3年前
MAPREDUCER学习笔记
MAPREDUCE基本原理      一,概念理解  1,Mapreduce是一个分布式运算程序的编程架构,相对于HDFS来说就是客户端。其核心功能就是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并运行在一个hadoop集群上。  2,基本整体架构:MEAppMaster,MapTask,R
这个算法不一般,控制拥塞有一手!
数字时代下,远程办公、线上协同成为刚需,直播带货等业务模式盛行,数据流量爆炸式增长,低时延、高流畅的网络传输诉求给数据中心的处理能力带来了极大挑战。RDMA作为一种新型网络传输技术,可大幅提升网络传输实效,帮助网络IO密集的业务(比如分布式存储、分布式数据