Sobes.tech
Middle

Képzeljen el egy integrációs megoldást: az A rendszernek kérnie kell a B rendszertől egy jelentés generálását (ami 2 órát vesz igénybe és 200 MB méretű), és meg kell kapnia az eredményt.

sobes.tech MI

Válasz az MI-től

Egy integrációs megoldás esetén, ahol az A rendszer egy nagy jelentést kér a B rendszertől (2 óra feldolgozás, 200 MB), jobb aszinkron megközelítést alkalmazni értesítéssel a készültségről:

  1. Az A rendszer kérvényt küld a jelentés generálására a B rendszernek, és egyedi feladatazonosítót kap.
  2. A B rendszer háttérben elindítja a jelentés generálási folyamatot.
  3. Az A rendszer időszakosan kérdezi a B rendszert a feladatazonosítóval, hogy állapotot tudjon lekérdezni (pl. REST API-n keresztül).
  4. Amikor a jelentés kész, a B rendszer linket biztosít a letöltéshez (pl. HTTP-n vagy S3 tárolón keresztül).
  5. Az A rendszer letölti a jelentést a linkről.

Ez a megközelítés lehetővé teszi, hogy ne tartsa nyitva a kapcsolatot 2 órán keresztül, és hatékonyan továbbítsa a nagy fájlokat. A jelentés átadásához jobb fájltárolót vagy objektumtárolót (S3, Azure Blob stb.) használni, mint közvetlenül az API-n keresztül.

API példa:

  • POST /reports - feladat létrehozása, visszaadja a taskId-t
  • GET /reports/{taskId}/status - feladat státusza
  • GET /reports/{taskId}/download - letöltési link

Ez egy klasszikus "feladat-sor-értesítés" minta aszinkron feldolgozással.