پیش از آنکه دست به چیزی بزنید یک نکته را در نظر داشته باشید: این تست ping نیست. کلاینت یک درخواست HTTP را از مسیر همان گره به یک نشانی آزمایشی میفرستد و زمان پاسخ را گزارش میکند. آن ترافیک تست دقیقاً همان راهی را میرود که مرور روزمره شما میرود، پس هر گسستی در طول مسیر به timeout تبدیل میشود — از جمله نشانی آزمایشیای که از اول هم به آن دسترسی نداشتید.
پس فقط یک پرسش میماند: تمام ستون شکست خورده یا فقط چند گره؟ این دو حالت تقریباً هیچ همپوشانی ندارند و انتخاب اشتباه همان چیزی است که باعث میشود کسی یک ساعت وقت بگذارد و اشتراکی را عوض کند که هیچ ایرادی نداشت.
همه چیز timeout شد: به دستگاه خودتان شک کنید، نه به گرهها
- نشانی تست را به چیزی تغییر دهید که مطمئنید از جای شما بدون مشکل باز میشود، بعد دوباره تست بگیرید.
- به ساعت سیستم نگاه کنید. اگر بیش از یکی دو دقیقه اختلاف دارد، همگامسازی کنید و دوباره تست بگیرید.
- پروکسی را خاموش کنید و همان نشانی آزمایشی را مستقیم در مرورگر باز کنید تا مطمئن شوید شبکه محلی و DNS زندهاند.
مورد اول بهمراتب رایجترین است و ارزش دارد بدانید چرا. درخواست تست هم مثل هر درخواست دیگری از قوانین شما عبور میکند و بسیاری از پیکربندیها آن نشانی را از مسیر DIRECT بیرون میفرستند. اگر آن نشانی روی شبکه شما بدون پروکسی باز نشود، تکتک گرههای فهرست یکدست timeout میخورند — که عیناً شبیه فروپاشی کل اشتراک به نظر میرسد، در حالی که هیچ گرهای مشکلی ندارد. تست را به نشانیای بسپارید که از جای شما مطمئن پاسخ میدهد؛ اعداد بلافاصله ظاهر میشوند.
فقط چند تا timeout شد: حالا نوبت گرههاست
- گره دیگر وجود ندارد. سرویسدهندهها مدام ماشینها را بازنشسته و خطوط را جابهجا میکنند و کلاینت شما هنوز همان نسخه هفته پیش را نگه داشته است. پیش از آنکه بیشتر روی یک مدخل مرده وقت بگذارید، اشتراک را تازه کنید.
- پروتکل روی شبکه فعلی شما دچار اختلال است. حاملهای مبتنی بر UDP قربانی همیشگیاند، چون QoS اپراتور فشارشان میدهد؛ نشانهاش این است که همه گرههای دیگرِ همان سرویسدهنده کار میکنند و فقط همین چند تا نه. در همان اشتراک یک گره مبتنی بر TCP پیدا کنید و مقایسه کنید.
- نقطه خروج اشباع شده است. اوجش شبهاست و گرهای که ظهر خوب تست میشود و ساعت ده شب timeout میدهد تقریباً همیشه همین است — و تقریباً هیچوقت چیزی نیست که از دست شما کاری برایش برآید.
مورد میانی دائماً با گره مرده اشتباه گرفته میشود. همان گره را از یک شبکه دیگر تست کنید؛ هاتاسپات گوشی کافی است. اگر روی هاتاسپات کار کرد، گره سالم است و این شبکه شماست که آن حامل را میفشارد. اگر روی هر دو شکست خورد، ایراد از خود گره است.
بخشی از timeoutها را خود تست میسازد
یک کلیک و کلاینت دهها یا صدها گره را همزمان تست میکند و همه آن درخواستها روی تنها لینک بالادست شما صف میبندند. آنهایی که ته صفاند مستقیم به مهلت میخورند، پس نرخ شکستی که میبینید متورم است. اگر واقعاً چند گره مشخص برایتان مهم است، یکییکی تستشان کنید. نتیجه شبیه اجرای دستهای نخواهد بود.
عامل دیگر خود مهلت است. بیشتر کلاینتها یک زمان انتظار تست قابل تنظیم دارند و مقدار پیشفرض برای مسیرهای فرااقیانوسی در اوج شب میتواند تنگ باشد — گرهای که کمی بیش از دو ثانیه جواب میداد کنار گذاشته میشود. آن را بالا ببرید تا دستهای از timeoutهای دروغین دوباره جان بگیرند. هرچه بعد از آن هم شکست بخورد، همان بخشی است که جدی گرفتنش میارزد.
یک timeout حکم نهایی نیست
تست یک نشانی را از یک مسیر میزند. اینکه سایتی که واقعاً میخواهید در همان جهت باشد یا از همان بخش شلوغ عبور کند، پرسش جداگانهای است. برای همین هر دو حالت مرتب پیش میآید: گرهای که timeout تست میشود سایتهای شما را روان باز میکند، و گرهای که 80 میلیثانیه مرتب نشان میدهد برای ویدیو غیرقابل تحمل است.