ForHosting KIT · أدوات المطورين

احسب شريحة ثابتة لنسبة الطرح التدريجي للميزات

لا يكون الطرح النسبي مفيدًا إلا إذا حصل الشخص نفسه على القرار نفسه في كل طلب. تحوّل هذه الحاسبة معرّفًا ثابتًا لمستخدم أو حساب أو جهاز أو مستأجر إلى واحدة من 10,000 شريحة حتمية، ثم تقارنها بنسبة الطرح المحددة.

● Betaمجاني · داخل متصفحك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

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

اختاروا معرّفًا يمثّل موضوع الطرح

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

افهموا طريقة حساب الشريحة الحتمية

ترمّز الإمكانية المعرّف بصيغة UTF-8 وتطبّق خوارزمية التجزئة FNV-1a ذات 32 بت. ثم تُختزل قيمة التجزئة غير الموقعة إلى واحدة من 10,000 شريحة من نقاط الأساس، وتُعرض كرقم بين 0 و99.99. يُدرج الموضوع عندما تكون شريحته أقل حصرًا من نسبة الطرح المطلوبة مضروبة في 100. تضمن قاعدة الحد هذه نقطتي نهاية واضحتين: لا يدرج الصفر بالمئة أحدًا، بينما تدرج المئة بالمئة الجميع. كما تتيح تغييرات بمقدار 0.01 نقطة مئوية. ولأن العملية لا تستخدم بذرة عشوائية ولا وقتًا ولا تخزينًا ولا اتصالًا بالشبكة، فإن المعرّف والنسبة نفسيهما يعطيان النتيجة نفسها دائمًا. تحافظ زيادة النسبة على جميع المدرجين سابقًا وتضيف معرّفات من نطاق الشرائح التالي، بينما تزيلها زيادةً من الطرف الأعلى عند خفض النسبة. تصلح التجزئة لتعيين الطرح تشغيليًا، وليست مخصصة للأمن التشفيري. فلا تعدّوا القيمة المعادة سرًا، ولا تستخدموها لإخفاء المعرّفات أو لاتخاذ قرارات التفويض.

استخدموا النتيجة بأمان ضمن مسار الإصدار

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

تنفيذ إصدار إنتاجي على مراحل

اعرضوا ميزة جديدة على جزء ثابت من الجمهور المؤهل، ثم ارفعوا النسبة من دون إعادة توزيع من أُدرجوا سابقًا.

الحفاظ على اتساق تجربة المستأجر

احسبوا تجزئة معرّف حساب أو مستأجر كي يتلقى جميع أعضاء المؤسسة الواحدة القرار نفسه.

مراجعة إعدادات الطرح

أعيدوا حساب شريحة مستخدم ورد عنه بلاغ لتوضيح ما إذا كان ينبغي لحد النسبة أن يدرجه.

هل يحصل المعرّف نفسه دائمًا على النتيجة نفسها؟

نعم. ينتج نص المعرّف والنسبة المتطابقان المخرجات نفسها، لأن الخوارزمية لا تستخدم عشوائية أو تاريخًا أو شبكة أو حالة مخزنة.

ماذا يحدث عند الصفر والمئة بالمئة؟

لا يدرج الصفر بالمئة أي معرّف، بينما تدرج المئة بالمئة جميع المعرّفات الصالحة.

هل يمكن توسيع الطرح من دون إعادة توزيع المستخدمين الحاليين؟

نعم. تحافظ زيادة الحد على جميع الشرائح المدرجة سابقًا وتضيف الشرائح الواقعة ضمن النطاق الجديد.

هل التجزئة آمنة تشفيريًا؟

لا. إن FNV-1a تجزئة سريعة للتوزيع الحتمي، ولا يجوز استخدامها لكلمات المرور أو التفويض أو السرية أو إخفاء الهوية.

كيف تصبح عمليات طرح الميزات المختلفة مستقلة؟

أضيفوا مفتاحًا ثابتًا للميزة وفاصلًا قبل معرّف الموضوع الثابت أو بعده، ثم حافظوا على هذه القاعدة.

ما تكلفة استدعاء API؟

تبلغ تكلفة كل طلب $0.002. تنفذ حاسبة المتصفح الحساب الحتمي نفسه محليًا.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/dev/feature-toggle-rollout-percent

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/dev/feature-toggle-rollout-percent \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"identifier":"user_48291","rollout_percentage":25}'
{
  "identifier": "user_48291",
  "rollout_percentage": 25
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.feature_toggle_rollout_percent",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

اطّلع على توثيق KIT الكامل ←