Dubbo Demo Running Successfully and Update Native Maven Repositories

140 篇文章 0 订阅
94 篇文章 0 订阅
package com.xiuye.service;

public interface DemoService {

	String hello(String str);

}


package com.xiuye.provider;

import java.text.SimpleDateFormat;
import java.util.Date;

import com.xiuye.service.DemoService;
import com.alibaba.dubbo.rpc.RpcContext;

public class DemoServiceImpl implements DemoService{


	@Override
	public String hello(String name) {
		System.out.println("[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "] Hello " + name + ", request from consumer: " + RpcContext.getContext().getRemoteAddress());
        return "Hello " + name + ", response form provider: " + RpcContext.getContext().getLocalAddress();
	}

}

package com.xiuye.provider;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Provider {

    public static void main(String[] args) throws Exception {

        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"META-INF/spring/dubbo-demo-provider.xml"});
        context.start();

        System.in.read();
    }

}

package com.xiuye.consumer;

import com.xiuye.service.DemoService;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Consumer {

    public static void main(String[] args) {
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"META-INF/spring/dubbo-demo-consumer.xml"});
        context.start();
        DemoService demoService = (DemoService) context.getBean("demoService"); // get remote service proxy

        System.out.println(demoService);

        String hello = demoService.hello("world"); // call remote method
        System.out.println(hello); // get result



    }
}




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">

    <!-- provider's application name, used for tracing dependency relationship -->
    <dubbo:application name="provider"/>

    <!-- use multicast registry center to export service -->
    <dubbo:registry address="multicast://224.0.0.2:1234"/>

    <!-- use dubbo protocol to export service on port 20880 -->
    <dubbo:protocol name="dubbo" port="20880"/>

    <!-- service implementation, as same as regular local bean -->
    <bean id="demoService" class="com.xiuye.provider.DemoServiceImpl"/>

    <!-- declare the service interface to be exported -->
    <dubbo:service interface="com.xiuye.service.DemoService" ref="demoService"/>

</beans>

dubbo.properties

dubbo.application.qos.port=22222

pom.xml


dubbo-demo-consumer.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">

    <!-- consumer's application name, used for tracing dependency relationship (not a matching criterion),
    don't set it same as provider -->
    <dubbo:application name="consumer"/>

    <!-- use multicast registry center to discover service -->
    <dubbo:registry address="multicast://224.0.0.2:1234"/>

    <!-- generate proxy for the remote service, then demoService can be used in the same way as the
    local regular interface -->
    <dubbo:reference id="demoService" check="true" interface="com.xiuye.service.DemoService"/>


   <!--  <dubbo:protocol host="127.0.0.1"/> -->

</beans>
dubbo.properties
dubbo.application.qos.port=33333

pom.xml


log4j.properties

###set log levels###
log4j.rootLogger=info, stdout
###output to console###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy hh:mm:ss:sss z}] %t %5p %c{2}: %m%n

Output:

provider:

[08/03/18 11:07:28:028 CST] main  INFO support.ClassPathXmlApplicationContext: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@175e721: startup date [Thu Mar 08 23:07:28 CST 2018]; root of context hierarchy
[08/03/18 11:07:29:029 CST] main  INFO xml.XmlBeanDefinitionReader: Loading XML bean definitions from class path resource [META-INF/spring/dubbo-demo-provider.xml]
[08/03/18 11:07:29:029 CST] main  INFO logger.LoggerFactory: using logger: com.alibaba.dubbo.common.logger.log4j.Log4jLoggerAdapter
[08/03/18 11:07:29:029 CST] main  INFO config.AbstractConfig:  [DUBBO] The service ready on spring started. service: com.xiuye.service.DemoService, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:29:029 CST] main  INFO config.AbstractConfig:  [DUBBO] Export dubbo service com.xiuye.service.DemoService to local registry, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:29:029 CST] main  INFO config.AbstractConfig:  [DUBBO] Export dubbo service com.xiuye.service.DemoService to url dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&bind.ip=192.168.56.1&bind.port=20880&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&qos.port=22222&side=provider×tamp=1520521649671, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:29:029 CST] main  INFO config.AbstractConfig:  [DUBBO] Register dubbo service com.xiuye.service.DemoService url dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&bind.ip=192.168.56.1&bind.port=20880&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&qos.port=22222&side=provider×tamp=1520521649671 to registry registry://224.0.0.2:1234/com.alibaba.dubbo.registry.RegistryService?application=provider&dubbo=2.6.1&pid=3724&qos.port=22222&registry=multicast×tamp=1520521649658, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] main  INFO transport.AbstractServer:  [DUBBO] Start NettyServer bind /0.0.0.0:20880, export /192.168.56.1:20880, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Register: dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Send broadcast message: register dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 to /224.0.0.2:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: register dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Subscribe: provider://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&category=configurators&check=false&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Send broadcast message: subscribe provider://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&category=configurators&check=false&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 to /224.0.0.2:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:30:030 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: subscribe provider://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&category=configurators&check=false&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:31:031 CST] main  WARN multicast.MulticastRegistry:  [DUBBO] Ignore empty notify urls for subscribe url provider://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&category=configurators&check=false&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: register consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=consumers&check=false&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: subscribe consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Send broadcast message: register dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 to /224.0.0.2:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: register dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[23:07:41] Hello world, request from consumer: /192.168.56.1:53683
consumer
[08/03/18 11:07:39:039 CST] main  INFO support.ClassPathXmlApplicationContext: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@175e721: startup date [Thu Mar 08 23:07:39 CST 2018]; root of context hierarchy
[08/03/18 11:07:39:039 CST] main  INFO xml.XmlBeanDefinitionReader: Loading XML bean definitions from class path resource [META-INF/spring/dubbo-demo-consumer.xml]
[08/03/18 11:07:39:039 CST] main  INFO logger.LoggerFactory: using logger: com.alibaba.dubbo.common.logger.log4j.Log4jLoggerAdapter
[08/03/18 11:07:40:040 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Load registry store file C:\Users\Administrator\.dubbo\dubbo-registry-consumer-224.0.0.2:1234.cache, data: {com.xiuye.service.DemoService=dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=5028&side=provider×tamp=1520520543228}, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Register: consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=consumers&check=false&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Send broadcast message: register consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=consumers&check=false&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 to /224.0.0.2:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: register consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=consumers&check=false&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Subscribe: consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Send broadcast message: subscribe consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 to /224.0.0.2:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: subscribe consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Receive multicast message: register dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671 from /192.168.56.1:1234, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:40:040 CST] DubboMulticastRegistryReceiver  INFO multicast.MulticastRegistry:  [DUBBO] Notify urls for subscribe url consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372, urls: [dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671], dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:41:041 CST] DubboMulticastRegistryReceiver  INFO transport.AbstractClient:  [DUBBO] Successed connect to server /192.168.56.1:20880 from NettyClient 192.168.56.1 using dubbo version 2.6.1, channel is NettyChannel [channel=[id: 0xd843504d, /192.168.56.1:53683 => /192.168.56.1:20880]], dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:41:041 CST] DubboMulticastRegistryReceiver  INFO transport.AbstractClient:  [DUBBO] Start NettyClient xiuye/192.168.56.1 connect to the server /192.168.56.1:20880, dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:41:041 CST] main  INFO multicast.MulticastRegistry:  [DUBBO] Notify urls for subscribe url consumer://192.168.56.1/com.xiuye.service.DemoService?application=consumer&category=providers,configurators,routers&check=true&dubbo=2.6.1&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&side=consumer×tamp=1520521660372, urls: [dubbo://192.168.56.1:20880/com.xiuye.service.DemoService?anyhost=true&application=provider&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3724&side=provider×tamp=1520521649671], dubbo version: 2.6.1, current host: 192.168.56.1
[08/03/18 11:07:41:041 CST] main  INFO config.AbstractConfig:  [DUBBO] Refer dubbo service com.xiuye.service.DemoService from url multicast://224.0.0.2:1234/com.alibaba.dubbo.registry.RegistryService?anyhost=true&application=consumer&check=true&dubbo=2.6.1&generic=false&interface=com.xiuye.service.DemoService&methods=hello&pid=3112&qos.port=33333&register.ip=192.168.56.1&remote.timestamp=1520521649671&side=consumer×tamp=1520521660372, dubbo version: 2.6.1, current host: 192.168.56.1
com.alibaba.dubbo.common.bytecode.proxy0@a638b5
Hello world, response form provider: 192.168.56.1:20880



如果maven工程找不到相应的jar包,去Dubbo官网下载源代码---编译.(mvn compile --> mvn package --> mvn install.)

如果eclipse中maven找不到本地刚刚编译jar,"Window" ==> "Show Views" ==> "Other" ==> "Maven Repositories" ==>

"Local Repositories" ==> "Mouse Right Clicked" ==> "Rebuild Index".


参考链接:

Dubbo下载








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值