بهینه سازی ردیابی OpenTelemetry با اجزای انبار چند پشته

با ایده اصلی آن به نمایش گذاشتن آثار در پشته های مختلف فناوری، از جمله ارتباطات ناهمزمان از طریق یک صف MQTT، من به کار بر روی نسخه ی نمایشی Opentelemetry خود ادامه می دهم. این هفته چند جزء اضافه کردم و معماری را تغییر دادم. در اینجا برخی از یادگیری های قابل توجه وجود دارد. توجه داشته باشید که برخی از آنها ممکن است به طور کامل به OpenTelemetry متصل نباشند.

در اینجا یک نمودار به روز شده است.

اجزای جدید به رنگ بنفش و اجزای به روز شده به رنگ سبز ظاهر می شوند.

نمودار مؤلفه کلی نسخه آزمایشی OpenTelemetryنمودار مؤلفه کلی نسخه آزمایشی OpenTelemetry

من می خواهم بتوانم اجزای بیشتری اضافه کنم. بنابراین، من تصمیم گرفتم که به جای پرس و جو مستقیم از پایگاه داده، inventory کامپوننت انبارهایی را که قرار است در مناطق مختلف قرار داشته باشند، پرس و جو می کند. هر انبار را می توان در یک پشته متفاوت پیاده سازی کرد، و شما می توانید هر تعداد که می خواهید داشته باشید — از PR استقبال می شود. فعلا دلم برای اکسیر و دات نت تنگ شده. قراردادی که باید بنویسم آسان است:

  • یک نقطه پایانی /stocks/${productId}

  • امکان پرس و جو از PostgreSQL

  • برگرداندن سهام به شکل:

    شی انتقال سهامشی انتقال سهام

من در مورد تغییرات موجودی برای حساب کردن پیکربندی جدید نوشته ام. بیایید در مورد اجزای انبار صحبت کنیم.

انبار برو

اجازه دهید صریح بگویم: من دوست ندارم (نفرت دارم؟) به سراغ رویکرد رسیدگی به خطاهای آن بروید. با این حال، با دانشی نزدیک به صفر از زبان، توانستم یک API پایه HTTP بسازم که خواندن…

Source link