كيف تقوم بتطبيق أسلوب InetAddress.isReachable (عنوان سلسلة ، منفذ int ، مهلة int) في Java؟

نشرت: 2020-10-06
قم بتنفيذ طريقة InetAddress.isReachable الخاصة بك في Java

في Java ، توجد طرق متعددة للتحقق من اختبار ping و port check. يمكنك استخدام الأمر ping الافتراضي للنظام ، والأداة المساعدة InetAddress للطريقة الأصلية لجافا ، و HttpURLConnection والمزيد.

في الإنتاج أو في بيئة الاختبار الخاصة بك ، إذا كنت ترغب في إجراء عمليات تحقق متعددة للمنافذ ، دعنا نقول مئات الشيكات في نفس الوقت ، ففي بعض الأحيان لا تحصل طريقة InetAddress.isReachable() على الاستجابة الصحيحة.

أصبت في حالتي ، لاحظت فشلًا بنسبة 100 ٪ أثناء محاولة الاتصال بـ www.google.com. هل لديك أي من الأسئلة أدناه؟

  • java - لماذا يقوم InetAddress.isReachable بإرجاع خطأ ، عندما يمكنني اختبار اتصال عنوان IP؟
  • كيف أتحقق مما إذا كان لدي اتصال بالإنترنت؟
  • أمثلة تعليمات Java البرمجية لـ java.net.InetAddress.isReachable ()
  • java تحقق مما إذا كان يمكن الوصول إلى عنوان IP
  • كيف تختبر ما إذا كان يمكن الوصول إلى نظام بعيد؟

اتبع هذا البرنامج التعليمي إذا كنت تريد إجراء فحص ping باستخدام HttpURLConnection.openConnection ()

في هذا البرنامج التعليمي ، سنتعرف على طريقتين مختلفتين لإجراء فحص Ping:

  1. طريقة (مهلة) InetAddress.is قابلة للبحث
  2. طريقة Crunchify's crunchifyAddressReachable(host, port, timeout) التي تعمل بنسبة 100٪ من الوقت

هيا بنا نبدأ:

  1. قم بإنشاء فئة CrunchifyInetAddressIsReachable.java.
  2. سننشئ طريقتين pingCheckbyInetAddressisReachable () و pingCheckbyCrunchifyisReachable () حيث سنجري أكثر من اختبارين مختلفين.

ما هي الطريقة التي نستخدمها crunchifyAddressReachable ()؟

نحن نستخدم java.net.Socket في تطبيقنا. فئة المقبس تنفذ مآخذ العميل. بمساعدة الأداة المساعدة connect() ، نحصل على النتيجة الصحيحة بنسبة 100٪. يرجى إلقاء نظرة على الكود أدناه لمزيد من التفاصيل.

CrunchifyInetAddressIsReachable.java

بمجرد نسخ الرمز إلى بيئة Eclipse ، ما عليك سوى تشغيل تطبيق Java لترى النتيجة أدناه.

إخراج وحدة التحكم: