最近准备学习Hadoop RFC的模块架构学习,但是这个模块用到了比较多的java中的比较新颖的知识,比如RMI,和动态代理的了,以及还有在jdk1.4中新添加的额NIO的知识。所以决定先花一点时间,复习一下前2个模块的知识。这样对于Hadoop的RPC通信会比较了解。java RMI和Proxy动态代理我不会高谈阔论,我主要简单的举出两个例子,分析他的调用步骤,,再结合一下他的源码,达到理解,会...
分类:
编程语言 时间:
2014-12-03 12:36:25
阅读次数:
369
第一部分:什么是RPC RPC(Remote Procedure Call Protocol)–远程过程协议调用。通过RPC我们可以从网络上的计算机请求服务,而不需要了解底层网络协议。Hadoop底层的交互都是通过rpc进行的。例如:datanode和namenode、tasktracker和...
分类:
其他好文 时间:
2014-12-03 12:03:43
阅读次数:
204
在几个月前改造dubbo时,netty4已经稳定很久了,一时手痒,按照netty3-rpc的源码克隆了一套netty4,在修正了大量的包、类型不同之后,基本保持了netty3的风格,并发量小或者数据包很小时,一切都很ok, 在进行大并...
分类:
Web程序 时间:
2014-12-03 00:34:20
阅读次数:
2437
http://zijan.iteye.com/blog/2041894这个项目最早(2008年)是用于一个网络游戏的Cache Server,以及一个电子商务的Web Session服务。后来不断增加新的功能,除了Java还支持C#,到现在已经可以用它来开发网络游戏的服务器。等过些日子我还会开源网络...
分类:
其他好文 时间:
2014-12-03 00:14:34
阅读次数:
160
服务注册与发现的中心,服务的提供者将服务发布到注册中心,服务的使用着到注册中引用服务。
Dubbo的注册中心提供了多种实现,其实现是基于dubbo的spi的扩展机制的,使用着可以直接实现自己的注册中心。
@SPI("dubbo")
public
interface RegistryFactory {
/**
* 连接注册中心.
* 连接注册中心需处理契约...
分类:
其他好文 时间:
2014-12-02 22:42:45
阅读次数:
271
服务注册与发现的中心,服务的提供者将服务发布到注册中心,服务的使用着到注册中引用服务。
Dubbo的注册中心提供了多种实现,其实现是基于dubbo的spi的扩展机制的,使用着可以直接实现自己的注册中心。
@SPI("dubbo")
public interface RegistryFactory {
/**
* 连接注册中心.
* 连接注册中心需处理契约...
分类:
其他好文 时间:
2014-12-02 22:42:24
阅读次数:
226
下面我们来看下开源dubbo推荐的业界成熟的zookeeper做为注册中心, zookeeper是hadoop的一个子项目是分布式系统的可靠协调者,他提供了配置维护,名字服务,分布式同步等服务。对于zookeeper的原理本文档不分析,后面有时间在做专题。
zookeeper注册中心
Zookeeper对数据存储类似linux的目录结构,下面给出官方文档对dubbo注册数据的存储示例...
分类:
其他好文 时间:
2014-12-02 22:40:30
阅读次数:
346
服务发布是服务提供方向注册中注册服务过程,以便服务消费者从注册中心查阅并调用服务。
服务发布方在spring的配置文件中配置如下:
上面是在spring中配置的服务的具体实现,是spring中的一个普通的bean
上面的配置spring容器在启动的过程中会解析自定义的schema元素dubbo转换成实际的配置实现ServiceBean ,并把服务暴露出去。
Servic...
分类:
其他好文 时间:
2014-12-01 22:39:43
阅读次数:
288
服务引用是服务的消费方向注册中心订阅服务提供方提供的服务地址后向服务提供方引用服务的过程。
服务的应用方在spring的配置实例如下:
dubbo:reference
id="demoService"
interface="com.alibaba.dubbo.demo. DemoService"/>
如上配置spring在容器启动的时候会解析自定义的schema元素转换成dubbo内部数...
分类:
其他好文 时间:
2014-12-01 22:37:30
阅读次数:
2332
Listener
ExporterListener:
dubbo在服务暴露(exporter)以及销毁暴露(unexporter)服务的过程中提供了回调窗口,供用户做业务处理。ProtocolListenerWrapper在暴露过程中构建了监听器链
public
class ProtocolListenerWrapper implements Protocol {
public...
分类:
其他好文 时间:
2014-12-01 22:35:52
阅读次数:
332