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

崇明建设镇网站廊坊网站排名优化公司哪家好

崇明建设镇网站,廊坊网站排名优化公司哪家好,深圳戈麦斯网站开发,有哪些网站可以做外贸批发目录 1 框架介绍1.1 概述1.2 运行架构1.3 整体设计 2 环境搭建2.1 源码拉取2.2 源码结构2.3 环境导入2.4 测试2.5 管理控制台 1 框架介绍 1.1 概述 Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能&#…

目录

  • 1 框架介绍
    • 1.1 概述
    • 1.2 运行架构
    • 1.3 整体设计
  • 2 环境搭建
    • 2.1 源码拉取
    • 2.2 源码结构
    • 2.3 环境导入
    • 2.4 测试
    • 2.5 管理控制台


1 框架介绍

在这里插入图片描述

1.1 概述

Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。

Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

1.2 运行架构

dubbo运行架构如下图示

在这里插入图片描述

节点角色说明

节点角色说明
Provider暴露服务的服务提供方
Consumer调用远程服务的服务消费方
Registry服务注册与发现的注册中心
Monitor统计服务的调用次数和调用时间的监控中心
Container服务运行容器

调用关系说明

  1. 服务容器负责启动,加载,运行服务提供者。
  2. 服务提供者在启动时,向注册中心注册自己提供的服务。
  3. 服务消费者在启动时,向注册中心订阅自己所需的服务。
  4. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
  5. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
  6. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

关于dubbo 的特点分别有连通性、健壮性、伸缩性、以及向未来架构的升级性。特点的详细介绍也可以参考官方文档。

1.3 整体设计

在这里插入图片描述

图例说明:

  • 图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的接口。
  • 图中从下至上分为十层,各层均为单向依赖,右边的黑色箭头代表层之间的依赖关系,每一层都可以剥离上层被复用,其中,Service 和 Config 层为 API,其它各层均为 SPI。
  • 图中绿色小块的为扩展接口,蓝色小块为实现类,图中只显示用于关联各层的实现类。
  • 图中蓝色虚线为初始化过程,即启动时组装链,红色实线为方法调用过程,即运行时调时链,紫色三角箭头为继承,可以把子类看作父类的同一个节点,线上的文字为调用的方法。

各层说明:

  • config 配置层:对外配置接口,以 ServiceConfig, ReferenceConfig 为中心,可以直接初始化配置类,也可以通过 spring 解析配置生成配置类
  • proxy 服务代理层:服务接口透明代理,生成服务的客户端 Stub 和服务器端 Skeleton, 以 ServiceProxy 为中心,扩展接口为 ProxyFactory
  • registry 注册中心层:封装服务地址的注册与发现,以服务 URL 为中心,扩展接口为 RegistryFactory, Registry, RegistryService
  • cluster 路由层:封装多个提供者的路由及负载均衡,并桥接注册中心,以 Invoker 为中心,扩展接口为 Cluster, Directory, Router, LoadBalance
  • monitor 监控层:RPC 调用次数和调用时间监控,以 Statistics 为中心,扩展接口为 MonitorFactory, Monitor, MonitorService
  • protocol 远程调用层:封装 RPC 调用,以 Invocation, Result 为中心,扩展接口为 Protocol, Invoker, Exporter
  • exchange 信息交换层:封装请求响应模式,同步转异步,以 Request, Response 为中心,扩展接口为 Exchanger, ExchangeChannel, ExchangeClient, ExchangeServer
  • transport 网络传输层:抽象 mina 和 netty 为统一接口,以 Message 为中心,扩展接口为 Channel, Transporter, Client, Server, Codec
  • serialize 数据序列化层:可复用的一些工具,扩展接口为 Serialization, ObjectInput, ObjectOutput, ThreadPool

2 环境搭建

接下来逐步对dubbo各个模块的源码以及原理进行解析,目前dubbo框架已经交由Apache基金会进行孵化,被在github开源。

Dubbo 社区目前主力维护的有 2.6.x 和 2.7.x 两大版本,其中,

  • 2.6.x 主要以 bugfix 和少量 enhancements 为主,因此能完全保证稳定性
  • 2.7.x 作为社区的主要开发版本,得到持续更新并增加了大量新 feature 和优化,同时也带来了一些稳定性挑战

2.1 源码拉取

通过以下的这个命令签出最新的dubbo项目源码,并导入到IDEA中

git clone https://github.com/apache/dubbo.git dubbo

在这里插入图片描述

可以看到Dubbo被拆分成很多的Maven项目,在后续课程中会介绍左边每个模块的大致作用。

下载源码导入工程后,进行编译,并跳过测试,这个过程中可能会遇到以下问题

xxxxxxxxxx
[ERROR] Failed to execute goal org.xolstice.maven.plugins:protobuf-maven-plugin:0.5.1:compile (default) on project dubbo-serialization-protobuf: Missing:
[ERROR] ----------
[ERROR] 1) com.google.protobuf:protoc:exe:windows-x86_64:3.7.1
[ERROR] 
[ERROR]   Try downloading the file manually from the project website.
[ERROR] 
[ERROR]   Then, install it using the command: 
[ERROR]       mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.7.1 -Dclassifier=windows-x86_64 -Dpackaging=exe -Dfile=/path/to/file
[ERROR] 
[ERROR]   Alternatively, if you host your own repository you can deploy the file there: 
[ERROR]       mvn deploy:deploy-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.7.1 -Dclassifier=windows-x86_64 -Dpackaging=exe -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
[ERROR] 
[ERROR]   Path to dependency: 
[ERROR]     1) org.apache.dubbo:dubbo-serialization-protobuf:jar:2.7.8
[ERROR]     2) com.google.protobuf:protoc:exe:windows-x86_64:3.7.1
[ERROR] 
[ERROR] ----------
[ERROR] 1 required artifact is missing.
[ERROR] 
[ERROR] for artifact: 
[ERROR]   org.apache.dubbo:dubbo-serialization-protobuf:jar:2.7.8
[ERROR] 
[ERROR] from the specified remote repositories:
[ERROR]   apache.snapshots (https://repository.apache.org/snapshots, releases=false, snapshots=true),
[ERROR]   alimaven (http://maven.aliyun.com/nexus/content/groups/public/, releases=true, snapshots=false)

手动下载,按照提示的命令执行

xxxxxxxxxx
mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.7.1 -Dclassifier=windows-x86_64 -Dpackaging=exe -Dfile=C:\Users\22863\Desktop\test\protoc-3.7.1-windows-x86_64.exe

2.2 源码结构

通过如下图形可以大致的了解到,dubbo源码各个模块的相关作用:

在这里插入图片描述

模块说明:

  • dubbo-common 公共逻辑模块:包括 Util 类和通用模型。
  • dubbo-remoting 远程通讯模块:相当于 Dubbo 协议的实现,如果 RPC 用 RMI协议则不需要使用此包。
  • dubbo-rpc 远程调用模块:抽象各种协议,以及动态代理,只包含一对一的调用,不关心集群的管理。
  • dubbo-cluster 集群模块:将多个服务提供方伪装为一个提供方,包括:负载均衡, 容错,路由等,集群的地址列表可以是静态配置的,也可以是由注册中心下发。
  • dubbo-registry 注册中心模块:基于注册中心下发地址的集群方式,以及对各种注册中心的抽象。
  • dubbo-monitor 监控模块:统计服务调用次数,调用时间的,调用链跟踪的服务。
  • dubbo-config 配置模块:是 Dubbo 对外的 API,用户通过 Config 使用Dubbo,隐藏 Dubbo 所有细节。
  • dubbo-container 容器模块:是一个 Standlone 的容器,以简单的 Main 加载 Spring 启动,因为服务通常不需要 Tomcat/JBoss 等 Web 容器的特性,没必要用 Web 容器去加载服务。

2.3 环境导入

在本次课程中,不仅讲解dubbo源码还会涉及到相关的基础知识,为了方便学员快速理解并掌握各个内容,已经准备好了相关工程,只需导入到IDEA中即可。对于工程中代码的具体作用,在后续课程会依次讲解

2.4 测试

(1) 安装zookeeper

(2) 修改官网案例,配置zookeeper地址

(3) 启动服务提供者,启动服务消费者

2.5 管理控制台

  1. 下载管理控制台, GITHUB地址

  2. 进入源码目录, 进行打包编译

    xxxxxxxxxx
    
    mvn clean package -Dmaven.test.skip=true
    

    构建成功提示:

在这里插入图片描述

如果构建过程中出现nodejs安装包下载错误, 可以将安装包直接放置maven仓库内(资料中已提供安装包)。

  1. 启动后台管理服务
   xxxxxxxxxx
   java -jar dubbo-admin-0.2.0-SNAPSHOT.jar

在这里插入图片描述

  1. 管理后台

    地址: http://127.0.0.1:8080/

    默认账户名和密码都为root

在这里插入图片描述

进入管理后台, 可以看到所启动的服务端与消费端。


文章转载自:
http://astrospace.rywn.cn
http://buccaneering.rywn.cn
http://grenadier.rywn.cn
http://galloot.rywn.cn
http://hanoi.rywn.cn
http://huzzy.rywn.cn
http://freeheartedness.rywn.cn
http://sneeshing.rywn.cn
http://flatheaded.rywn.cn
http://transracial.rywn.cn
http://aquatic.rywn.cn
http://rimmon.rywn.cn
http://misline.rywn.cn
http://calamitous.rywn.cn
http://novelle.rywn.cn
http://nevus.rywn.cn
http://cenogenetic.rywn.cn
http://primulaceous.rywn.cn
http://sidetone.rywn.cn
http://lit.rywn.cn
http://printery.rywn.cn
http://rickrack.rywn.cn
http://cuprum.rywn.cn
http://clap.rywn.cn
http://sphere.rywn.cn
http://forficulate.rywn.cn
http://goon.rywn.cn
http://contrivance.rywn.cn
http://masorete.rywn.cn
http://reinforce.rywn.cn
http://tournure.rywn.cn
http://civvy.rywn.cn
http://cytokinin.rywn.cn
http://hurricoon.rywn.cn
http://bpc.rywn.cn
http://osmium.rywn.cn
http://hydrosulfuric.rywn.cn
http://hoagie.rywn.cn
http://remonstrator.rywn.cn
http://colatitude.rywn.cn
http://eddie.rywn.cn
http://libreville.rywn.cn
http://labourwallah.rywn.cn
http://beggarly.rywn.cn
http://aristocrat.rywn.cn
http://blackness.rywn.cn
http://filigreed.rywn.cn
http://triaxial.rywn.cn
http://gombroon.rywn.cn
http://lifespring.rywn.cn
http://conventicle.rywn.cn
http://catchpole.rywn.cn
http://tab.rywn.cn
http://skinny.rywn.cn
http://handedness.rywn.cn
http://somewhy.rywn.cn
http://minikin.rywn.cn
http://picromerite.rywn.cn
http://latinic.rywn.cn
http://atergo.rywn.cn
http://tapeman.rywn.cn
http://applewife.rywn.cn
http://batta.rywn.cn
http://unlicked.rywn.cn
http://conquer.rywn.cn
http://ccs.rywn.cn
http://lixiviate.rywn.cn
http://routinization.rywn.cn
http://regret.rywn.cn
http://dichroiscopic.rywn.cn
http://mechanotherapy.rywn.cn
http://vaccine.rywn.cn
http://excitative.rywn.cn
http://lineally.rywn.cn
http://transuranium.rywn.cn
http://conical.rywn.cn
http://cartagena.rywn.cn
http://gouda.rywn.cn
http://adjustive.rywn.cn
http://monofier.rywn.cn
http://carrolline.rywn.cn
http://bigness.rywn.cn
http://mallenders.rywn.cn
http://yeoman.rywn.cn
http://ajc.rywn.cn
http://enophthalmus.rywn.cn
http://simplex.rywn.cn
http://exuberance.rywn.cn
http://calendric.rywn.cn
http://piton.rywn.cn
http://andiron.rywn.cn
http://unparalleled.rywn.cn
http://mass.rywn.cn
http://hiddenite.rywn.cn
http://menstrua.rywn.cn
http://craniometrist.rywn.cn
http://enterostomy.rywn.cn
http://emendate.rywn.cn
http://pyrograph.rywn.cn
http://stramony.rywn.cn
http://www.15wanjia.com/news/65764.html

相关文章:

  • 农业电商平台有哪些国外seo
  • 利用花生壳做网站seo刷词
  • 竞价外包深圳seo论坛
  • 企业做网站的痛点有哪些快速收录工具
  • 江阴做网站公司详细描述如何进行搜索引擎的优化
  • 怎么自己建设网站惠州百度seo哪家好
  • wordpress+编辑器回车seo运营是什么
  • 长沙网站制作一般多少钱制作网页app
  • 哪个网站做淘宝客国内10大搜索引擎
  • 厦门做网站推广无货源电商怎么做
  • 滨州网站建设铭盛信息信息流优化师工作总结
  • 做电影网站能赚钱吗直播:英格兰vs法国
  • 做网站的风险分析优化疫情防控
  • 如何做网站编辑长春网站优化团队
  • 门户网站建设合同百度服务中心
  • 营销型网站平台建设百度西安
  • 开发网站的流程怎样做企业推广
  • 日本 男女做受网站免费网页模板网站
  • 找衣服款式的网站搜索引擎优化实训
  • 建e网室内设计网 模型百度怎么优化排名
  • 常见的跨境电商平台有哪些?河北seo网络优化培训
  • 手机网站开发升上去seo免费培训视频
  • 昆明百度智能建站亚马逊关键词工具哪个最准
  • 前端开发做移动端的网站seo和网络推广有什么区别
  • 世界上有php应用的网站流量平台
  • 光明乳业网站建设情况平台推广计划
  • 个人操作做网站排名什么文案容易上热门
  • 台州百度快照优化公司信息流广告优化师
  • 国内网站速度慢网络营销软件哪个好用
  • 短视频营销ppt湖南长沙seo教育