apache / apache/servicecomb-java-chassis

[QUESTION] - 2.x升级3.x适配方案

Offen
#5,060 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
question
Vorherrschende Sprache
Java
Sterne
1.9k
Forks
814
Ø Merge
8 T. 23 Std.
Gemergte PRs (30 T.)
1

Beschreibung

### Steps to reproduce (if applicable)

问题1:
2.x中可以通过以下代码获取指定appid,serviceName的实例集合
````
MicroserviceVersionRule microService = DiscoveryManager.INSTANCE.getAppManager().getOrCreateMicroserviceVersionRule(
appId, serviceName, SERVICE_VERSION_RULE);
Map instanceMap = microService.getInstances();
````

3.x中api变化,应该怎么替换实现相同的功能
通过serviceCenterClient获取所有的微服务,然后再过滤,是否可行?或者有没有更好的平替方法?
```
ServiceCenterClient serviceCenterClient = BeanUtils.getBean(ServiceCenterClient.class);
List microserviceList = serviceCenterClient.getMicroserviceList().getServices();
```

问题2:2.x中PolicyRuleItem可以通过getMatch().match()判断某个请求头的值是否符合正则,3.x中要怎么替换适配?
问题3:2.x中MicroserviceCache.getInstance().getService()的替换方案

### What have you tried so far?

_No response_

### Additional context

_No response_

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, die in diesem Issue genannten 2.x-APIs—MicroserviceVersionRule, PolicyRuleItem und MicroserviceCache—mit ihren 3.x-Gegenstücken in der ServiceComb Java Chassis API zu vergleichen. Überprüfe, ob das Filtern von ServiceCenterClient-Ergebnissen und das Abgleichen von Request-Header-Werten ein gleichwertiges Verhalten liefern. Als erledigt gilt dies, wenn für jede der drei Migrationsfragen ein bestätigter Ersatz oder eine bestätigte Einschränkung dokumentiert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
backend, distributed-systems
Issue-Typ
Dokumentation
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.