Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/cluster Optimized the Router module #160

Merged
merged 7 commits into from
Oct 7, 2023
Merged

Feat/cluster Optimized the Router module #160

merged 7 commits into from
Oct 7, 2023

Conversation

AdachiAndShimamura
Copy link
Contributor

Optimized the Router module
Added Router Chain to MockDirectory

Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.
Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.
Optimized the Router module
Added Router Chain to MockDirectory
@yang20150702
Copy link
Member

Good Work, LGTM!

@yang20150702 yang20150702 merged commit a957c54 into apache:feat/cluster Oct 7, 2023
onewe pushed a commit to onewe/dubbo-rust that referenced this pull request Nov 17, 2023
* perf: Optimized the logic of the routing module.

Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.

* perf: Optimized the logic of the routing module.

Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.

* perf: Removed unnecessary configurations.

* perf: Removed unnecessary configurations.

* perf: Optimized the Router module

Optimized the Router module
Added Router Chain to MockDirectory
yang20150702 added a commit that referenced this pull request Mar 29, 2024
* feat(dubbo): add unix feature

* Rft: replace feature with target_os cfg

* Rft(dubbo): add ClientBuilder for client

* Rftï(dubbo-build): add build api for client

* style(examples): cargo fmt

* Rft: move connection from client to transport mod

* Rft(dubbo): add default timeout for client

* Ftr: add serverBuilder for Server, support multiple ways to start server

* Rft(examples): update yaml

* refactor(dubbo): update invoker trait

* refactor(cluster): add Cluster MockImpl

* refactor(triple): use ClientBuilder to init Cluster ability

* Update builder.rs

update default direct value

* Update triple.rs

handle unused var

* Update mod.rs

comment some codes

* refactor(triple): rm unused var in clientBuilder

* refactor(dubbo): delete some codes

* refactor(cluster): rm some duplicate codes

* refactor(registry): rm unused import

* refactor(triple): use two build func for different usage

* style: cargo fmt --all

* refactor(cluster): rm registryWrapper

* refactor(cluster): delete print

* chore(dubbo): upgrade hyper version in cargo.toml

* refactor(cluster): comment the logic of clone body

* Rft(triple): remove Clone of Invoker

* Rft(cluster): use ready_cache to manage Invokers, add ready_cache in FailoverCluster

* Rft(protocol): use interface Inheritance to redesign Invoker

* Feat(cluster): Cluster Policy Impl (#146)

* refactor(cluster): comment the logic of clone body

* Rft(triple): remove Clone of Invoker

* Rft(cluster): use ready_cache to manage Invokers, add ready_cache in FailoverCluster

* Rft(protocol): use interface Inheritance to redesign Invoker

---------

Co-authored-by: G-XD <[email protected]>
Co-authored-by: GXD <[email protected]>

* chore(github): rm workflow_dispatch in workflow (#149)

* feat: Add Router Module(#144) (#153)

add condition router,
add tag router,
use nacos as router config center

* Ftr: failover cluster (#156)

* Ftr: add ServiceNameDirectory (#157)

* Ftr: failover cluster

* Ftr: add ServiceNameDirectory

* Feat/cluster Optimized the Router module (#160)

* perf: Optimized the logic of the routing module.

Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.

* perf: Optimized the logic of the routing module.

Refactored route logic decision-making, eliminating unnecessary cloning
and improving performance.

* perf: Removed unnecessary configurations.

* perf: Removed unnecessary configurations.

* perf: Optimized the Router module

Optimized the Router module
Added Router Chain to MockDirectory

* Refactor: refactor Cluster component (#165)

* Refactor: refactor Cluster component

- add p2c loadbalance component
- add simple router component
- add replay body component
- add failover component
- add service directory compoent

* Enhance: add cache for routers

* Tst: local test passed (#166)

* Tst: local test passed

* Enhance: remove unnecessary key

* Enhance: add BUFFER SIZE const variable

* style(dubbo): cargo fmt --all

* style(dubbo): cargo fix --lib -p dubbo --allow-dirty

* chore(github): update branch in pr

* Mod: format code and fix some warnings (#167)

* style(dubbo): cargo fmt --all

* style(dubbo): cargo fix --lib -p dubbo --allow-dirty

* chore(github): update branch in pr

* Rft: adapt nacos registry and zookeeper registry (#169)

* Rft: adapt nacos registry and zookeeper registry

Close #168

* Rft: adapt static registry

* Rft: cargo fmt

* Ftr: add extension module (#181)

* Ftr: add extension module

- adapt static registry by extension
- adapt nacos  registry by extension

link #180

* cargo fmt all

* fix ci error

* fix nacos image version error

* Rft: re-design extension register

* Fix: cargo fix

* Fix: add some license for every files

- extract UrlParam to single file
- fix github ci error

* Fix: fmt all

* Fix: Add license for extension_param.rs and registry_param.rs

* Fix: rename query_param_by_kv method name

* Fix: get stuck when load extension in the concurrency environment (#184)

* Fix: get stuck when load extension in the concurrency environment

- Add a new struct called LoadExtensionPromise
- Remove async modifier in ExtensionDirectory

Close #183

* Ftr: use RwLock instead of unsafe

* Rft: simplify the code of extension promise resolve

* refeat(extensions): add sync for Registry trait

* chore: cargo fmt

* chore: cargo fmt

* chore: cargo fmt

* chore: cargo fmt

---------

Co-authored-by: G-XD <[email protected]>
Co-authored-by: GXD <[email protected]>
Co-authored-by: Urara <[email protected]>
Co-authored-by: 毛文超 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants