تساوي القوى
معنى علوم الكمبيوتر > أمثلة في علوم الكمبيوتر

عادةً ما تكون الوظيفة التي تبحث عن اسم وعنوان العميل في قاعدة بيانات غير فعالة، لأن هذا لن يتسبب في تغيير قاعدة البيانات. وبالمثل، عادةً ما يكون تغيير عنوان العميل إلى XYZ غير فعال، لأن العنوان النهائي سيكون هو نفسه بغض النظر عن عدد مرات إرسال XYZ. ومع ذلك، فإن تقديم طلب للحصول على عربة تسوق للعميل لا يكون عديم الجدوى، لأن تشغيل المكالمة عدة مرات سيؤدي إلى تقديم العديد من الطلبات. يعد إلغاء الطلب غير صالح، لأن الطلب يظل ملغيًا بغض النظر عن عدد الطلبات المقدمة.
ومع ذلك، فإن تركيبة الطرق الخاملة أو الإجراءات الفرعية ليست بالضرورة معطلة إذا غيرت طريقة لاحقة في التسلسل قيمة تعتمد عليها طريقة سابقة - لا يتم إغلاق العاطفة في ظل التكوين . على سبيل المثال، لنفترض أن القيمة الأولية للمتغير هي 3 وهناك تسلسل يقرأ المتغير، ثم يغيره إلى 5، ثم يقرأه مرة أخرى. كل خطوة في التسلسل غير فعالة: كلا الخطوتين في قراءة المتغير ليس لهما آثار جانبية وتغيير متغير إلى 5 سيكون له نفس التأثير دائمًا بغض النظر عن عدد مرات تنفيذه. ومع ذلك، فإن تنفيذ التسلسل بالكامل مرة واحدة ينتج عنه الإخراج (3، 5)، ولكن تنفيذه مرة ثانية ينتج الناتج (5، 5)، وبالتالي فإن التسلسل ليس خاملاً.
في بروتوكول Hypertext Transfer Protocol (HTTP)، يعتبر تساوس القوى والأمان من السمات الرئيسية التي تفصل بين أفعال HTTP . من بين أفعال HTTP الرئيسية، يجب تنفيذ الحصول والوضع والحذف بطريقة خاملة وفقًا للمعيار، ولكن لا يلزم تنفيذ POST. يسترجع GET موردًا؛ يخزن PUT المحتوى في مورد؛ وحذف يحذف مورد. كما في المثال أعلاه، قراءة البيانات ليس لها عادة أي آثار جانبية، لذلك فهي غير فعالة (في الواقع لا تملك). عادةً ما يكون تخزين وحذف مجموعة معينة من المحتوى غير فعال طالما أن الطلب يحدد موقعًا أو معرفًا يحدد هذا المورد بشكل فريد وهذا المورد فقط مرة أخرى في المستقبل. عمليات PUT و DELETE ذات المعرفات الفريدة تختزل إلى حالة التخصيص البسيطة إلى متغير غير قابل للتغيير إما بقيمة أو قيمة خالية، على التوالي، وتكون معطلة لنفس السبب؛ تكون النتيجة النهائية دائمًا هي نفسها نتيجة التنفيذ الأولي، حتى لو اختلفت الاستجابة.
عادة ما يؤدي انتهاك شرط التعريف الفريد في التخزين أو الحذف إلى انتهاك القدرة على العمل. على سبيل المثال، تخزين أو حذف مجموعة معينة من المحتوى دون تحديد معرّف فريد: طلبات POST ، التي لا تحتاج إلى أن تكون غير فعالة، غالبًا لا تحتوي على معرّفات فريدة، لذلك يتم تفويض إنشاء المعرّف إلى نظام الاستلام الذي ينشئ بعد ذلك رقم قياسي جديد مطابق. وبالمثل، قد تؤدي طلبات الوضع والحذف ذات المعايير غير المحددة إلى نتائج مختلفة اعتمادًا على حالة النظام - على سبيل المثال، طلب حذف أحدث سجل. في كل حالة، ستؤدي عمليات الإعدام اللاحقة إلى تعديل حالة النظام بشكل أكبر، لذا فهي ليست عديمة الفعالية.
في معالجة تدفق الأحداث، يشير تساوي القوى إلى قدرة النظام على إنتاج نفس النتيجة، حتى إذا تم استلام نفس الملف أو الحدث أو الرسالة أكثر من مرة.
في بنية تخزين التحميل، تكون التعليمات التي قد تتسبب في حدوث خطأ في الصفحة غير صحيحة. لذلك في حالة حدوث خطأ في الصفحة، يمكن لنظام التشغيل تحميل الصفحة من القرص ثم إعادة تنفيذ التعليمات المعيبة. في المعالج حيث لا تكون مثل هذه التعليمات عديمة الكفاءة، يكون التعامل مع أخطاء الصفحة أكثر تعقيدًا.
عند إعادة تنسيق الإخراج، من المتوقع أن تكون الطباعة الجيدة غير فعالة. بعبارة أخرى، إذا كان الإخراج «جميلًا» بالفعل، فلا يجب أن تفعل شيئًا للطابعة الجميلة.
[ بحاجة لمصدر ]
في البنية الموجهة للخدمة (SOA)، يمكن إعادة عملية تنسيق متعددة الخطوات تتكون بالكامل من خطوات غير فعالة دون آثار جانبية في حالة فشل أي جزء من هذه العملية.
غالبًا ما يكون للعديد من العمليات غير الفعالة طرق «لاستئناف» عملية ما إذا تمت مقاطعتها - وهي طرق تنتهي بشكل أسرع بكثير من البدء من جديد من البداية. على سبيل المثال، استئناف نقل الملفات، ومزامنة الملفات، وإنشاء بنية برمجية، وتثبيت تطبيق وكل تبعياته مع مدير الحزم، إلخ.