سؤال

أحصل على الخطأ التالي عندما أحاول استدعاء خدمة ويب ASP.NET من تطبيق Web ASP.NET. أعتقد أنه لأن خدمة الويب وتطبيق الويب في نفس المزرعة / خلف نفس موازن التحميل.

A connection attempt failed because the connected party did not properly
respond after a period of time, or established connection failed because
connected host has failed to respond [IP Address removed]:80

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

أي فكرة لماذا يحدث هذا الخطأ؟

هل كانت مفيدة؟

المحلول

كان الحل لمشكلتي هو تشغيل Nater على موازن التحميل.

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

نصائح أخرى

هذا مجرد تخمين، ولكن هل يمكن لخادم الويب أن يرى بالفعل عنوان IP المستخدم؟ إذا كان ذلك موجودا في مزرعة خلف موازن تحميل، فقد يتم حظر IP من قبل موازن التحميل نفسه أو جدار حماية أو خادم وكيل.

يمكنك الوصول إلى خادم الويب عبر سطح المكتب البعيد و ping عنوان IP؟

لن يقوم مكدس TCP / IP في عقدة المزرعة بتوجيه المكالمة إلى عنوان IP الخاص بموازن التحميل، ولكنه سيتم تلقائيا ترجمة هذا إلى مكالمة محلية في 127.0.0.1:80 على عقدة المزرعة المحددة التي تقوم بإجراء المكالمة وبعد تأكد من إعداد خوادم الويب الخاصة بك للتعامل مع هذه الحالة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top