إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يدعم تخزين الكائنات الثنائية الكبيرة الآن بروتوكول 3.0 الخاص بنظام الملفات الشبكية (NFS). تحتوي هذه المقالة على توصيات تساعدك على تحسين أداء طلبات التخزين. لمعرفة المزيد حول دعم NFS 3.0 لتخزين Azure Blob، راجع دعم بروتوكول نظام ملفات الشبكة (NFS) 3.0 لتخزين Azure Blob.
إضافة عملاء لزيادة معدل النقل
يتم تحجيم Azure Blob Storage خطيا حتى يصل إلى الحد الأقصى للخروج إلى حساب التخزين والحد الأقصى للدخول. لذلك، يمكن للتطبيقات الخاصة بك تحقيق معدل نقل أعلى باستخدام المزيد من العملاء. لعرض حدود خروج حساب التخزين والدخول، راجع أهداف قابلية التوسع والأداء لحسابات التخزين القياسية.
يوضح المخطط التالي كيفية زيادة النطاق الترددي عند إضافة المزيد من العملاء. في هذا المخطط، العميل هو جهاز ظاهري (VM) ومع حساب تخزين قياسي للأغراض العامة v2.
يظهر المخطط التالي هذا التأثير نفسه عند تطبيقه على حساب تخزين كائن ثنائي كبير الحجم للكتلة المميزة.
استخدام حسابات تخزين كائن ثنائي كبير الحجم للكتلة المتميزة للتطبيقات الصغيرة
لا يمكن توسيع نطاق جميع التطبيقات عن طريق إضافة المزيد من العملاء. بالنسبة إلى هذه التطبيقات، يوفر حساب تخزين كائن ثنائي كبير الحجم للكتلة المتميزة من Azure زمن انتقال منخفضا ثابتا ومعدلات معاملات عالية. يمكن أن يصل حساب تخزين الكائن الثنائي كبير الحجم للكتلة المتميزة إلى الحد الأقصى للنطاق الترددي مع عدد أقل من مؤشرات الترابط والعملاء. على سبيل المثال، باستخدام عميل واحد، يمكن لحساب تخزين كائن ثنائي كبير الحجم للكتلة المتميزة تحقيق عرض النطاق الترددي 2.3x مقارنة بنفس الإعداد المستخدم مع حساب تخزين للأغراض العامة القياسية للأغراض العامة v2.
يظهر كل شريط في المخطط التالي الفرق في النطاق الترددي المحقق بين حسابات تخزين الأداء المتميزة والقياسية. مع زيادة عدد العملاء، ينخفض هذا الاختلاف.
تحسين حجم القراءة المسبقة لزيادة معدل نقل قراءة الملفات الكبيرة
تمثل معلمة read_ahead_kb kernel مقدار البيانات الإضافية التي يجب قراءتها بعد تلبية طلب قراءة معين. يمكنك زيادة هذه المعلمة إلى 16 ميبي بايت لتحسين معدل نقل قراءة الملفات الكبيرة.
export AZMNT=/your/container/mountpoint
echo 16384 > /sys/class/bdi/0:$(stat -c "%d" $AZMNT)/read_ahead_kb
تجنب الكتابة فوق البيانات بشكل متكرر
يستغرق إكمال عملية الكتابة فوق وقتا أطول من عملية الكتابة الجديدة. وذلك لأن عملية الكتابة فوق NFS، خاصة تحرير ملف جزئي في الموضع، هي مزيج من عدة عمليات كائن ثنائي كبير الحجم أساسية: قراءة وتعديل وعمليات كتابة. لذلك، التطبيق الذي يتطلب عمليات تحرير متكررة في مكان غير مناسب لحسابات تخزين blob الممكنة NFS.
نشر Azure HPC Cache للتطبيقات الحساسة لزمن الانتقال
قد تتطلب بعض التطبيقات زمن انتقال منخفض بالإضافة إلى معدل نقل مرتفع. يمكنك نشر Azure HPC Cache لتحسين زمن الانتقال بشكل كبير. تعرف على المزيد حول زمن الانتقال في تخزين Blob.
زيادة عدد اتصالات TCP
يمكنك استخدام nconnect خيار التحميل للحصول على أداء أعلى للقراءة والكتابة التجميعية من جهاز ظاهري واحد ولكن فقط إذا كانت نواة Linux الخاصة بك تحتوي على دعم Azure nconnect.
nconnect هو خيار تحميل Linux من جانب العميل الذي يسمح لك باستخدام اتصالات TCP متعددة بين العميل ونقطة نهاية خدمة Blob. يمكنك استخدام الخيار في nconnect أمر التحميل لتحديد عدد اتصالات TCP التي تريد إنشاؤها (على سبيل المثال: mount -t aznfs -o nconnect=16,sec=sys,vers=3,nolock,proto=tcp <storage-account-name>.blob.core.windows.net:/<storage-account-name>/<container-name> /nfsdatain).
مهم
في حين أن أحدث توزيعات Linux تدعم nconnect بشكل كامل، يجب عليك استخدام هذا الخيار فقط إذا كان kernel الخاص بك يحتوي على دعم Azure nconnect.
nconnect سيؤدي استخدام خيار التحميل بدون دعم Azure nconnect إلى تقليل معدل النقل، والتسبب في مهلات متعددة، والتسبب في عمل أوامر مثل READDIR و READIRPLUS بشكل غير صحيح.
يتوفر دعم Azure nconnect مع معظم نواة Ubuntu الأخيرة التي يمكن استخدامها مع أجهزة Azure الظاهرية. لمعرفة ما إذا كان دعم Azure nconnect متوفرا لنواتك، قم بتشغيل الأمر التالي.
[ -e /sys/module/sunrpc/parameters/enable_azure_nconnect ] && echo "Yes" || echo "No"
إذا كان دعم Azure nconnect متوفرا لنواتك، Yes طباعته إلى وحدة التحكم. وإلا، 'No تتم طباعة إلى وحدة التحكم.
إذا كان دعم Azure nconnect متوفرا، فبادر بتمكينه عن طريق تشغيل الأمر التالي.
echo Y > /sys/module/sunrpc/parameters/enable_azure_nconnect
توصيات أخرى حول أفضل الممارسات
استخدم الأجهزة الظاهرية ذات النطاق الترددي الكافي للشبكة.
استخدم نقاط تحميل متعددة عندما تسمح أحمال العمل الخاصة بك بذلك.
استخدم أكبر عدد ممكن من مؤشرات الترابط.
استخدم أحجام كتل كبيرة.
قم بإجراء طلبات التخزين من عميل موجود في نفس المنطقة مثل حساب التخزين. يمكن أن يؤدي ذلك إلى تحسين زمن انتقال الشبكة.
الخطوات التالية
لمعرفة المزيد حول دعم NFS 3.0 لتخزين Azure Blob، راجع دعم بروتوكول نظام ملفات الشبكة (NFS) 3.0 لتخزين Azure Blob.
للبدء، راجع تحميل تخزين Blob باستخدام بروتوكول نظام ملفات الشبكة (NFS) 3.0.