
中间件框架
开源中间件
loulanyue_
使我有洛阳二尺地,安能配六国将相
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
解决MQ中消息积压、重复、丢失等问题
消息丢失 消息发送出去,由于网络问题没有抵达服务器 1.做好容错方法(try-catch),发送消息可能会网络失败,失败后要有重试机制,可记录到系统数据库,采用定期扫描重发的方式。 2.做好日志记录,每个消息状态是否都被服务器收到都应该被记录 3.做好定期重发,如果消息没有发送成功,定期去数据库扫描未成功的消息进行重发 消息抵达Broker,Broker要将消息写入磁盘才算成功,此时Broker尚未持久化完成,宕机。 publisher必须加入确认回调机制,确认成功的消息,修改数据库消息状态 自从ACK状态原创 2020-06-14 23:51:33 · 2259 阅读 · 0 评论 -
简述RPC框架的原理
RPC的框架,首先加入有一个服务端,把这个接口暴露、发布出去,需要在服务端启动的时候,把这个接口发布到我的一个注册中心里面,而客户端就是那个consumer,在启动的时候,去注册中心里面找发布的一个接口,注入到consumer的服务里面,这样的话就相当于创建了一个start的代理对象,它把服务之间的通信封装成了一个对象的调用,但是底下设计到了比如说网络通信,还有一个协议的转换,netty+序列号的过程 ...原创 2020-06-11 23:47:59 · 244 阅读 · 0 评论 -
如何通过阿里开源中间件seata的@GlobalTransactional实现分布式事务
一、seata是什么 2019年1月蚂蚁金服和阿里巴巴共同开源的分布式事务解决方案,Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务 Simple Extensible Autonomous Transaction Architecture,简单可扩展自治事务框架 官网:http://seata.io/zh-cn/ 二、seata有什么用 分布式事务处理过程由1ID+3组件组成 Transaction ID(XID) 全局唯一的事务id Transacti原创 2020-05-25 22:57:05 · 6143 阅读 · 0 评论 -
讲一讲Springboot的启动流程
Springboot启动流程主要分为两个部分: 第一部分进行SpringBootApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器 第二部分实现了SpringApplication.run() 方法,主要调用了spring容器启动方法扫描配置,加载bean到spring容器中,包括启动流程的监听模块、加载配置环境模块、及核心的创建上下文环境模块,自动注入等功能 一、S...原创 2020-02-18 23:18:37 · 1341 阅读 · 1 评论 -
SpringBoot实现图片上传
图片上传: NewsController @Controller @RequestParam("file")MultipartFile file file.getOriginalFilename().lastIndexOf("."); String fileName = UUID.randomUUID().toString().replaaceAll("-","")+"."+fileExt; ...原创 2019-05-01 20:15:04 · 2673 阅读 · 0 评论 -
深入浅出中间件之Apache Dubbo
深入浅出RPC框架dubbo原创 2019-04-26 22:04:24 · 3651 阅读 · 0 评论 -
深入理解Tomcat容器的结构
一.Tomcat 总体结构 1.Server(服务器)是Tomcat构成的顶级构成元素,所有一切均包含在Server中,Server的实现类StandardServer可以包含一个到多个Services。 2.次顶级元素Service的实现类为StandardService调用了容器(Container)接口,其实是调用了Servlet Engine(引擎),而且StandardServic...原创 2019-07-10 20:47:41 · 360 阅读 · 0 评论 -
消息中间件的特点:异步解耦消峰
一、消息模型 点对点 消息生产者向消息队列中发送了一个消息之后,只能被一个消费者消费一次。 发布/订阅 消息生产者向频道发送一个消息之后,多个消费者可以从该频道订阅到这条消息并消费。 发布与订阅模式和观察者模式有以下不同: 观察者模式中,观察者和主题都知道对方的存在;而在发布与订阅模式中,生产者与消费者不知道对方的存在,它们之间通过频道进行通信。 观察者模式是同步的,当事件触发时,主题会调用观察...原创 2019-09-23 18:43:36 · 765 阅读 · 0 评论 -
用zookeeper实现分布式锁,配合模板模式和CountDownLatch
一、什么是分布式锁 分布式锁是控制分布式系统之间同步访问共享资源的一种方式,在高并发的多台主机之间,往往需要互斥来防止彼此干扰来保证一致性,在这种情况下,便需要使用到分布式锁, 二、常见分布式锁的实现方式 1. MySQL数据库的乐观锁 2. redis redission 3. zookeeper 添加临时节点,用完后再退出 三、分布式锁的实现 3.1 引入zkclient依赖 <...原创 2020-03-04 23:44:41 · 766 阅读 · 2 评论 -
消息中间件中RocketMQ与Kafka的存储区别
存储区别原创 2019-04-20 21:32:32 · 4519 阅读 · 0 评论