当前位置: 首页 > news >正文

外贸建站主机河南省人事考试网

外贸建站主机,河南省人事考试网,提高网站收录,正邦设计怎么样#Dubbo# 文章内容 Dubbo服务导出基本原理分析Dubbo服务注册流程源码分析Dubbo服务暴露流程源码分析服务导出的入口方法为ServiceBean.export(),此方法会调用ServiceConfig.export()方法,进行真正的服务导出。 1. 服务导出大概原理 服务导出的入口方法为ServiceBean.export…

#Dubbo#

文章内容

  1. Dubbo服务导出基本原理分析
  2. Dubbo服务注册流程源码分析
  3. Dubbo服务暴露流程源码分析

服务导出的入口方法为ServiceBean.export(),此方法会调用ServiceConfig.export()方法,进行真正的服务导出。

1. 服务导出大概原理

服务导出的入口方法为ServiceBean.export(),此方法会调用ServiceConfig.export()方法,进行真正的服务导出。

服务导出的入口为ServiceBean中的export()方法,当Spring启动完之后,通过接收Spring的ContextRefreshedEvent事件来触发export()方法的执行。

一个ServiceBean对象就表示一个Dubbo服务,ServiceBean对象中的参数就表示服务的参数,比如timeout,该对象的参数值来至@Service注解中所定义的。

服务导出主要得做两件事情:

  1. 根据服务的参数信息,启动对应的网络服务器(netty、tomcat、jetty等),用来接收网络请求
  2. 将服务的信息注册到注册中心

但是在做这两件事情之前得先把服务的参数确定好,因为一个Dubbo服务的参数,除开可以在@Service注解中去配置,还会继承Dubbo服务所属应用(Application)上的配置,还可以在配置中心或JVM环境变量中去配置某个服务的参数,所以首先要做的是确定好当前服务最终的(优先级最高)的参数值。

确定好服务参数之后,就根据所配置的协议启动对应的网络服务器。在启动网络服务器时,并且在网络服务器接收请求的过程中,都可以从服务参数中获取信息,比如最大连接数,线程数,socket超时时间等等。

启动完网络服务器之后,就将服务信息注册到注册中心。同时还有向注册中心注册监听器,监听Dubbo的中的动态配置信息变更。

服务概念的演化

  1. DemoService接口表示一个服务,此时的服务表示服务定义
  2. DemoServiceImpl表示DemoService服务的具体实现,此时的服务表示服务的具体实现
  3. DemoService+group+version表示一个服务,此时的服务增加了分组和版本概念
  4. http://192.168.1.112:80/com.tuling.DemoService表示一个服务,此时的服务增加了机器IP和Port,表示远程机器可以访问这个URL来使用com.tuling.DemoService这个服务
  5. http://192.168.1.112:80/com.tuling.DemoService?timeout=3000&version=1.0.1&application=dubbo-demo-provider-application表示一个服务,此时的服务是拥有参数的,比如超时时间、版本号、所属应用

在dubbo中就是用的最后一种方式来表示服务的。

2. 服务导出思路

服务导出要做的几件事情:

  1. 确定服务的参数
  2. 确定服务支持的协议
  3. 构造服务最终的URL
  4. 将服务URL注册到注册中心去
  5. 根据服务支持的不同协议,启动不同的Server,用来接收和处理请求
  6. 因为Dubbo支持动态配置服务参数,所以服务导出时还需要绑定一个监听器Listener来监听服务的参数是否有修改,如果发现有修改,则需要重新进行导出

2.1 确定服务的参数

在执行ServiceConfig.export()时,此时ServiceConfig对象就代表一个服务,我们已经知道了这个服务的名字(就是接口的名字),并且此时这个服务可能已经有一些参数了,就是@Service注解上所定义的参数

但是在Dubbo中,除开可以在@Service注解中给服务配置参数,还有很多地方也可以给服务配置参数,比如:

  1. dubbo.properties文件,你可以建立这个文件,dubbo会去读取这个文件的内容作为服务的参数,Dubob的源码中叫做PropertiesConfiguration
  2. 配置中心,dubbo在2.7版本后就支持了分布式配置中心,你可以在Dubbo-Admin中去操作配置中心,分布式配置中心就相当于一个远程的dubbo.properties文件,你可以在Dubbo-Admin中去修改这个dubbo.properties文件,当然配置中心支持按应用进行配置,也可以按全局进行配置两种,在Dubbo的源码中AppExternalConfiguration表示应用配置,ExternalConfiguration表示全局配置。
  3. 系统环境变量,你可以在启动应用程序时,通过-D的方式来指定参数,在Dubbo的源码中叫SystemConfiguration
  4. 再加上通过@Service注解所配置的参数,在Dubbo的源码中叫AbstractConfig

服务的参数可以从这四个位置来,这四个位置上如果配了同一个参数的

http://www.yayakq.cn/news/190219/

相关文章:

  • 网站虚拟主持人十八未成年禁用免费app
  • 北京做网站公司推荐湖北省建设信息网
  • 本地网站建设软件义乌百度广告公司
  • 网站页面风格分类山东城乡建设部网站首页
  • 个人网站建设模板望野思想感情
  • 创建个人网站教案做网站去什么公司
  • 模板搭建网站备案的博客网站可以做别的吗
  • 湛江网站建设方案咨询怎么超链接公众号
  • 全屏的翻页网站这么做郑州网站优化推广方案
  • 网站建设费用贵不贵长春网页制作
  • 微博内网站怎么做的wordpress影视自采集模板
  • 空调网站模板网站终端制作
  • 网站如何收费长春大型互联网公司
  • 资源下载站 wordpress网站用不用备案
  • 红河做网站的公司瓯海住房与城乡建设局网站
  • 网站购买域名吗网页制作基础教程胡崧免费下载
  • 曲阳网站建设推广昆明网站建设服务
  • 做毕业设计的网站设计昆山做网站费用
  • 模板网站的坏处罗岗网站建设公司
  • 湘潭网站建设公司有哪些seo关键词推广案例
  • 网站开发毕设文献天元建设集团招聘官网
  • 潍坊网站排名推广seo全网图文推广
  • 摄影网站设计与制作网站建设与营销社团
  • 石家庄网站关键词推广如何建立一个网站的快捷方式
  • 张家港网站制作用asp做网站怎么美观
  • 建设部网站业绩如何录入抚顺市城市建设档案馆网站
  • 企业网站建设一条龙服务内容公司域名注册网站哪个好
  • 安徽建站平台成都专业做网站的公司
  • 公司做网站需要注意些什么问题市场代理招商信息
  • 进行网站开发前 需要干什么深圳网站导航