代码参考 github 仓库 /test 目录: https://github.com/xuxueli/xxl-rpc/tree/master/xxl-rpc-samples
1 、服务注册中心搭建:一行命令启动注册中心,一站式提供服务动态注册发现能力。
docker pull xuxueli/xxl-rpc-admin
docker run -p 8080:8080 -v /tmp:/data/applogs --name xxl-rpc-admin -d xuxueli/xxl-rpc-admin
2 、XXL-PRC 接入配置:与 Spring 无缝集成,也支持无框架接入。
XxlRpcSpringFactory factory = new XxlRpcSpringFactory();
factory.setBaseConfig(new BaseConfig(env, appname));
factory.setRegister(new XxlRpcRegister(address, accesstoken));
factory.setInvokerConfig(new InvokerConfig(invokerOpen));
factory.setProviderConfig(providerOpen ?
new ProviderConfig(
NettyServer.class,
JsonbSerializer.class,
port,
corePoolSize,
maxPoolSize,
null) : new ProviderConfig(providerOpen));
经过上述 2 步,已完成全部配置工作,可以直接展开业务编码工作。
3 、业务代码开发:
public interface DemoService {
public UserDTO load(String name);
}
@XxlRpcService
@Service
public class DemoServiceImpl implements DemoService {
@Override
public UserDTO load(String name) {
return new UserDTO("jack", "hello world");
}
}
@XxlRpcReference(appname = "app01")
private DemoService demoService;
...
UserDTO userDTO = demoService.sayHi(name);
XXL-RPC 是一个 RPC 服务框架,提供一站式服务通信及运营能力。拥有“轻量级、高性能、负载均衡、故障容错、安全性、注册发现、服务治理”等分布式特性。现已开放源代码,开箱即用。
1
weihuilee 2 天前
用过这个框架,好用~ 点个赞
|
2
love2075904 1 天前
大佬什么时候给 xxljob 补 namespace 特性。
|