Szemcsés felület verziószámozása
Ebből a cikkből megtudhatja, hogyan használhatja a szemcsés felület verziószámozását. A Grain állapot verziószámozása hatókörön kívül esik.
Áttekintés
Egy adott fürtön a silók támogathatják a szemcsés típus különböző verzióit.
Ebben a példában az ügyfél és a Silo{1,2,3} az 1- es szemcsefelbontási felülettel A
lett lefordítva. A Silo 4 a 2-es verzióval A
lett lefordítva.
Korlátozások
- Nincs verziószámozás az állapot nélküli feldolgozón
- A streamelési felületek nincsenek verziószámban
Verziószámozás engedélyezése
Ha a verzióattribútum nincs explicit módon hozzáadva a szemcsés felülethez, akkor a szemcsék alapértelmezett 0-s verziójúak. A grain verziószámozásához használja a VersionAttribute et a szemcsés felületen:
[Version(X)]
public interface IVersionUpgradeTestGrain : IGrainWithIntegerKey
{
}
Hol X
található a szemcsés felület verziószáma, amely általában monoton módon növekszik.
A szemcsés verzió kompatibilitása és elhelyezése
Amikor egy verziószámozott szemcséből érkező hívás érkezik egy fürtbe:
- Ha nincs aktiválás, létrejön egy kompatibilis aktiválás
- Ha létezik aktiválás:
- Ha az aktuális nem kompatibilis, akkor az inaktiválva lesz, és létrejön egy új kompatibilis (lásd : verzióválasztó stratégia)
- Ha az aktuális kompatibilis (lásd a kompatibilis szemcséket), a hívás a szokásos módon lesz kezelve.
Alapértelmezés szerint:
- Minden verziószámozott szemcsének csak visszamenőlegesen kompatibilisnek kell lennie (lásd a visszamenőleges kompatibilitási irányelveket és a kompatibilis szemcséket). Ez azt jelenti, hogy egy v1-gabona meghívhat egy v2-et, de a v2-gabona nem hívhat meg v1-et.
- Ha a fürtben több verzió is létezik, az új aktiválás véletlenszerűen egy kompatibilis silóra kerül.
Ezt az alapértelmezett viselkedést a következő módon módosíthatja GrainVersioningOptions:
var silo = new HostBuilder()
.UseOrleans(c =>
{
c.Configure<GrainVersioningOptions>(options =>
{
options.DefaultCompatibilityStrategy = nameof(BackwardCompatible);
options.DefaultVersionSelectorStrategy = nameof(MinimumVersion);
});
});
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: