`

Dubbo服务发布

阅读更多
1. dubbo发布服务

下载地址: https://github.com/apache/incubator-dubbo


dubbo-dubbo-2.6.0\dubbo-demo\pom.xml
dubbo-dubbo-2.6.0\dubbo-demo\dubbo-demo-provider\pom.xml

new maven project -->
new simple maven project -->
Group Id:com.andrew
Artifact Id: dubbo-demo-provider
Version: 0.0.1-SNAPSHOT
Packaging:War
jdk版本1.8

src/main/java/com/andrew/service/DemoProviderService.java

package com.andrew.service;
public interface DemoProviderService {
    public String sayHello(String name);
}

src/main/java/com/andrew/service/impl/DemoProviderServiceImpl.java

package com.andrew.service.impl;
import com.andrew.service.DemoProviderService;
public class DemoProviderServiceImpl implements DemoProviderService {
    public String sayHello(String name) {
        return "服务001";
    }
}

src/main/resources/dubbo-demo-provider.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xmlns="http://www.springframework.org/schema/beans"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
       http://code.alibabatech.com/schema/dubbo 
       http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
    <!-- 提供方应用名称,用于计算依赖关系 -->
    <dubbo:application name="demo-provider" />
    <!-- 使用zookeeper注册中心暴露服务地址 -->
    <dubbo:registry address="zookeeper://127.0.0.1:2181"/>
    <!-- 使用dubbo协议,在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880"/>
    <!-- service实现类作为本地的一个bean -->
    <bean id="demoProviderService" class="com.andrew.service.impl.DemoProviderServiceImpl"/>   
    <!-- 声明需要暴露的服务接口 -->
    <dubbo:service interface="com.andrew.service.DemoProviderService" ref="demoProviderService"/>
</beans>

com/andrew/test/ProviderTest.java

package com.andrew.test;
import java.io.IOException;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class ProviderTest {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"dubbo-demo-provider.xml"});
        context.start();
        System.out.println("服务提供者注册成功(端口:20880)");
        try {
            System.in.read();
        } catch (IOException e) {
            e.printStackTrace();
        }
        context.close();
    }
}

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.andrew</groupId>
  <artifactId>dubbo-demo-provider</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
      <dependencies>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>dubbo</artifactId>
            <version>2.6.0</version>
        </dependency>
        <dependency>
            <groupId>com.101tec</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.10</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>4.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.46</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.4</version>
        </dependency>
        <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-all</artifactId>
            <version>4.0.35.Final</version>
        </dependency>
    </dependencies>
</project>

启动zkServer.cmd
执行ProviderTest.java
服务提供者注册成功(端口:20880)



  • 大小: 11.6 KB
分享到:
评论

相关推荐

    03-05-12-ApacheDubbo服务发布源码分析1

    通过以上分析,我们可以看到 Dubbo 如何通过扩展 Spring 的解析机制来实现服务发布,包括配置解析、服务注册、网络通信的准备以及事件机制的使用。这种深入的理解对于优化服务架构、排查问题以及进行性能调优都是至...

    dubbo的.xsd文件分享

    例如,`&lt;dubbo:service&gt;`标签用于定义服务提供者,其中包含了如interface(服务接口)、version(服务版本)、group(服务组)、ref(服务引用)等一系列属性,这些都是Dubbo服务发布的关键参数。 接着,`dubbo.xsd...

    dubbo的服务发布与服务引用

    在分布式系统中,Dubbo作为一个高性能、轻量级的Java RPC框架,它的核心功能包括服务发布和服务引用。本文将深入源码,详细解析这两个关键过程,帮助你理解Dubbo是如何在服务提供者和服务消费者之间建立通信桥梁的。...

    dubbo server+client 完整代码

    1. **Dubbo服务发布**:`dubboserver`目录下的代码展示了如何创建一个Dubbo服务提供者。首先,你需要定义一个接口,然后实现该接口并使用`@Service`注解标记实现类。接着,在Spring配置文件中配置Dubbo服务暴露的...

    Dubbo(四)------Dubbo入门示例(基于属性配置)

    接着,让我们来看一下如何进行基于属性配置的Dubbo服务发布。在服务提供者端,我们需要在Spring配置文件中定义服务接口、实现类以及服务暴露的相关属性。例如: ```xml &lt;dubbo:service interface=...

    dubbo 示例程序

    - **Provider**: 包含服务提供方的代码,定义了服务接口和其实现,配置了Dubbo服务发布相关的元数据。 - **Consumer**: 包含服务消费方的代码,引用了服务接口,配置了服务调用的相关元数据,用于发起远程调用。 -...

    基于dubbo实现的服务发布与订阅demo

    【标题】:“基于dubbo实现的服务发布与订阅demo” 在分布式系统中,服务的发布与订阅是关键组件,它使得各个服务之间能够有效地通信。Dubbo是一个高性能、轻量级的Java服务框架,由阿里巴巴开源,它提供了服务注册...

    dubbo服务提供demo

    Dubbo服务提供方示例详解 在分布式系统中,Dubbo作为一个高性能、轻量级的服务治理框架,被广泛应用于服务的发布与消费。本篇将深入解析如何创建一个基于Dubbo的服务提供方(Provider)的Demo,以帮助理解其核心...

    dubbo 服务提供者

    1. Dubbo服务提供者是Dubbo框架中发布服务的组件,负责处理远程调用。 2. 部署Dubbo服务提供者前,必须先运行Zookeeper,因为它在服务注册和发现过程中起到关键作用。 3. Zookeeper的使用需要在服务提供者的配置中...

    dubbo下的代码整合环境搭建及运行

    定义Dubbo服务发布接口。 - **运行fams-core** 在本地开发环境中可以直接运行。如果部署到生产环境,则需要将项目打包成JAR文件并运行。 3. **服务消费者(Consumer)** - **引入依赖JAR** 在`fams-web`...

    修改后的dubbo服务提供者实例

    1. **Dubbo服务提供者**: 在Dubbo架构中,服务提供者是发布服务的一方,它将服务注册到服务注册中心,使得服务消费者可以通过注册中心找到并调用这些服务。这里的“修改后”可能意味着对原始的Dubbo服务提供者配置...

    查看java dubbo服务的dubbo-admin

    Dubbo-admin是Dubbo框架的一个重要组成部分,它是一个管理控制台,用于监控和管理Dubbo服务,帮助开发者查看和管理发布在Dubbo网络中的服务。 首先,让我们深入了解一下**Dubbo-admin的功能**: 1. **服务目录**:...

    spring集成Dubbo服务demo

    Spring集成Dubbo服务是一个常见的企业级应用架构设计,它允许我们构建分布式的微服务系统。在本示例中,我们将探讨如何将Dubbo服务与Spring框架整合,创建一个包括服务提供者(Provider)和服务消费者(Consumer)的...

    dubbo学习视频

    #### 四、Dubbo服务发布流程 1. **服务提供者启动**:在服务提供者应用中定义好要发布的服务接口及实现类。 2. **服务注册**:服务提供者向注册中心注册自己提供的服务。 3. **服务订阅**:服务消费者向注册中心...

    dubbo资源 dubbo-admin dubbo demo

    在这个资源包中,我们关注的焦点是Dubbo-admin,它是Dubbo服务治理的核心工具,以及一个基础的Dubbo示例项目。 【描述】提到的" dubbo资源"暗示了这个压缩包可能包含了Dubbo的源码、配置文件、文档、或者是与之相关...

    Dubbo服务提供者以及消费者实例

    它提供了一套完整的服务发布与消费机制,使得开发者可以方便地实现微服务架构。在这个实例中,我们将深入理解Dubbo服务提供者和服务消费者的运作模式。 首先,我们来探讨服务提供者(Provider)。在Dubbo中,服务...

    Dubbo服务开发ppt

    Dubbo服务开发PPT Dubbo是一种高性能、基于Java的开源RPC框架,致力于提供高性能、简单易用、可靠的分布式服务调用方案。Dubbo提供了三个关键能力:服务注册、服务调用、服务监控。 1. 项目框架: Dubbo框架...

    Spring整合dubbo服务调用(Maven项目)

    【Spring整合Dubbo服务调用(Maven项目)】 在现代企业级应用开发中,Spring框架以其强大的功能和灵活的扩展性被广泛应用,而Dubbo作为阿里巴巴开源的高性能服务框架,常用于实现微服务间的通信。本项目是关于如何在...

    Dubbo整合maven+spring+springmvc+mybatis

    1. **Dubbo整合**:如何将Dubbo服务发布和注册到Zookeeper。 2. **Spring注解**:使用`@Service`和`@Reference`注解管理服务。 3. **SpringMVC**:配置和使用SpringMVC处理Web请求。 4. **MyBatis集成**:配置...

    Dubbo分布式服务管理

    三、Dubbo服务的生命周期 1. 创建服务提供者:配置服务接口、实现类、版本等信息,然后启动服务。 2. 注册服务:服务提供者启动后,会将服务信息注册到注册中心。 3. 发现服务:服务消费者从注册中心获取服务提供...

Global site tag (gtag.js) - Google Analytics