Անցնել բովանդակությանը
Վերադառնալ նախագծերին
API ինտեգրում2023

Ինտեգրում արտաքին տոմսերի համակարգի հետ

Ասինխրոն ինտեգրման շերտ օդանավակայանների, երթուղիների և հասանելիության տվյալների համար

Փակ նախագիծ

Մասշտաբավորվող ասինխրոն API ինտեգրում օդանավակայանների, երթուղիների, չվերթների ժամանակացույցերի և հասանելիության տվյալների համար՝ կառուցված վերաօգտագործվող extractor-ների, transformer-ների և տիպականացված սխեմաների հիման վրա։

Տեխնոլոգիական փաթեթ

FastAPIhttpxPydanticAsync PythonREST APIsDocker

Խնդիր

Արտադրանքին անհրաժեշտ էին ժամանակացույցի և հասանելիության իրական տվյալներ արտաքին տոմսավաճառքի մատակարարից, մինչդեռ upstream API-ն դանդաղ էր, անհամապատասխան կառուցվածքով և ինքնուրույն ոչ կայուն։

Լուծում

Կառուցվել է տիպականացված ինտեգրման շերտ՝ առանձին extraction և transformation փուլերով, որը upstream պատասխանները նորմալացնում է կայուն ներքին սխեմաների՝ անկախ մատակարարի առանձնահատկություններից։

Տեխնիկական ներդրում

Նախագծել եմ ասինխրոն client-ի ճարտարապետությունը, Pydantic սխեմաների պայմանագրերը extraction և transformation փուլերի միջև, ինչպես նաև upstream խափանումների retry և error-handling ռազմավարությունը։

Ճարտարապետություն

Ասինխրոն httpx client-երը սնուցում են extractor-ների և transformer-ների խողովակաշարը, Pydantic մոդելները ապահովում են տիպականացված պայմանագրեր յուրաքանչյուր փուլում՝ նախքան տվյալները հասնեն հավելվածի շերտ։

Կատարողականություն

Զուգահեռ ասինխրոն հարցումները և կապերի pool-ը նվազեցնում են բազմաերթուղային հարցումների ընդհանուր ստացման ժամանակը՝ հաջորդական կանչերի համեմատ։

Անվտանգություն

Upstream հավատարմագրերը մեկուսացված են ինտեգրման ծառայության մեջ, խիստ timeout-ներով և circuit breaking-ով upstream խափանումների կասկադային տարածումը կանխելու համար։

Տեղակայման մոդել

Աշխատում է որպես կոնտեյներացված ծառայություն՝ հիմնական հավելվածից անկախ մասշտաբավորմամբ, տեղակայված Docker-ով։

Արդյունք

Հուսալի, նորմալացված չվերթների և հասանելիության տվյալներ, որոնք հասցվում են սպառող ծառայություններին՝ upstream անկայունության հանդուրժող մշակմամբ։