> 1. Prioritization of centralized configuration Now, the centralized configuration or externalized configuration is implemented to has the highest priority by default. For flexible concerns, a switch is designed and opened to users so that they can override the default value, for example, you can use the following JVM property to give centralized configuration a lower priority than the local one: dubbo.configCenter.highestPriority=false.
> 2. The logic of the route is more complicated, and the compatibility with > the original low version is guaranteed. When saying of complexity, I guess you mainly refer to the routing module, because this module is one of the most evident parts that has changed in this version and is also newly introduced. Its main purpose is to improve the performance of the runtime. After all, there will be some performance loss when routing is executed for address filtering every time an RPC is executed. However, I agree we should be really careful about this cache part since it works as an crucial path on the RPC wire. Some possible drawbacks I can come up with it now are: excessive resource usage, priority guarantee of routers in chain, etc. I think we can discuss more about the technical details of this part, give it more test and then decide whether to release it this time or wait until it’s mature enough. > 3.Tag routing has been modified, how is the compatibility with the original? It has full backward compatibility with the original implementation with only the supporting of of DynamicConfiguration added. > 4. How does the Environment clear responsibility? It is best to have an > independent description. Sorry, I don’t understand this one. Basically, you can think Environment as the counterpart of that in Spring. I agree we should add a document describing the design purpose and how to use it. Jun > On Dec 14, 2018, at 12:26 PM, victory <[email protected]> wrote: > > All of this features are the biggest concert in the community. > I have some questions: > 1.中心化配置的优先级 > 2.路由的逻辑比较复杂,和原来低版本的兼容性怎么保证 > 3.Tag路由改造了,和原来的兼容性怎么样? > 4.Environment这个东西是怎么明确职责的?最好能有个独立的说明。 > ---------- > 1. Prioritization of centralized configuration > 2. The logic of the route is more complicated, and the compatibility with > the original low version is guaranteed. > 3.Tag routing has been modified, how is the compatibility with the original? > 4. How does the Environment clear responsibility? It is best to have an > independent description. > > > jun liu <[email protected]> 于2018年12月7日周五 下午8:11写道: > >> Hi, All >> >> I’ve just posted some blogs[4] on Github issues relating to the design >> principles and implementations of V2.7.0, the content are based mainly on >> my own understanding of the 2.7.0 codebase (hosted on branch >> dev-metadata[1]) and the previous discussions[2][3]. >> >> Recently, I spent plenty of my spare times on 2.7.0, mainly focusing on >> metadata refactoring, I am happy to see that v2.7.0 is on a right direction >> to meet community requirements and keeps evolving. The main changes or >> features already included in v2.7.0 branch are: >> >> * Config Center: Zookeeper, Apollo, Nacos >> * Externalized Configuration >> * Service governance enhancement: dynamic configuration & routing rule >> * Repackage to 'org.apache.dubbo' >> * Java 8 support >> * Async programming support >> >> Most of the features above have been mentioned or discussed on the mailing >> list or Github issues days or months ago. But during the design and coding >> process, more details come up that need to be further discussed and >> decided. The design principles and implementations on v2.7.0 branch now are >> far from the the final decision, they may be not the best choice or even >> turn to be unreasonable, so you can think them as a prototype >> implementation provided for your reference. Now, we need to know your >> opinions on v2.7.0, please help to review the designs and codes, whenever >> you have better ideas or suggestions, please don’t hesitate to let the >> community know. >> >> FYI: If you want to know more implementation details and try to read the >> codes or commits directly, you may find it hard to follow, because there’re >> too much file changes in there. So I would suggest you read the summaries I >> wrote in the blogs first and then dive into the code related to the part >> you interest one by one. >> >> 1. https://github.com/apache/incubator-dubbo/tree/dev-metadata >> 2. https://github.com/apache/incubator-dubbo/issues/2030 >> 3. https://github.com/apache/incubator-dubbo/issues/2341 >> 4. https://github.com/apache/incubator-dubbo/issues/2919 >> >> Jun >> >> > > -- > > Best Regard! > cvitory
