Kuidas teha PHP abil globaalsetele serveritele pingi teste?
Kaalun hiljuti oma kolmanda VPS-serveri ostmist ja pingi kiirus on üks murekohti. Mul on suhteliselt kõrge ping (umbes 250 ms) Ühendkuningriigist Singapuris asuvasse serverisse, mis muudab SSH-konsoolis käskude tippimise pisut ebameeldivaks.
Õnneks pakuvad mõned VPS-i pakkujad, nt Vultr, oma 15 asukoha jaoks IP-aadresse, nii et saate testida pingi kiirust. Kuidas seda automaatselt teha ilma iga kord ping – käsku tippimata?
vultr serveri asukohad kogu maailmas
Selleks võite leida PHP skripti näidise :
Selle käepärase PHP-skripti põhiolemus on kasutada exec – funktsiooni, mis käivitab välise käsu ping ja tagastab selle väljundi viimase rea.
root@happyukgo:/var/www/vultr$ ping -c 3 127.0.0.1
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.039 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.041 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.038 ms
--- 127.0.0.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1998ms
rtt min/avg/max/mdev = 0.038/0.039/0.041/0.005 ms
Seejärel kasutame väljundstringi põhjal regex-testijat preg_match ja arvutame nende 3 pingi keskmise. Lõpuks sorteerime massiivi väärtuste järgi. Allpool viiakse läbi kiirustestid Ühendkuningriigist, USA-st ja Singapurist ülemaailmsetesse asukohtadesse ning on üllatav, et USA (ida) ja Ühendkuningriigi vaheline ping on alla 80 ms.
Pingi kiirused Ühendkuningriigist ragbyst
- London, Ühendkuningriik – 6,27 ms
- Amsterdam, NL – 13,36 ms
- Pariis, Prantsusmaa – 13,39 ms
- Frankfurt DE – 19,89 ms
- New York (NJ) – 78,7 ms
- Chicago, Illinois – 92,17 ms
- Miami, Florida – 107,27 ms
- Dallas, Texas – 117,40 ms
- Seattle, Washington – 135,78 ms
- Atlanta, Georgia – 139,66 ms
- Silicon Valley, California – 156,32 ms
- Los Angeles, California – 169,51 ms
- Singapur – 191,94 ms
- Tokyo, Jaapan – 229,30 ms
- Sydney, Austraalia – 291,34 ms
Ping Speeds New Yorgist, USA idaosas
- New York (NJ) – 0,36 ms
- Atlanta, Georgia – 19,04 ms
- Chicago, Illinois – 20,94 ms
- Miami, Florida – 32,36 ms
- Dallas, Texas – 42,35 ms
- Seattle, Washington – 62,0433 ms
- London, Ühendkuningriik – 67,52 ms
- Los Angeles, California – 70,68 ms
- Frankfurt DE – 78,54 ms
- Pariis, Prantsusmaa – 79,47 ms
- Silicon Valley, California – 79,841 ms
- Amsterdam, NL – 80,65 ms
- Tokyo, Jaapan – 162,70 ms
- Sydney, Austraalia – 217,58 ms
- Singapur – 231,35 ms
Ping Speeds Singapurist
- Singapur – 0,53 ms
- Tokyo, Jaapan – 77,10 ms
- Silicon Valley, California – 170,44 ms
- Los Angeles, California – 177,97 ms
- Frankfurt DE – 182,87 ms
- London, Ühendkuningriik – 184,52 ms
- Seattle, Washington – 187,12 ms
- Sydney, Austraalia – 189,44 ms
- Dallas, Texas – 202,88 ms
- Chicago, Illinois – 218,10 ms
- New York (NJ) – 229,11 ms
- Atlanta, Georgia – 240,88 ms
- Miami, Florida – 245,59 ms
- Pariis, Prantsusmaa – 256,78 ms
- Amsterdam, NL – 326,08 ms
Ping Speeds Vermontist, USA lääneosast
- Silicon Valley, California – 1,70 ms
- Los Angeles, California – 8,37 ms
- Seattle, Washington – 19,55 ms
- Dallas, Texas – 40,36 ms
- Chicago, Illinois – 54,36 ms
- Atlanta, Georgia – 63,63 ms
- New York (NJ) – 74,56 ms
- Miami, Florida – 88,70 ms
- Tokyo, Jaapan – 109,07 ms
- London, Ühendkuningriik – 139,23 ms
- Amsterdam, NL – 144,52 ms
- Sydney, Austraalia – 157,04 ms
- Pariis, Prantsusmaa – 159,29 ms
- Frankfurt DE – 161,55 ms
- Singapur – 171,10 ms
Ping Speeds Tokyost, Jaapanist
- Tokyo, Jaapan – 1,018 ms
- Singapur – 77,32 ms
- Seattle, Washington – 84,54 ms
- Silicon Valley, California – 108,94 ms
- Los Angeles, California – 110,05 ms
- Sydney, Austraalia – 114,74 ms
- Chicago, Illinois – 146,85 ms
- Dallas, Texas – 155,129 ms
- Atlanta, Georgia – 163,17 ms
- New York (NJ) – 170,06 ms
- Miami, Florida – 174,35 ms
- London, Ühendkuningriik – 229,86 ms
- Frankfurt DE – 253,58 ms
- Amsterdam, NL – 273,022 ms
- Pariis, Prantsusmaa – 287,42 ms
Seejärel saate lisada väikese projekti, jälgides neid pingi väärtusi päevast päeva, nt kasutades crontabit, ja salvestades selle andmebaasi …
Võite eeldada, et pingi kiirus on sarnane (kahesuunaline), kui vahetate allika ja sihtmärgi. Pange tähele ka seda, et turvalisuse huvides lülitage oma PING-teenused välja, kui olete ühenduse kiirust rõõmuga teada saanud.
Seda lehte värskendatakse ebaregulaarselt värskendatud serverite ja pingikiirusega.