عربيالفرنسيةالإسبانية

Ad


OnWorks فافيكون

memcaslap - عبر الإنترنت في السحابة

قم بتشغيل memcaslap في موفر الاستضافة المجاني OnWorks عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر memcaslap الذي يمكن تشغيله في موفر الاستضافة المجاني OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


memaslap - وثائق libmemcached

موجز


ميماسلاب [خيارات]

--مساعدة

MEMCACHED_SERVERS

الوصف


com.memaslap هي أداة لتوليد التحميل وقياس الأداء لخوادم memcached. إنه يولد
عبء العمل القابل للتكوين مثل الخيوط ، والتوافق ، والوصلات ، ووقت التشغيل ، والكتابة ،
معدل الخطأ ، حجم المفتاح ، حجم القيمة ، الحصول على / تعيين نسبة ، الإنتاجية المتوقعة ، وما إلى ذلك.
علاوة على ذلك، فإنه يختبر أيضًا التحقق من البيانات، والتحقق من وقت انتهاء الصلاحية، وUDP، والثنائي
البروتوكول، واختبار الفيسبوك، واختبار النسخ المتماثل، والحصول المتعدد وإعادة الاتصال، وما إلى ذلك.

يدير Memaslap اتصالات الشبكة مثل memcached مع libevent. كل موضوع من memaslap
مرتبط بنواة وحدة المعالجة المركزية، ولا تتواصل جميع الخيوط مع بعضها البعض، وهناك
عدة اتصالات مأخذ التوصيل في كل موضوع. يحافظ كل اتصال على توزيع حجم المفتاح،
توزيع حجم القيمة، وتوزيع الأوامر في حد ذاته.

يمكنك تحديد الخوادم عبر com.memslap - الخوادم الخيار أو عبر متغير البيئة
MEMCACHED_SERVERS.

المزايا


تم تطوير Memslap للأغراض التالية:

يدير اتصالات الشبكة مع libevent بشكل غير متزامن.

قم بتعيين كلاً من TCP وUDP لاستخدام عمليات الإدخال والإخراج غير المحظورة.

تحسين التوازي: أداء أعلى في البيئات متعددة الخيوط.

يحسن كفاءة الوقت: سرعة معالجة أسرع.

يولد المفتاح والقيمة بشكل أكثر كفاءة؛ توزيع حجم المفتاح وحجم القيمة
التوزيع قابل للتكوين.

يدعم الحصول على الأوامر وتعدد الحصول عليها وتعيينها؛ توزيع الأوامر قابل للتكوين.

يدعم معدل التفويت الذي يمكن التحكم فيه ومعدل الكتابة الفوقية.

يدعم البيانات والتحقق من وقت انتهاء الصلاحية.

يدعم تفريغ المعلومات الإحصائية بشكل دوري.

يدعم الآلاف من اتصالات TCP.

يدعم البروتوكول الثنائي.

يدعم اختبار facebook (الذي تم ضبطه باستخدام TCP وmulti-get باستخدام UDP) واختبار النسخ المتماثل.

المواصفات


الطُرق الفعّالة التنفيذ of شبكة.
بالنسبة إلى memaslap، يستخدم كل من TCP وUDP عمليات إدخال/إخراج للشبكة غير محظورة. جميع أحداث الشبكة
تدار بواسطة libevent كما memcached. وحدة الشبكة الخاصة بـ memaslap تشبه memcached.
يمكن لـ Libevent التأكد من قدرة memaslap على التعامل مع الشبكة بكفاءة عالية.

الطُرق الفعّالة التنفيذ of المواضيع متعددة و التزامن
يمتلك Memslap تنفيذًا مشابهًا للخيوط المتعددة لـ memcached. Memslap ينشئ واحدًا
أو المزيد من المواضيع ذاتية الإدارة؛ يرتبط كل مؤشر ترابط بنواة وحدة المعالجة المركزية (CPU) واحدة في حالة اختبار النظام
تحديد تقارب وحدة المعالجة المركزية الأساسية.

بالإضافة إلى ذلك، يحتوي كل خيط على libevent لإدارة أحداث الشبكة؛ كل موضوع
يحتوي على واحد أو أكثر من التزامنات ذاتية الإدارة؛ ولكل تزامن مقبس واحد أو أكثر
روابط. جميع التزامنات لا تتواصل مع بعضها البعض على الرغم من أنها كذلك
في نفس الموضوع.

يمكن لـ Memslap إنشاء آلاف اتصالات المقابس، ولكل متزامن عشرات منها
اتصالات المقبس. كل تزامن يختار بشكل عشوائي أو تسلسلي مقبسًا واحدًا
يتم تشغيل الاتصال من تجمع اتصال المقبس الخاص به، لذلك يمكن لـ memaslap ضمان كل التزامن
يتعامل مع اتصال مقبس واحد في أي وقت. يمكن للمستخدمين تحديد عدد
التزامن واتصالات المقبس لكل تزامن حسب المتوقع
عبء العمل.

الطُرق الفعّالة التنفيذ of توليد مفتاح و قيمنا
من أجل تحسين كفاءة الوقت وكفاءة المساحة، يقوم memaslap بإنشاء عشوائي
جدول الأحرف يحتوي على 10 ملايين حرف. يتم إنشاء كافة لاحقات المفاتيح والقيم
من جدول الأحرف العشوائية هذا.

يستخدم Memslap الإزاحة في جدول الأحرف وطول السلسلة لتحديد أ
خيط. يمكن أن يوفر الكثير من الذاكرة. يحتوي كل مفتاح على جزأين، بادئة ولاحقة. ال
البادئة هي uint64_t، 8 بايت. من أجل التحقق من مجموعة البيانات من قبل، يحتاج memaslap إلى ذلك
تأكد من أن كل مفتاح فريد من نوعه، بحيث يستخدم البادئة لتحديد المفتاح. البادئة لا يمكن
تتضمن أحرفًا غير قانونية، مثل 'r' و'n' و'0' و' '. و memaslap لديه خوارزمية
لتتآكد من ذلك.

لا يقوم Memslap بإنشاء كافة الكائنات (أزواج القيمة الرئيسية) في البداية. انه فقط
ينشئ كائنات كافية لملء نافذة المهمة (كائنات 10 كيلو افتراضية) لكل منها
التزامن. يحتوي كل كائن على المعلومات الأساسية التالية، وبادئة المفتاح، ولاحقة المفتاح
الإزاحة في جدول الأحرف، وطول المفتاح، وإزاحة القيمة في جدول الأحرف، والقيمة
الطول.

في عملية العمل، يقوم كل تزامن بشكل تسلسلي أو عشوائي بتحديد كائن من
نافذة للقيام بعملية الإعداد أو الحصول على العملية. وفي الوقت نفسه، يتم تشغيل كل التزامن
كائنات من نافذتها وإضافة كائن جديد إليها.

الاشارات لكن مفيد مهمة جدولة
يستخدم Memslap libevent لجدولة جميع التزامنات في سلاسل الرسائل، وكل التزامن
جدولة المهام بناءً على نافذة المهام المحلية. Memslap يفترض أنه إذا كان كل التزامن
يحتفظ بنفس توزيع المفاتيح وتوزيع القيمة وتوزيع الأوامر من
في الخارج، يحافظ memaslap على التوزيع ككل. تتضمن كل نافذة مهمة الكثير
من الكائنات، يقوم كل كائن بتخزين معلوماته الأساسية، مثل المفتاح والقيمة ووقت انتهاء الصلاحية و
قريباً. في أي وقت، تحتفظ جميع الكائنات الموجودة في النافذة بنفس المفتاح والقيمة الثابتة
توزيع. إذا تمت الكتابة فوق كائن، فسيتم تحديث قيمة الكائن.
يتحقق Memslap من البيانات أو وقت انتهاء الصلاحية وفقًا لمعلومات الكائن المخزنة في الملف
نافذة المهمة.

يختار Libevent التزامن الذي سيتم التعامل معه بناءً على حدث شبكة محدد. ثم
التزامن يحدد الأمر (الحصول على أو تعيين) للعمل بناءً على الأمر
توزيع. إذا كان يحتاج إلى طرد كائن قديم وإضافة كائن جديد، من أجل الاحتفاظ به
نفس توزيع المفتاح والقيمة، يجب أن يكون للكائن الجديد نفس طول المفتاح و
طول القيمة.

إذا كان خادم memcached يحتوي على طبقتين من ذاكرة التخزين المؤقت (الذاكرة وSSD)، فسيتم تشغيل memaslap بطبقتين مختلفتين
يمكن أن تحصل أحجام النوافذ على معدلات تفويت مختلفة لذاكرة التخزين المؤقت. إذا أضاف memaslap كائنات كافية إلى ملف
النوافذ في البداية، ولا يمكن لذاكرة التخزين المؤقت لـ memcached تخزين جميع الكائنات
بعد التهيئة، سيحصل memaslap على بعض الكائنات من طبقة ذاكرة التخزين المؤقت الثانية. تسبب
طبقة ذاكرة التخزين المؤقت الأولى التي يجب تفويتها. بحيث يمكن للمستخدم تحديد حجم النافذة للحصول على المتوقع
معدل الضياع لطبقة ذاكرة التخزين المؤقت الأولى.

مفيد التنفيذ of خوادم متعددة , UDP ، TCP، متعدد الحصول و ثنائي بروتوكول
نظرًا لأن كل خيط يتم التحكم فيه ذاتيًا، يمكن لـ memaslap تعيين سلاسل رسائل مختلفة للتعامل معها
خوادم memcached مختلفة. هذه مجرد إحدى الطرق التي تتعدد بها اختبارات memaslap
الخوادم. القيد الوحيد هو أن عدد الخوادم لا يمكن أن يكون أكبر من عدد الخوادم
عدد المواضيع. الطريقة الأخرى لاختبار خوادم متعددة هي اختبار النسخ المتماثل. كل
يحتوي التزامن على اتصال مأخذ توصيل واحد لكل خادم memcached. للتنفيذ،
يمكن لـ memaslap تعيين بعض الكائنات على خادم memcached واحد، والحصول على هذه الكائنات من ملف
خوادم أخرى.

بشكل افتراضي، يقوم Memslap بتنفيذ عملية الحصول على ملف واحد. إذا قام المستخدم بتحديد خيار الحصول المتعدد، فسيقوم memaslap بذلك
اجمع ما يكفي من الأوامر واحزمها وأرسلها معًا.

يقوم Memslap باختبار كل من بروتوكول ASCII والبروتوكول الثنائي، ولكنه يعمل على ASCII
البروتوكول بشكل افتراضي. يعمل Memslap بشكل افتراضي على بروتوكول TCP، ولكنه يختبر أيضًا UDP.
نظرًا لأن UDP غير موثوق به، فقد يحدث إسقاط الحزم وحزم خارج الترتيب. ميمسلاب
يقوم بإنشاء مخزن مؤقت للذاكرة للتعامل مع هذه المشكلات. يحاول Memslap قراءة كل الردود
بيانات أمر واحد من الخادم ويعيد ترتيب بيانات الاستجابة. إذا حصلت بعض الحزم
في حال فقدانها، يمكن لآلية مهلة الانتظار أن تضمن التخلص من الطرود غير المخبوزة
سيتم إرسال الأمر التالي.

الاستعمال


فيما يلي بعض نماذج الاستخدام:

memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F config -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F config -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F config -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

يجب على المستخدم تحديد خادم واحد على الأقل لتشغيل memaslap. بقية المعلمات لديها
القيم الافتراضية كما هو موضح أدناه:

رقم الخيط = 1 التزامن = 16

وقت التشغيل = 600 ثانية ملف التكوين = NULL

حجم المفتاح = 64 حجم القيمة = 1024

الحصول على/المجموعة = 9:1 حجم النافذة = 10 كيلو

رقم التنفيذ = 0 الحصول على مفرد = صحيح

Multi-get = false عدد المقابس لكل تزامن = 1

إعادة الاتصال = خطأ التحقق من البيانات = خطأ

التحقق من وقت انتهاء الصلاحية = بروتوكول ASCII الخاطئ = صحيح

البروتوكول الثنائي = معلومات إحصائية خاطئة

بشكل دوري = خطأ

نسبة الكتابة فوق = 0% UDP = خطأ

TCP = صحيح الحد من الإنتاجية = خطأ

اختبار الفيسبوك = خطأ اختبار النسخ المتماثل = خطأ

القفل حجم، قيمنا المقاسات و أمر التوزيع.
تتم قراءة جميع التوزيعات من ملف التكوين المحدد بواسطة المستخدم
الخيار "-cfg_cmd". إذا لم يحدد المستخدم ملف التكوين، فسيتم تشغيل memaslap
بالتوزيع الافتراضي (حجم المفتاح = 64، حجم القيمة = 1024، الحصول على/المجموعة = 9:1). ل
للحصول على معلومات حول كيفية تحرير ملف التكوين، راجع "ملف التكوين"
والقسم الخاص به.

الحد الأدنى لحجم المفتاح هو 16 بايت؛ الحد الأقصى لحجم المفتاح هو 250 بايت. دقة
النسبة هي 0.001. سيتم تقريب نسبة التوزيع إلى 3 منازل عشرية.

الحد الأدنى لحجم القيمة هو 1 بايت؛ الحد الأقصى لحجم القيمة هو 1M بايت. دقة
النسبة هي 0.001. سيتم تقريب نسبة التوزيع إلى 3 منازل عشرية.
حاليًا، يتم تعيين memaslap فقط والحصول على الأوامر. وتم اختباره بنسبة 100% وتم الحصول عليه بنسبة 100%.
للحصول على 100%، سيتم تعيين بعض الكائنات مسبقًا على الخادم.

متعدد الخيوط و التزامن
يستفيد الأداء العالي لـ memaslap من الجدول الزمني الخاص للخيط و
التزامن. من المهم تحديد العدد المناسب منهم. الرقم الافتراضي ل
المواضيع هي 1؛ العدد الافتراضي للتزامن هو 16. يمكن للمستخدم استخدام "- المواضيع" و
"--التزامن" لتحديد هذه المتغيرات.

إذا كان النظام يختبر إعداد تقارب وحدة المعالجة المركزية وعدد مؤشرات الترابط المحددة من قبل المستخدم
أكبر من 1، سيحاول memaslap ربط كل خيط بنواة مختلفة لوحدة المعالجة المركزية. حتى إذا
إذا كنت ترغب في الحصول على أفضل أداء memaslap، فمن الأفضل تحديد عدد
خيط يساوي عدد نوى وحدة المعالجة المركزية. يمكن لعدد المواضيع المحددة من قبل المستخدم
يكون أيضًا أقل أو أكبر من عدد نوى وحدة المعالجة المركزية. بسبب الحد من
التنفيذ، يمكن أن يكون عدد التزامنات مضاعفًا لعدد
الخيوط.

1. لنظام 8 نوى وحدة المعالجة المركزية

فمثلا:

--الخيوط = 2 --التزامن = 128

--الخيوط = 8 --التزامن = 128

--الخيوط = 8 --التزامن = 256

--الخيوط = 12 --التزامن = 144

2. لنظام 16 نوى وحدة المعالجة المركزية

فمثلا:

--الخيوط = 8 --التزامن = 128

--الخيوط = 16 --التزامن = 256

--الخيوط = 16 --التزامن = 512

--الخيوط = 24 --التزامن = 288

يعمل memaslap بشكل جيد للغاية، عند استخدامه لاختبار أداء خوادم memcached.
في معظم الأحيان، يكون عنق الزجاجة هو الشبكة أو الخادم. إذا لسبب ما المستخدم
يريد الحد من أداء memaslap، هناك طريقتان للقيام بذلك:

تقليل عدد المواضيع والتزامنات. استخدم الخيار "--tps" الذي يستخدمه memaslap
يوفر للحد من الإنتاجية. يتيح هذا الخيار للمستخدم الحصول على ما هو متوقع
الإنتاجية. على سبيل المثال، افترض أن الحد الأقصى للإنتاجية هو 50 كوب/ثانية لوحدة معينة
التكوين، يمكنك تحديد الإنتاجية مساوية أو أقل من الحد الأقصى للإنتاجية
باستخدام خيار "--tps".

نافذة المقاسات
في معظم الأحيان، لا يحتاج المستخدم إلى تحديد حجم النافذة. النافذة الافتراضية
الحجم 10 كيلو بالنسبة لـ Schooner Memcached، يمكن للمستخدم تحديد أحجام النوافذ المختلفة التي يريد الحصول عليها
معدلات تفويت ذاكرة التخزين المؤقت المختلفة بناءً على حالة الاختبار. Memslap يختبر معدل تفويت ذاكرة التخزين المؤقت بين
0% و 100%. إذا كنت تستخدم هذه الأداة المساعدة لاختبار أداء Schooner Memcached، فإنك
يمكن تحديد حجم النافذة المناسب للحصول على معدل تفويت ذاكرة التخزين المؤقت المتوقع. الصيغة ل
حساب حجم النافذة هو كما يلي:

افترض أن حجم المفتاح هو 128 بايت، وحجم القيمة هو 2048 بايت، و
التزامن = 128.

1. حجم ذاكرة التخزين المؤقت الصغيرة = 1 مليون، ذاكرة التخزين المؤقت المفقودة بنسبة 100% (يتم الحصول على جميع البيانات من SSD). win_size=10k

2.cache_size=4G

(1). معدل فقدان ذاكرة التخزين المؤقت 0%

win_size=8k

(2). معدل فقدان ذاكرة التخزين المؤقت 5%

win_size=11k

3.cache_size=16G

(1). معدل فقدان ذاكرة التخزين المؤقت 0%

win_size=32k

(2). ملكة جمال ذاكرة التخزين المؤقت

معدل 5٪

win_size=46k

معادلة حساب حجم النافذة لمعدل تفويت ذاكرة التخزين المؤقت 0%:

حجم ذاكرة التخزين المؤقت / التزامن / (حجم المفتاح + حجم_القيمة) * 0.5

معادلة حساب حجم النافذة لمعدل تفويت ذاكرة التخزين المؤقت 5%:

حجم ذاكرة التخزين المؤقت / التزامن / (حجم المفتاح + حجم_القيمة) * 0.7

التحقق
يقوم Memslap باختبار التحقق من البيانات والتحقق من وقت انتهاء الصلاحية. يمكن للمستخدم استخدام
"--verify=" أو "-v" لتحديد نسبة التحقق من البيانات. من الناحية النظرية، فإنه يختبر
التحقق من البيانات بنسبة 100%. يمكن للمستخدم استخدام "--exp_verify=" أو "-e" لتحديد النسبة
للتحقق من انتهاء الوقت. من الناحية النظرية، يتم اختبار التحقق من وقت انتهاء الصلاحية بنسبة 100%. تحديد
خيارات "--verbose" للحصول على معلومات أكثر تفصيلاً عن الخطأ.

على سبيل المثال: --exp_verify=0.01 –verify=0.1، فهذا يعني أن 1% من الكائنات المعينة مع
وقت انتهاء الصلاحية، سيتم التحقق من 10% من العناصر التي تم الحصول عليها. إذا تم الحصول على الكائنات،
سوف memaslap التحقق من وقت انتهاء الصلاحية والقيمة.

خوادم متعددة و متعدد التكوين
تقوم Memslap باختبار الخوادم المتعددة بناءً على سلسلة رسائل ذاتية الإدارة. هناك قيود على ذلك
لا يمكن أن يكون عدد الخوادم أكبر من عدد المواضيع. Memslap يعين واحدًا
موضوع للتعامل مع خادم واحد على الأقل. يمكن للمستخدم استخدام خيار "--servers =" أو "-s" للقيام بذلك
تحديد خوادم متعددة.

فمثلا:

--servers=10.1.1.1:11211,10.1.1.2:11212,10.1.1.3:11213 --threads=6 --concurrency=36

الأمر أعلاه يعني أن هناك 6 سلاسل رسائل، كل سلسلة رسائل تحتوي على 6 تكرارات
وأن الخيوط 0 و3 تتعامل مع الخادم 0 (10.1.1.1)؛ المواضيع 1 و 4 التعامل مع الخادم 1
(10.1.1.2)؛ والخيط 2 و5 يتعاملان مع الخادم 2 (10.1.1.3).

جميع المواضيع والتزامنات في memaslap تخضع للحكم الذاتي.

وكذلك الميماسلاب. يمكن للمستخدم بدء تشغيل العديد من مثيلات memaslap. يمكن للمستخدم تشغيل
memaslap على أجهزة عملاء مختلفة للتواصل مع نفس خادم memcached على
نفس. من المستحسن أن يبدأ المستخدم memaslap مختلفًا على أجهزة مختلفة باستخدام
نفس التكوين.

يجري مع تنفيذ عدد طريقة or الوقت طريقة
يعمل memaslap الافتراضي مع وضع الوقت. وقت التشغيل الافتراضي هو 10 دقائق. إذا كان مرات
خارج، سوف يخرج memaslap. لا تحدد كلا من وضع الأرقام ووضع الوقت في نفس الوقت
وقت؛ فقط حدد واحدًا بدلاً من ذلك.

فمثلا:

--time=30s (وهذا يعني أن الاختبار سيستمر لمدة 30 ثانية.)

--execute_number=100000 (يعني أنه بعد تشغيل 100000 أمر، سيخرج الاختبار.)

تفريغ إحصائية معلومات دوريا.
يمكن للمستخدم استخدام "--stat_freq =" أو "-S" لتحديد التردد.

فمثلا:

--stat_freq=20s

سوف يقوم Memslap بتفريغ إحصائيات الأوامر (الحصول على وتعيين) عند تكرار كل منها
20 ثواني.

لمزيد من المعلومات حول تنسيق تفريغ المعلومات الإحصائية، راجع "تنسيق
قسم "الإخراج".

متعدد الحصول
يمكن للمستخدم استخدام "--division =" أو "-d" لتحديد عدد مفاتيح الحصول على متعددة. ميمسلاب بواسطة
الافتراضي يحصل مع TCP. يقوم Memslap أيضًا باختبار التحقق من البيانات ووقت انتهاء الصلاحية
التحقق من الحصول على متعدد.

يقوم Memslap باختبار multi-get باستخدام كل من TCP وUDP. بسبب التنفيذ المختلف
بروتوكول ASCII والبروتوكول الثنائي، هناك بعض الاختلافات بين الاثنين. ل
بالنسبة لبروتوكول ASCII، يرسل memaslap واحدًا "multi-get" إلى الخادم مرة واحدة. بالنسبة للثنائي
البروتوكول، يرسل memaslap عدة أوامر get فردية معًا باسم "multi-get" إلى ملف
الخادم.

UDP و TCP
يقوم Memslap باختبار كل من UDP وTCP. بالنسبة لـ TCP، لا يقوم memaslap بإعادة الاتصال بخادم memcached
إذا فقدت اتصالات المقبس. إذا فقدت كافة اتصالات مأخذ التوصيل أو خادم memcached
تعطل، memaslap سوف يخرج. إذا قام المستخدم بتحديد خيار "--إعادة الاتصال" عند المقبس
تم فقدان الاتصالات، وسوف يتم إعادة توصيلها.

يمكن للمستخدم استخدام "--udp" لتمكين ميزة UDP، ولكن UDP يأتي مع بعض القيود:

لا يمكن لـ UDP تعيين بيانات أكثر من 1400 بايت.

لم يتم اختبار UDP بواسطة البروتوكول الثنائي لأن البروتوكول الثنائي لـ memcached يقوم بذلك
لا اختبارات ذلك.

لا يقوم UDP باختبار إعادة الاتصال.

فيسبوك تجربه بالعربي
قم بتعيين البيانات باستخدام TCP والحصول المتعدد باستخدام UDP. حدد الخيارات التالية:

"--فيسبوك --division=50"

إذا كنت تريد إنشاء الآلاف من اتصالات TCP، فحدد

خيار "--conn_sock=".

على سبيل المثال: --facebook --division=50 --conn_sock=200

الأمر أعلاه يعني أن memaslap سيقوم باختبار الفيسبوك، كل عملة متزامنة بها 200
اتصالات مأخذ التوصيل TCP ومقبس UDP واحد.

يقوم Memslap بتعيين الكائنات باستخدام مقبس TCP، ويحصل على 50 كائنًا مرة واحدة باستخدام UDP
مأخذ.

إذا حددت "--division=50"، فيجب أن يكون حجم المفتاح أقل من 25 بايت لأن UDP
حجم الحزمة هو 1400 بايت.

النسخ المتماثل تجربه بالعربي
لاختبار النسخ المتماثل، يجب على المستخدم تحديد خادمين على الأقل من خوادم الذاكرة المؤقتة. يمكن للمستخدم
استخدم خيار "—rep_write=" لتمكين الميزة.

فمثلا:

--الخوادم=10.1.1.1:11211,10.1.1.2:11212 –rep_write=2

الأمر أعلاه يعني أن هناك 2 خوادم memcached للنسخ المتماثل، وسيتم تعيين memaslap
الكائنات لكل من الخادم 0 والخادم 1، احصل على الكائنات التي تم تعيينها على الخادم 0 من قبل
الخادم 1، وكذلك الحصول على الكائنات التي تم تعيينها على الخادم 1 من قبل من الخادم 0. إذا كان الخادم 0
إذا تعطل، فسوف يحصل memaslap على الكائنات من الخادم 1 فقط. إذا عاد الخادم 0 إلى الحياة
مرة أخرى، سيقوم memaslap بإعادة الاتصال بالخادم 0. إذا تعطل كل من الخادم 0 والخادم 1، فسيقوم memaslap
سيخرج.

الدعم الآلاف of TCP علاقات
ابدأ تشغيل memaslap باستخدام "--conn_sock=" أو "-n" لتمكين هذه الميزة. تأكد من أن الخاص بك
يمكن للنظام اختبار فتح آلاف الملفات وإنشاء آلاف المقابس. لكن،
لا تختبر هذه الميزة إعادة الاتصال في حالة قطع مآخذ التوصيل.

فمثلا:

--الخيوط=8 --التزامن=128 --conn_sock=128

الأمر أعلاه يعني أن memaslap يبدأ تشغيل 8 سلاسل، كل خيط يحتوي على 16
التزامنات، تحتوي كل عملة متزامنة على 128 اتصالاً بمقبس TCP، ويبلغ العدد الإجمالي لـ
اتصالات مقبس TCP هي 128 * 128 = 16384.

الدعم ثنائي بروتوكول
ابدأ تشغيل memaslap باستخدام خيارات "--binary" أو "-B" لتمكين هذه الميزة. إنه يختبر كل
الميزات المذكورة أعلاه باستثناء UDP، لأن أحدث إصدار من memcached 1.3.3 لا يطبق النظام الثنائي
بروتوكول UDP.

فمثلا:

--الثنائية

نظرًا لأن memcached 1.3.3 لا يطبق بروتوكول UDP الثنائي، فإن memaslap لا يختبر UDP.
بالإضافة إلى ذلك، memcached 1.3.3 لا يختبر الحصول المتعدد. إذا حددت "--division=50"
الخيار، فهو يرسل فقط 50 أمرًا get معًا باسم "mulit-get" إلى الخادم.

CONFIGURATION FILE


يصف هذا القسم تنسيق ملف التكوين. افتراضيا عندما لا
تم تحديد ملف التكوين memaslap الذي يقرأ الملف الافتراضي الموجود في ~/.memaslap.cnf.

فيما يلي نموذج لملف التكوين:

-------------------------------------------------- -------------------------
#التعليقات يجب أن تبدأ بـ "#"
#مفتاح
نسبة #start_len end_len
#
# نطاق طول المفتاح من start_len إلى end_len
#start_len يجب أن يكون مساويًا أو أكبر من 16
#end_len يجب أن يكون مساويًا أو أقل من 250
#start_len يجب أن يكون مساويًا أو أكبر من end_len
سيقوم #memaslap بإنشاء مفاتيح وفقًا لنطاق المفاتيح
#proportion: يشير إلى المفاتيح التي تم إنشاؤها من حسابات نطاق واحد للإجمالي
المفاتيح التي تم إنشاؤها
#
#example1: النطاق الرئيسي 16~100 حسابات لـ 80%
# النطاق الرئيسي 101 ~ 200 حسابات بنسبة 10٪
# النطاق الرئيسي 201 ~ 250 حسابات بنسبة 10٪
# الإجمالي يجب أن يكون 1 (0.8+0.1+0.1 = 1)
#
# 16
# 101
# 201
#
#example2: يبلغ طول جميع المفاتيح 128 بايت
#
# 128
مفتاح
128 128 1
#قيمة
نسبة #start_len end_len
#
يتراوح طول #القيمة من start_len إلى end_len
#start_len يجب أن يكون مساويًا أو أكبر من 1
#end_len يجب أن يكون مساويًا أو أقل من 1M
#start_len يجب أن يكون مساويًا أو أكبر من end_len
سيقوم #memaslap بإنشاء قيم وفقًا لنطاق القيمة
#نسبة: تشير إلى القيم التي تم إنشاؤها من حسابات نطاق واحد لـ
إجمالي القيم المولدة
#
#example1: نطاق القيمة 1~1000 حسابات لـ 80%
# نطاق القيمة 1001 ~ 10000 حسابات بنسبة 10٪
# نطاق القيمة 10001 ~ 100000 حسابات بنسبة 10٪
# الإجمالي يجب أن يكون 1 (0.8+0.1+0.1 = 1)
#
# 1
# 1001
# 10001
#
#example2: يبلغ طول القيمة 128 بايت
#
# 128
قيمنا
2048 2048 1
# سمد
#cmd_type cmd_proportion
#
# حاليًا memaslap فقط اختبارات الحصول على الأوامر وتعيينها.
#
#cmd_type
#مجموعة 0
#احصل على 1
#
#مثال: تعيين حسابات الأوامر بنسبة 50%
# الحصول على حسابات القيادة بنسبة 50%
# يجب أن يكون الإجمالي 1 (0.5+0.5 = 1)
#
# كمد
#0 0.5
#1 0.5
كمد
0 0.1
1.0 0.9

FORMAT OF OUTPUT


في البداية، يعرض memaslap بعض معلومات التكوين كما يلي:

الخوادم : 127.0.0.1:11211

عدد الخيوط: 1

التزامن: 16

وقت التشغيل: 20 ثانية

حجم النوافذ: 10 ك

نسبة المجموعة: set_prop=0.10

الحصول على النسبة: get_prop=0.90

في
الخوادم : "الخوادم"
الخوادم التي يستخدمها memaslap.

عدد المواضيع
عدد المواضيع التي يعمل بها memaslap.

التزامن
عدد التزامنات التي يعمل بها memaslap.

وقت التشغيل
كم من الوقت لتشغيل memaslap.

حجم النوافذ
حجم نافذة المهمة لكل التزامن.

تعيين نسبة
نسبة الأمر المحدد.

الحصول على نسبة
نسبة الحصول على الأمر.

إخراج الإحصائيات الديناميكية يشبه هذا:

-------------------------------------------------- -------------------------------------------------- -----------------------------
احصل على الإحصائيات
اكتب الوقت (الأوقات) Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
متوسط ​​(لنا) Std_dev Geo_dist
الفترة 5 345826 69165 65.3 0 27 2198 203
95.43 177.29
العالمي 20 1257935 62896 71.8 0 26 3791 224
117.79 192.60

تعيين الإحصائيات
اكتب الوقت (الأوقات) Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
متوسط ​​(لنا) Std_dev Geo_dist
الفترة 5 38425 7685 7.3 0 42 628 240
88.05 220.21
العالمي 20 139780 6989 8.0 0 37 3790 253
117.93 224.83

إحصائيات إجمالية
اكتب الوقت (الأوقات) Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
متوسط ​​(لنا) Std_dev Geo_dist
الفترة 5 384252 76850 72.5 0 27 2198 207
94.72 181.18
العالمي 20 1397720 69886 79.7 0 26 3791 227
117.93 195.60
-------------------------------------------------- -------------------------------------------------- -----------------------------

في
احصل على الإحصائيات
معلومات إحصائيات الحصول على الأمر

تعيين الإحصائيات
معلومات إحصائيات الأمر المحدد

إحصائيات إجمالية
معلومات إحصائية لكل من الأمر get وset

فترة
النتيجة خلال فترة

العالمية
النتائج المتراكمة

مكتب خدمات المشاريع
إجمالي العمليات

TPS
الإنتاجية والعمليات / ثانية

شبكة
معدل الشبكة

Get_miss
كم عدد الأشياء التي لا يمكن الحصول عليها

اقل شئ
الحد الأدنى لوقت الاستجابة

اكثر شئ
الحد الأقصى لوقت الاستجابة

المتوسط:
متوسط ​​زمن الاستجابة

الأمراض المنقولة جنسيا ديف
الانحراف المعياري لزمن الاستجابة

Geo_dist
التوزيع الهندسي على أساس الدالة الأسية الطبيعية

في النهاية، سوف يقوم memaslap بإخراج شيء مثل هذا:

-------------------------------------------------- -------------------------------------------------- -----------------------------
الحصول على إحصائيات (1257956 حدثًا)
الحد الأدنى: 26
الحد الأقصى: 3791
المتوسط: 224
الجغرافية: 192.60
الأمراض المنقولة جنسيا: 116.23
حي السجل 2:
4: 0 10 84490 215345
8: 484890 459823 12543 824
شنومكس: شنومكس

ضبط الإحصائيات (139782 حدثًا)
الحد الأدنى: 37
الحد الأقصى: 3790
المتوسط: 253
الجغرافية: 224.84
الأمراض المنقولة جنسيا: 116.83
حي السجل 2:
4: 0 0 4200 16988
8: 50784 65574 2064 167
شنومكس: شنومكس

إجمالي الإحصائيات (1397738 حدث)
الحد الأدنى: 26
الحد الأقصى: 3791
المتوسط: 227
الجغرافية: 195.60
الأمراض المنقولة جنسيا: 116.60
حي السجل 2:
4: 0 10 88690 232333
8: 535674 525397 14607 991
شنومكس: شنومكس

cmd_get: 1257969
كمد_سيت: 139785
الحصول على_المفقودات: 0
التحقق_المفقود: 0
فشل التحقق: 0
منتهية الصلاحية_الحصول على: 0
غير منتهية الصلاحية_ونجيت: 0
بايت_كتابة: 242516030
قراءة_البايت: 1003702556
كائن_بايت: 152086080
اضطراب الحزمة: 0
حزمة_قطرة: 0
Udp_timeout: 0

وقت التشغيل: 20.0 ثانية العمليات: 1397754 TPS: 69817 Net_rate: 59.4M/s
-------------------------------------------------- -------------------------------------------------- -----------------------------

في
احصل على الإحصائيات
الحصول على إحصائيات وقت الاستجابة

تعيين الإحصائيات
تعيين إحصائيات وقت الاستجابة

إحصائيات إجمالية
كلاهما يحصلان على إحصائيات وقت الاستجابة ويضعانها

اقل شئ
زمن الاستجابة المتراكم والحد الأدنى

اكثر شئ
زمن الاستجابة المتراكم والحد الأقصى

متوسط
زمن الاستجابة التراكمي والمتوسط

الأمراض المنقولة جنسيا
الانحراف المعياري لزمن الاستجابة

حي Log2
التوزيع الهندسي على أساس اللوغاريتم 2

cmd_get
إجمالي تنفيذ الأوامر

cmd_set
تم تنفيذ إجمالي أوامر المجموعة

get_misses
كم عدد العناصر التي لا يمكن الحصول عليها من الخادم

Verified_misses
كم عدد العناصر التي تحتاج إلى التحقق منها ولكن لا يمكن الحصول عليها

Verified_failed
كم عدد الأشياء ذات القيمة المستمرة

Expedid_get
كم عدد العناصر منتهية الصلاحية لكننا نحصل عليها

unexpired_unget
كم عدد الأشياء غير منتهية الصلاحية ولكن لا يمكننا الحصول عليها

write_bytes
إجمالي البايتات المكتوبة

read_bytes
إجمالي وحدات البايت المقروءة

object_bytes
إجمالي بايت الكائن

packet_disorder
كم عدد حزم UDP التي تعاني من الفوضى

packet_drop
كم عدد حزم UDP المفقودة

udp_timeout
كم مرة تحدث مهلة UDP

وقت التشغيل
إجمالي وقت التشغيل

مكتب خدمات المشاريع
إجمالي العمليات

TPS
الإنتاجية والعمليات / ثانية

معدل صافي
متوسط ​​معدل الشبكة

OPTIONS


-س، --الخوادم=
قم بإدراج خادم واحد أو أكثر للاتصال به. يجب أن يكون عدد الخوادم أقل من عدد المواضيع.
على سبيل المثال: --servers=localhost:1234,localhost:11211

-T ، - الخيوط =
عدد المواضيع لبدء التشغيل، يساوي بشكل أفضل أرقام وحدة المعالجة المركزية. الافتراضي 8.

-c ، - العملة =
عدد التزامن المطلوب محاكاته مع التحميل. الافتراضي 128.

-ن، --conn_sock=
عدد جوارب TCP لكل عملة متزامنة. الافتراضي 1.

-x ، --execute_number=
عدد العمليات (الحصول والضبط) التي سيتم تنفيذها للاختبار المحدد. الافتراضي 1000000.

-t ، - الوقت =
كم من الوقت سيتم تشغيل الاختبار، اللاحقة: ثانية ثانية، دقيقة دقيقة، ساعات ساعة، أيام على سبيل المثال:
--الوقت = 2 ساعة.

-F، --cfg_cmd=
قم بتحميل ملف التكوين للحصول على قائمة توزيع الأوامر والمفتاح والقيمة.

-w ، --win_size=
حجم نافذة المهمة لكل تزامن، اللاحقة: K، M، على سبيل المثال: --win_size=10k. تقصير
10K.

-X ، --fixed_size=
طول ثابت للقيمة.

-الخامس، --التحقق=
نسبة التحقق من التاريخ، على سبيل المثال: --verify=0.01

-د، --القسم=
عدد المفاتيح التي يمكن الحصول عليها مرة واحدة. الافتراضي 1، يعني الحصول على واحد.

-س، --stat_freq=
تكرار إغراق المعلومات الإحصائية. اللاحقة: ثانية-ثانية، دقيقة-دقيقة، على سبيل المثال:
--resp_freq=10s.

-e، --exp_verify=
نسبة الكائنات التي لها وقت انتهاء الصلاحية، على سبيل المثال: --exp_verify=0.01. الافتراضي لا
كائن مع انتهاء الوقت

-o ، --الكتابة =
نسبة الكائنات التي تحتاج إلى الكتابة الفوقية، على سبيل المثال: --overwrite=0.01. الافتراضي أبدا
الكتابة فوق الكائن.

-R, - أعد الاتصال
اختبارات إعادة الاتصال، عند إغلاق الاتصال سيتم إعادة الاتصال.

-U, --udp
اختبارات UDP، يستخدم memaslap الافتراضي TCP، ويجب أن يكون منفذ TCP ومنفذ UDP للخادم هو نفسه.

-a, --فيسبوك
ما إذا كان يتيح ميزة اختبار facebook، أو يتم ضبطه باستخدام TCP أو multi-get باستخدام UDP.

-B, --الثنائية
ما إذا كان يمكّن البروتوكول الثنائي. الافتراضي مع بروتوكول ASCII.

-P ، --tps=
الإنتاجية المتوقعة، اللاحقة: K، على سبيل المثال: --tps=10k.

-p ، --rep_write=
يمكن للخوادم n الأولى كتابة البيانات، على سبيل المثال: --rep_write=2.

-b, - الإسراف
ما إذا كان يقوم بإخراج معلومات تفصيلية عند فشل عملية التحقق.

-h, --مساعدة
قم بعرض هذه الرسالة ثم قم بالخروج.

-V, --الإصدار
عرض إصدار التطبيق ثم الخروج.

أمثلة


memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F config -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F config -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F config -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

القائمة


لمعرفة المزيد من المعلومات ، يرجى التحقق من: http://libmemcached.org/

مؤلفون


مينجكيانج تشوانغ[البريد الإلكتروني محمي]> (تكنولوجيا المركب الشراعي) بريان أكر، <‐
[البريد الإلكتروني محمي]>

استخدم memcaslap عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

  • 1
    جرعة كبيرة
    جرعة كبيرة
    SWIG هي أداة لتطوير البرمجيات
    يربط البرامج المكتوبة باللغتين C و
    C ++ مع مجموعة متنوعة من المستويات العالية
    لغات البرمجة. يستخدم SWIG مع
    مختلف...
    تنزيل SWIG
  • 2
    موضوع WooCommerce Nextjs React
    موضوع WooCommerce Nextjs React
    React WooCommerce theme ، الذي تم إنشاؤه باستخدام
    التالي JS و Webpack و Babel و Node و
    Express ، باستخدام GraphQL و Apollo
    عميل. متجر WooCommerce في React (
    يحتوي على: المنتجات ...
    قم بتنزيل WooCommerce Nextjs React Theme
  • 3
    Archlabs_repo
    Archlabs_repo
    حزمة إعادة الشراء لـ ArchLabs هذا ملف
    التطبيق الذي يمكن جلبه أيضًا
    تبدأ من
    https://sourceforge.net/projects/archlabs-repo/.
    تم استضافته في OnWorks في ...
    تحميل برنامج Archlabs_repo
  • 4
    مشروع زفير
    مشروع زفير
    مشروع Zephyr هو جيل جديد
    نظام التشغيل في الوقت الحقيقي (RTOS)
    يدعم أجهزة متعددة
    معماريات. لأنه يقوم على أ
    نواة بصمة صغيرة ...
    تحميل مشروع زفير
  • 5
    سلبيات
    سلبيات
    SCons هي أداة لبناء البرمجيات
    هذا بديل ممتاز لـ
    الكلاسيكية "Make" أداة البناء التي
    كلنا نعرف ونحب. SCons هو
    نفذت ...
    تنزيل SCons
  • 6
    PSeInt
    PSeInt
    PSeInt هو مترجم شفوي زائف لـ
    طلاب البرمجة الناطقين بالإسبانية.
    الغرض الرئيسي منه هو أن تكون أداة لـ
    التعلم وفهم الأساسيات
    تصور ...
    تنزيل PSeInt
  • أكثر "

أوامر لينكس

Ad