Ինտեգրում արտաքին տոմսերի համակարգի հետ
Ասինխրոն ինտեգրման շերտ օդանավակայանների, երթուղիների և հասանելիության տվյալների համար
Մասշտաբավորվող ասինխրոն API ինտեգրում օդանավակայանների, երթուղիների, չվերթների ժամանակացույցերի և հասանելիության տվյալների համար՝ կառուցված վերաօգտագործվող extractor-ների, transformer-ների և տիպականացված սխեմաների հիման վրա։
Տեխնոլոգիական փաթեթ
Խնդիր
Արտադրանքին անհրաժեշտ էին ժամանակացույցի և հասանելիության իրական տվյալներ արտաքին տոմսավաճառքի մատակարարից, մինչդեռ 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 անկայունության հանդուրժող մշակմամբ։