tree 5af1da36f15130cc03d07a59f1512d47c41e39b5
parent 42ec9da403ee100711a64b099f779f87364cb669
author 墨舟 <liangmeike@gmail.com> 1675869294 +0800
committer GitHub <noreply@github.com> 1675869294 +0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJj47xuCRBK7hj4Ov3rIwAADRgIAB5qz2JWAuocsP4X2/xSdOdP
 1vCJ5deKZGEiA6NHqKAA4GuJfI4CIlNfhV0f23Gd2edBL/LW8NPLKp8U/sql7rYN
 n6JlD3CPt0MYkSo5sV3a6xArMxC+dNZ2CgwtuMXKvG6fOMqN0WbyIBi5SUUiRde1
 DbzAWXA64kIF3BPrQ0qG6+v3lc3A+ZegyKmkKr20tZk0YKP1lSuyYSiYfGnaTHM9
 VW9qFuWN7MmgM5jLtYXgH0+cN5WMzFsbILrrJvMRFI1RBOzSsz06R77zN64RxYE7
 z/uz99EbA+ufl2ee8Tg8AUmqF3U5fBlL8K4OAOGPDOSyNveroIeKUF3ZJfDyWis=
 =TW5k
 -----END PGP SIGNATURE-----
 

load balance and service registry closed loop (#105)

* feat(cluster): loadbalance types

* feat(rpc): types alias for cluster invoker

* feat(cluster): integration

* feat(cluster): integration with examples

* feat(cluster.loadbalance): greeter example with default random loadbalance passed

* feat(cluster.loadbalance): completing roundrobin arithmetic and fixing compile warns.

* typo

* fix compile warns

* fix rustfmt check fails.

* fix cargo check fails(due to the use of nightly channel locally).

* fix: default yaml config parse failed in ci.

* ci actions zk test

* feat(registry): zk support

* feat(registry): zk support, connected to zk

* feat(registry): provider.services  key as service name

* feat(registry): serviceKey and configuration files, aligned to dubbo ecology

* feat(commons): tested Url impl

* feat(commons): tested Url impl

* feat(zk): interface service discovery

* feat(zk): create_path_with_parent_check

* feat(zk): export bug fixed.