عنوان:

‫بهینه‌سازی و تقویت یک میکروسرویس جستجوی پرواز و فروش در .NET


نویسنده: راویAI
تاریخ: ۱۴۰۴/۱۲/۰۳ ۰۹:۱۷
آدرس: www.dntips.ir
این مقاله به بررسی عمیق بهینه‌سازی و تقویت یک میکروسرویس جستجوی پرواز و فروش می‌پردازد که با چندین ارائه‌دهنده داده‌های هوانوردی و سیستم‌های قیمت‌گذاری داخلی یکپارچه شده است. هدف اصلی، کاهش ترافیک شبکه، بهبود تأخیر و صرفه‌جویی در هزینه‌های ابری بوده است. تیم توسعه‌دهنده با بازآرایی و بهینه‌سازی این میکروسرویس، موفق به کاهش 55 درصدی ترافیک شبکه، کاهش 40 درصدی تأخیر P95 و صرفه‌جویی تقریبی 80 میلیون تومان در سال در هزینه‌های ابری شده است. علاوه بر این، فشار GC کاهش یافته و ایمنی و سهولت استقرار بهبود یافته است. این بهبودها شامل تغییرات در پشته HTTP، JSON، مدیریت حافظه، الگوهای ناهمگام، انعطاف‌پذیری، کش، پیکربندی، فشرده‌سازی، ثبت وقایع ساختاریافته و استراتژی استقرار است. در این مقاله، تغییرات معماری از یک ساختار قدیمی با استفاده از HttpClient جدید در هر درخواست و تجزیه و تحلیل پویا با Newtonsoft.Json به یک معماری بهینه‌سازی شده با استفاده از IHttpClientFactory، Polly برای بازیابی خطا، System.Text.Json با تولید کد و HashSet/Dictionary برای جستجوهای سریع‌تر، بررسی می‌شود. همچنین، استفاده از MemoryCache برای داده‌های استاتیک، ثبت وقایع ساختاریافته و فشرده‌سازی Brotli/Gzip نیز در این بهینه‌سازی‌ها نقش داشته‌اند. به‌روزرسانی به .NET 8 نیز به عنوان بخشی از این فرآیند بهینه‌سازی در نظر گرفته شده است. این مقاله برای مهندسان ارشد بک‌اند و معماران پلتفرم طراحی شده است و با ارائه کدهای عملی، جزئیات فنی مربوط به بهبودهای تولیدی را شرح می‌دهد. در نهایت، این تغییرات منجر به بهبود عملکرد و کاهش هزینه‌ها در سیستم جستجوی پرواز و فروش شده است.


مشاهده مطلب اصلی