随笔分类 -  中间件

摘要:dubbo的远程调用过程是怎么样的? dubbo远程过程调用经过了那些处理? 发起远程调用的时候究竟传了什么数据给provider? 要解决这些问题,欢迎一起探讨走进dubbo源码栏目。 在service reference中说了consumer端发起调用的时候使用的是远程服务的本地代理,发起调用的 阅读全文
posted @ 2018-01-21 23:01 lacker 阅读(1080) 评论(0) 推荐(0)
摘要:service reference 在编写好服务之后,dubbo会将服务export出去,这个时候就可以编写consumer来调用这个服务了。dubbo作为一个rpc框架,使用者使用远程服务和使用本地服务是类似的,不用关心远程服务在哪里,怎么引用的,因为dubbo包含了自动发现和引用服务的功能。 d 阅读全文
posted @ 2018-01-09 22:20 lacker 阅读(2665) 评论(0) 推荐(1)
摘要:在应用编写好服务并进行之后,dubbo负责将服务export出去,dubbo export服务的时候主要做了以下几件事: 将服务export到本地(根据scope的配置) 创建Invoker(启动本地NettyServer,监听指定端口,等待请求) 注册provider的信息到registry,供c 阅读全文
posted @ 2018-01-07 17:13 lacker 阅读(4061) 评论(0) 推荐(2)
摘要:Java中的SPI SPI,Service Provider Interface,java中提供的一种使程序可扩展的方式,系统定义好接口规范,供其他服务提供方实现,服务提供方将自己jar包META INF/services下新建一个以接口全名称定义的文件,里面内容写上自己服务的实现的类名,每一行代表 阅读全文
posted @ 2017-12-22 09:28 lacker 阅读(1006) 评论(0) 推荐(0)
摘要:dubbo为了和spring更好的集成,提供了一些xml配置标签,也就是自定义标签 spring自定义标签 spring自定义标签的方式如下: 1. 设计配置属性和JavaBean 2. 编写xsd文件,校验xml属性和便于编辑器提示 3. 编写NamespaceHandler和BeanDefini 阅读全文
posted @ 2017-12-17 23:23 lacker 阅读(819) 评论(0) 推荐(0)
摘要:dubbo是一个RPC框架,应用方像使用本地service一样使用dubbo service。dubbo体系架构 上图中的角色: 最重要的是consumer、registry和provider consumer:服务调用者 provider:服务提供者 registry:供provider注册服务和 阅读全文
posted @ 2017-12-17 23:19 lacker 阅读(544) 评论(0) 推荐(0)
摘要:RocketMQ的主要特点以及实现方式 单机支持1万以上持久队列 所有数据单独存储到一个CommitLog,完全顺序写,随机读 在一个broker上一个DefaultMessageStore管理一个commitLog 顺序写:在commitLog.putMessage里面获取mapedFile之后进 阅读全文
posted @ 2017-01-18 23:01 lacker 阅读(2105) 评论(1) 推荐(0)
摘要:Consumer consumer pull message 订阅 在Consumer启动之前先将自己放到一个本地的集合中,再以后获取消费者的时候会用到,同时会将自己订阅的信息告诉broker 接收消息 consumer启动的时候会启动两个service: RebalanceService:主要实现 阅读全文
posted @ 2017-01-17 23:28 lacker 阅读(8333) 评论(4) 推荐(1)
摘要:Producer 消息发送 producer start producer启动过程如下图 消息发送流程 消息发送过程:先由producer封装通过netty发送到broker,然后由broker进行保存,过程如下 ============================= producer发送消息 阅读全文
posted @ 2017-01-16 21:34 lacker 阅读(17474) 评论(2) 推荐(0)
摘要:NameServer 作用:Producer和Consumer获取Broker的地址 目的:解耦Broker和Producer、Consumer 原理:使用netty作为通信工具,监听指定端口,如果是broker注册,将broker的信息保存在内存中并保存到文件中,producer和consumer 阅读全文
posted @ 2017-01-15 17:04 lacker 阅读(3702) 评论(0) 推荐(0)
摘要:RocketMQ quikstart 获取源码 编译打包 这是一个maven工程,官方给出了编译打包的脚本install.sh,主要就是 生成idea工程文件 生成工程文件就可以使用IDE直接打开 设置环境变量 上面创建了devenv软连接 cd devenv 将devenv目录作为ROCKETMQ 阅读全文
posted @ 2017-01-15 17:00 lacker 阅读(5382) 评论(0) 推荐(0)