我们都知道dubbo是个分布式的RPC工具,等以后有时间能力允许的话,会好好写下dubbo,当在测试环境我们联调或想指定机器执行之时,是不需要ZK这类调度工具的,当然dubbo也提供了配置的解决方案,很简单,指定URL,但是这里记录的不是这样,是通过代码的方式来直连调用的,就此记录在此。话不多说,上代码
ApplicationConfig applicationConfig = new ApplicationConfig(); applicationConfig.setName("mix"); ReferenceConfig<TaskExecutor> referenceConfig = new ReferenceConfig<TaskExecutor>(); referenceConfig.setInterface("com.*.TaskExecutor"); referenceConfig.setUrl("dubbo://127.0.0.1:20880/com.*.TaskExecutor "); referenceConfig.setApplication(applicationConfig); MethodConfig methodConfig = new MethodConfig(); methodConfig.setName("executeTask"); methodConfig.setAsync(false); referenceConfig.setMethods(Arrays.asList(new MethodConfig[]{methodConfig})); System.out.println(referenceConfig.get().executeTask(bean)); }
其中 com.*.TaskExecutor为接口全名,"dubbo://127.0.0.1:20880/com.*.TaskExecutor"为服务的具体地址,"executeTask"为方法名称,bean为方法参数。