Bootstrap

Dubbo 实战 - 入门示例

继续之前的内容,我们来完成服务消费者的配置与实现。

4. 创建Dubbo-Consumer项目(续)

  • 步骤(续)
    3. 配置Dubbo,在resources/META-INF/spring/dubbo-consumer.xml中添加如下配置:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
           http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
    
        <!-- 配置应用信息 -->
        <dubbo:application name="dubbo-consumer"/>
        
        <!-- 配置注册中心 -->
        <dubbo:registry address="zookeeper://localhost:2181"/>
        
        <!-- 配置消费者超时等属性 -->
        <dubbo:consumer timeout="10000"/>
        
        <!-- 引用服务 -->
        <dubbo:reference id="greetingService" interface="com.example.dubbo.GreetingService"/>
    </beans>
    
    1. 编写一个简单的测试类来调用远程服务:
    import com.example.dubbo.GreetingService;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class ConsumerBootstrap {
        public static void main(String[] args) {
            ClassPathXmlApplicationContext context = 
                new ClassPathXmlApplicationContext("META-INF/spring/dubbo-consumer.xml");
            context.start();
            
            GreetingService greetingService = (GreetingService) context.getBean("greetingService");
            String message = greetingService.sayHello("World");
            System.out.println(message);
            
            context.close();
        }
    }
    

5. 启动与验证

  1. 启动Zookeeper:确保Zookeeper服务器正在运行,一般默认端口为2181。
  2. 启动服务提供者:在dubbo-provider项目中运行ProviderBootstrap类。
  3. 启动服务消费者:在dubbo-consumer项目中运行ConsumerBootstrap类。

预期结果

当服务消费者成功调用服务提供者时,控制台输出应为:

Hello, World!

总结

通过上述步骤,您已经完成了Dubbo的一个基本入门示例,包括服务接口定义、服务提供者和服务消费者的创建与配置。这个过程展示了如何使用Dubbo进行服务的发布与引用,以及如何通过注册中心进行服务发现。接下来,您可以尝试更复杂的功能,如服务分组、版本控制、负载均衡、服务降级等高级特性。

;