يصل HAProxy 3.0 مزودًا بتحسينات في الأداء وشهادات والمزيد

HAProxy

HAProxy ، موازن تحميل البرامج مفتوحة المصدر الشهير، أعلن مؤخرًا عن إطلاق الإصدار الجديد من "هابروكسي 3.0"، والذي يأتي مع سلسلة من التحديثات التي تعد بتحسين البساطة والأداء والموثوقية والأمان.

بالنسبة لأولئك الذين لا يعرفون عن HAProxy، يجب أن يعرفوا ذلك هو موازن تحميل يسمح لك بتوزيع حركة مرور HTTP وطلبات TCP بين مجموعة من الخوادم. يأخذ HAProxy في الاعتبار العديد من العوامل، مثل توفر الخادم وتقييم مستوى التحميل وتنفيذ إجراءات DDoS المضادة.

الميزات الجديدة الرئيسية لـ HAProxy 3.0

هذا الإصدار الجديد المقدم من HAProxy 3.0، يتم وضعه كإصدار دعم طويل المدى (LTS) وسيتم دعمه حتى عام 2029 و يحتوي على قسم جديد لمتجر CRT والذي يوفر طريقة مرنة لتخزين واستخدام شهادات SSL، وفصل التخزين عن الاستخدام على الواجهة الأمامية. يتيح لك ذلك تحديد مواقع كل مكون شهادة بشكل فردي، مثل ملفات الشهادات وملفات المفاتيح وملفات استجابة OCSP.

آخر التغييرات التي تبرز هو قدرات موسعة لموازنة رسائل Syslog. يُذكر أنه تم إحراز تقدم بحيث يمكنك الآن تعيين الأوزان على خطوط الخادم في سجلات الدخول الخاصة بالوضع الخاص بك. وفي الوقت نفسه، فإن الخوارزمية الثابتة، التي كانت مقتصرة على تسجيل الواجهات الخلفية، تنطبق الآن على الواجهات الخلفية لوضع http tcp.mode أيضًا.

علاوة على ذلك، في HAProxy أصبح من الممكن الآن وضع قيود على طلبات معينة مسموح به بواسطة بروتوكول HTTP/2 والذي يمكن أن يسبب مشكلات، مما يسمح لك بتحديد التطبيقات المعيبة أو العملاء ذوي السلوك غير المناسب

في هابروكسي 3.0، يتم تقديم توجيه "دليل" جديد، يمكن استخدام هذا التوجيه في الأقسام "الواجهة الأمامية" و"الواجهة الخلفية" و"الاستماع" لربط معرف فريد بهذه الأقسام، السماح بحفظ الإحصائيات المرتبطة حتى بعد إعادة التشغيل. بالإضافة إلى ذلك، تمت إضافة الأمر "تفريغ ملف الإحصائيات" لحفظ الإحصائيات في ملف وتمت إضافة توجيه "ملف الإحصائيات" لقراءة الإحصائيات من ملف بعد إعادة التشغيل.

كذلك، تم توسيع كمية البيانات التي يمكن الحصول عليها، مما يسمح لك بطلب معلومات حول عدد جلسات HTTP المفتوحة وحجم قائمة انتظار الطلبات والعدد المسموح به من الجلسات المتزامنة.

من ناحية أخرى ، وأداء مناطق تخزين الذاكرة التي تم إنشاؤها باستخدام طاولة العصا لقد زاد بشكل ملحوظ من خلال تطبيق آلية قفل أكثر كفاءة، مما يحسن الأداء بشكل ملحوظ على الأنظمة متعددة الخيوط. على سبيل المثال، في نظام يحتوي على 80 مؤشر ترابط، زاد الأداء بمقدار 6 مرات.

في التكوينات متعددة المواقع حيث يتم تحديد شهادة TLS بناءً على معرف المضيف المقدم بواسطة ملحق TLS SNI، تمت إضافة الوسيطة "default-crt" لتحديد شهادة افتراضية إذا كانت الشهادات الموجودة لا تتطابق مع الموقع.

Se تمت إضافة الإجراءين "set-fc-tos" و"set-bc-tos" لاستبدال حقل DS (الخدمات المتنوعة) على حزم IP على الواجهة الخلفية أو الواجهة الأمامية، وإجراءات "set-fc-mark" و"set-bc-mark" لوضع علامة على حزم IP لربطها لاحقًا بجدول توجيه محدد.

يُحظر الآن إرسال أوامر متعددة إلى Runtime API في طلب واحد مفصول بحرف سطر جديد؛ يحظر تعيين الكلمة الأساسية "ممكّنة" للخوادم الديناميكية؛ وتم تعزيز التحقق من عناوين URI غير القياسية.

من التغييرات الأخرى التي تبرز من هذا الإصدار الجديد:

  • يمكن استخدام البادئة "@virt" لإنشاء خريطة افتراضية وملفات ACL التي لم يتم حفظها على القرص، مع إدارة المحتوى من خلال Runtime API.
  • تتوفر البادئة "@opt" والتي تستخدم الملفات الافتراضية فقط في حالة عدم وجود ملفات حقيقية على القرص.
  •  أصبح التحليل الآن أكثر صرامة أثناء معالجة HTTP/1 للتحقق من صحة هدف الطلب.
  • تم تقديم التوجيهات العامة (أكواد http-err وأكواد http-fail) التي تسمح لك بتعيين رموز حالة HTTP لتتبعها.
  • تأخذ طريقة uuid Fetch الآن وسيطة اختيارية تقوم بتعيين إصدار UUID على 4 أو 7
  • تم تحسين أداء نصوص Lua النصية المفردة التي تم تحميلها باستخدام توجيه "lua-load" بشكل ملحوظ.
  • يتم الآن دعم تنسيق أسطر السجل في JSON وCBOR.
  • أصبح من الممكن الآن إنشاء معرفات بتنسيق UUIDv7.

أخيرًا إذا كنت كذلك مهتم بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.