8000 【summer_issue#8313】Ecological Construction and optimization of NACOS Service Mesh by RocketEngine26 · Pull Request #9158 · alibaba/nacos · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

【summer_issue#8313】Ecological Construction and optimization of NACOS Service Mesh #9158

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

Merged

Conversation

RocketEngine26
Copy link
Contributor
@RocketEngine26 RocketEngine26 commented Sep 15, 2022

What is the purpose of the change

  1. Design Nacos support XDS protocol design document, and complete the module development;

  2. Aiming at the performance problem of full push between Nacos and Istio, the incremental push method is used to optimize the design

  3. Add the corresponding documentation for the service grid ecology to the NACOS official documentation.

Brief changelog

  1. Change the polling mechanism to listen for event changes;
  2. Implement the update design of the data layer、Debounce、CDE, EDS, incremental EDS, incremental MCP.

Verifying this change

Follow this checklist to help us incorporate your contribution quickly and easily:

  • Change the polling mechanism to listen for event changes
  • Implement the update design of the data layer
  • Debounce
  • CDS
  • incremental EDS
  • incremental MCP

…e update design of the data layer、Debounce、CDE, EDS, incremental EDS, incremental MCP.
Copy link
Contributor
@SpecialYang SpecialYang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove irrelative code changes. And remove v2 support and empty generator for CDS/EDS.

@RocketEngine26 RocketEngine26 changed the title 【summer_issue#8313】Implement the development and pass the test 【summer_issue#8313】Ecological Construction and optimization of NACOS Service Mesh Sep 30, 2022
//TODO: service data change event, instance event
result.add(ClientOperationEvent.ClientRegisterServiceEvent.class);
result.add(ClientOperationEvent.ClientDeregisterServiceEvent.class);
result.add(InfoChangeEvent.ServiceInfoChangeEvent.class);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the difference between ServiceInfoChangeEvent and ServiceMetadataEvent ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The ServiceMetadataEvent is used primarily to determine whether metadata is out of date and can not determine changes to data such as weights

private int mcpPushInterval;

@Value("${nacos.istio.server.full:true}")
private boolean fullEnabled = true;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the this param does for?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

determine whether to use Delta

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But this param never be used. consider to remove it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This parameter is used in incremental push. If the server does not agree to incremental push even if the client support, incremental push can not be carried out

Copy link
Contributor
@SpecialYang SpecialYang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two tips need to be fixed.

}
}

private void init() {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When do we execute init?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the Watcher, the code has been modified

private int mcpPushInterval;

@Value("${nacos.istio.server.full:true}")
private boolean fullEnabled = true;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But this param never be used. consider to remove it.

Copy link
Contributor
@SpecialYang SpecialYang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@KomachiSion KomachiSion merged commit a4eb614 into alibaba:summer2022_issue#8313 Oct 21, 2022
@KomachiSion KomachiSion added Summer and removed Summer labels Apr 10, 2023
wukong121 pushed a commit to wukong121/nacos that referenced this pull request Aug 4, 2023
…Service Mesh (alibaba#9158)

* Change the polling mechanism to listen for event changes;Implement the update design of the data layer、Debounce、CDE, EDS, incremental EDS, incremental MCP.

* Remove unnecessary changes and logs

* Simplify the code

* Simplify

* Add the delta API description

* Fixed a bug

* Update application.properties

* Modify the event merge mechanism; remove unnecessary classes

* Initialize
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0