分布式
文章平均质量分 91
分布式系统
jeff.sheng
一只没有梦想的咸鱼
展开
-
CI/CD笔记:《持续交付:发布可靠软件的系统方法》
《持续部署:发布可靠软件的系统方法》,这是CI/CD领域一本非常经典的书籍,程序员值得一读,这里摘抄一些读书笔记分享给大家,大家可以去读一下,每个章节都相对独立,大家可以对感兴趣的章节加以阅读。原创 2021-06-20 21:48:49 · 1284 阅读 · 5 评论 -
源码分析:Jsonrpc标准+泛化调用及服务端DispatcherServlet流程
背景在rpc的服务化调用中,如果客户端使用多种调用姿势,比如jsonrpc的标准调用、jsonrpc的泛化调用同时存在,那么服务端必须能够同时对这两种典型的调用的方式进行兼容。好在jsonrpc和spring的web框架可以完美集成。比如服务端使用jsonrpc+springboot进行集成。这里解释一下什么是jsonrpc的泛化调用?一句话,就是对jsonrpc的传输协议进行改造并进行http调用,让服务端以传统webController的方式接收请求。jsonrpc的标准调用是什么?可以参看下文档原创 2020-11-12 11:48:26 · 741 阅读 · 4 评论 -
分布式锁实现的基本分析
注:本文参考http://blog.csdn.net/desilting/article/details/41280869整理。在多线程或多进程环境中,解决互斥性问题,即资源抢占的基本方式为:对共享资源的操作前后(进入退出临界区)加解锁,保证不同线程或进程可以互斥有序的操作资源。如ReentrantLock和synchronized。那么在分布式环境中,为了保证不同JVM不同主机间不会出...原创 2017-08-05 19:00:44 · 371 阅读 · 0 评论 -
本地事务ACID特性
本地事务的概念 所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。 我们站在系统架构的角度,说一说什么是本地事务? 本地事务:基于单个服务单一数据库资源访问的事务,被称为本地事务(Local Transaction) 例如,银行转帐工作...原创 2017-08-04 23:56:26 · 492 阅读 · 0 评论 -
LVS负载均衡环境搭建
LVS+Keepalived构建拓扑图准备工作因为搭建了两套环境,所以括号中的是我另一个的环境,紫色标识RIP: 10.1.31.161+10.1.31.163 (home:192.168.1.103+192.168.1.104)表示realip对应的真实服务器,即http服务器是apache公司的服务器,linux系统自带可以直接使用,方便快捷。VIP...原创 2018-03-07 17:57:23 · 848 阅读 · 0 评论 -
阿里EDAS(HSF)本地环境搭建
搭建的步骤其实阿里官方文档已经有提供:https://help.aliyun.com/document_detail/90754.html?spm=a2c4g.11186623.6.673.45fbb8e76esRc2这里我们说明的是在搭建开发环境的时候遇到的问题。问题1:导入demo后启动的时候遇到找不到spring监听器的错误。原因:原来我是直接导入存在的Maven工程:...原创 2018-11-23 10:18:20 · 9980 阅读 · 0 评论 -
阿里edas应用发布傻瓜式教程
1 导入ECS实例注意当前选择的命名空间一定要跟购买的ECS实例在同一个区域,否则列表中为空无法显示出来 2 创建ECS集群并添加集群主机转化过程大概需要5分钟之内完成3 添加EDAS应用4 选择应用实例列表(可多选)并确认是否立即部署5 选择部署方式并部署以上传war为例,下载样例war包 记得选择edas应用环境JRE版本及应...原创 2018-12-11 13:18:36 · 1381 阅读 · 1 评论 -
redis设计秒杀活动图解
最近找时间浏览了网上的一些文章,结合自己的思考,觉得需要出一个秒杀活动的技术方案。大家可以参考,也可以指正,这里都表示热烈欢迎!技术只有相互探讨才能碰撞出智慧的火花,问题也就随之清晰明朗。闲话不多扯了,先上一副流程图,描述下大概秒杀流程。场景:公司周年之际,准备答谢客户,于是想策划一起秒杀活动,一共有100件商品,且要求每个用户只能抢一件商品,并且用户抢到后如果30分钟内没有付款,则取消订单,释...原创 2019-01-26 12:44:43 · 2159 阅读 · 5 评论 -
基于单实例和多实例的redis实现分布式锁
需求背景:在常见的多机负载均衡架构中,如果每台实例中都需要对一份共享资源进行处理,常常会有能够保证同步读写的需求,这样共享资源就能够协同处理了,保证了高并发环境下共享数据的原子性和一致性。实现:本例子中使用redis来实现分布式锁来解决这个问题。参考官方文档:https://redis.io/topics/distlock1 Safety property: Mutual exclusio...原创 2019-02-25 12:29:27 · 733 阅读 · 0 评论