KÄ mÄs izlauzÄmies cauri Lielajam Ķīnas ugunsmÅ«rim (3. daļa)
Hi!
Visiem labajiem stÄstiem pienÄk beigas. Un mÅ«su stÄsts par to, kÄ mÄs radÄ«jÄm risinÄjumu, lai Ätri pÄrvarÄtu Ķīnas ugunsmÅ«ri, nav izÅÄmums. TÄpÄc es steidzos dalÄ«ties ar jums pÄdÄjÄ, beigu daļa par Å”o tÄmu.
IepriekÅ”ÄjÄ daÄ¼Ä mÄs runÄjÄm par daudziem testu stendiem, kurus mÄs izdomÄjÄm un kÄdus rezultÄtus tie deva. Un mÄs izlÄmÄm, ko bÅ«tu jauki pievienot CDN! viskozitÄtei mÅ«su shÄmÄ.
Es jums pastÄstÄ«Å”u, kÄ mÄs pÄrbaudÄ«jÄm Alibaba Cloud CDN, Tencent Cloud CDN un Akamai, un ar ko mÄs nonÄcÄm. Un, protams, apkoposim.
Alibaba Cloud CDN
MÄs esam mitinÄti pakalpojumÄ Alibaba Cloud un no tiem izmantojam IPSEC un CEN. BÅ«tu loÄ£iski vispirms izmÄÄ£inÄt viÅu risinÄjumus.
Alibaba Cloud ir divu veidu produkti, kas mums var bÅ«t piemÄroti: CDN Šø DCDN. PirmÄ iespÄja ir klasisks CDN noteiktam domÄnam (apakÅ”domÄnam). OtrÄ iespÄja nozÄ«mÄ Dinamiskais marÅ”ruts CDN (es to saucu par dinamisku CDN), to var iespÄjot pilnas vietnes režīmÄ (aizstÄjÄjzÄ«mju domÄniem), tas arÄ« saglabÄ statisko saturu keÅ”atmiÅÄ un paÄtrina dinamisko saturu, tas ir, lapas dinamika tiks ielÄdÄta arÄ« caur pakalpojumu sniedzÄja Ätri tÄ«kli. Tas mums ir svarÄ«gi, jo pamatÄ mÅ«su vietne ir dinamiska, tajÄ tiek izmantoti daudzi apakÅ”domÄni, un ÄrtÄk ir vienreiz iestatÄ«t CDN āzvaigznÄ«teiā - *.semrushchina.cn.
MÄs jau bijÄm redzÄjuÅ”i Å”o produktu mÅ«su Ķīnas projekta agrÄkajos posmos, taÄu tad tas vÄl nedarbojÄs, un izstrÄdÄtÄji solÄ«ja, ka produkts drÄ«zumÄ kļūs pieejams visiem klientiem. Un viÅÅ” to darÄ«ja.
DCDN varat:
konfigurÄjiet SSL pÄrtraukÅ”anu ar savu sertifikÄtu,
ļauj paÄtrinÄt dinamisku saturu,
elastÄ«gi konfigurÄt statisko failu keÅ”atmiÅu,
iztÄ«rÄ«t keÅ”atmiÅu,
pÄrsÅ«tÄ«t tÄ«mekļa ligzdas,
iespÄjot saspieÅ”anu un pat HTML Beautifier.
KopumÄ viss ir tÄpat kÄ ar pieauguÅ”ajiem un lieliem CDN pakalpojumu sniedzÄjiem.
Kad ir norÄdÄ«ts Origin (vieta, kur nonÄks CDN malas serveri), atliek tikai izveidot zvaigznÄ«tei CNAME, atsaucoties all.semrushchina.cn.w.kunluncan.com (Å”is CNAME tika saÅemts Alibaba Cloud konsolÄ), un CDN darbosies.
Pamatojoties uz testa rezultÄtiem, Å”is CDN mums ļoti palÄ«dzÄja. Statistika ir parÄdÄ«ta zemÄk.
Å Ä·Ä«dums
Uptime
Median
75 procentile
95 procentile
Cloudflare
86.6
18s
30s
60s
IPsec
99.79
18s
21s
30s
CEN
99.75
16s
21s
27s
CEN/IPsec + GLB
99.79
13s
16s
25s
Ali CDN + CEN/IPsec + GLB 99.75 10s 12.8s 17.3s
Tie ir ļoti labi rezultÄti, it Ä«paÅ”i, ja salÄ«dzina tos ar tiem skaitļiem, kas bija sÄkumÄ. TaÄu mÄs zinÄjÄm, ka mÅ«su vietnes www.semrush.com amerikÄÅu versijas pÄrlÅ«kprogrammas tests no ASV tiek izpildÄ«ts vidÄji 8.3 s (ļoti aptuvena vÄrtÄ«ba). Ir ko uzlabot. TurklÄt bija arÄ« CDN pakalpojumu sniedzÄji, kurus bija interesanti pÄrbaudÄ«t.
TÄpÄc mÄs vienmÄrÄ«gi pÄrietam uz citu gigantu Ķīnas tirgÅ« - Tencent.
Tencent mÄkonis
Tencent tikai izstrÄdÄ savu mÄkoni ā to var redzÄt no neliela produktu skaita. Izmantojot to, mÄs vÄlÄjÄmies pÄrbaudÄ«t ne tikai viÅu CDN, bet arÄ« visu tÄ«kla infrastruktÅ«ru:
vai viÅiem ir kaut kas lÄ«dzÄ«gs CEN?
KÄ viÅiem darbojas IPSEC? Vai tas ir Ätri, kÄds ir darbÄ«bas laiks?
vai viÅiem ir Anycast?
ApskatÄ«sim Å”os jautÄjumus atseviŔķi.
Analogais CEN
Tencent ir produkts Cloud Connect tÄ«kls (CCN), ļaujot savienot VPC no dažÄdiem reÄ£ioniem, tostarp reÄ£ioniem ĶīnÄ un Ärpus tÄs. Produktam tagad ir iekÅ”ÄjÄ beta versija, un jums ir jÄizveido biļete, kurÄ tiek lÅ«gts izveidot savienojumu ar to. No atbalsta mÄs uzzinÄjÄm, ka globÄlie konti (mÄs nerunÄjam par Ķīnas pilsoÅiem vai juridiskÄm personÄm) nevar piedalÄ«ties beta testÄÅ”anas programmÄ un kopumÄ savienot Ķīnas reÄ£ionu ar reÄ£ionu ÄrpusÄ. 1:0 Ali Cloud labÄ
IPSEC
Tencentas dienvidu reÄ£ions ir Guandžou. MÄs samontÄjÄm tuneli un savienojÄm to ar Honkongas reÄ£ionu GCP (tad Å”is reÄ£ions jau bija pieejams). TajÄ paÅ”Ä laikÄ tika pacelts arÄ« otrs tunelis Ali Cloud no Å eÅdžeÅas uz Honkongu. IzrÄdÄ«jÄs, ka caur Tencent tÄ«klu latentums uz Honkongu parasti ir labÄks (10 ms) nekÄ no Å enženas uz Honkongu lÄ«dz Ali (120 ms - kas?). Bet tas nekÄdÄ veidÄ nepaÄtrinÄja vietnes darbu, kuras mÄrÄ·is bija strÄdÄt caur Tencent un Å”o tuneli, kas pats par sevi bija pÄrsteidzoÅ”s fakts un vÄlreiz pierÄdÄ«ja sekojoÅ”o: latentums - Ķīnai tas nav rÄdÄ«tÄjs, kas patieÅ”Äm ir vÄrts. pievÄrÅ”ot uzmanÄ«bu, izstrÄdÄjot risinÄjumu Ķīnas ugunsmÅ«ra ŔķÄrsoÅ”anai.
Anycast interneta paÄtrinÄjums
VÄl viens produkts, kas ļauj strÄdÄt, izmantojot Anycast IP, ir AAI. Bet tas nav pieejams arÄ« globÄlajiem kontiem, tÄpÄc es jums par to nestÄstÄ«Å”u, taÄu var bÅ«t noderÄ«gi zinÄt, ka Å”Äds produkts pastÄv.
Bet CDN tests parÄdÄ«ja diezgan interesantus rezultÄtus. Tencent CDN nevar iespÄjot visÄ vietnÄ, tikai noteiktos domÄnos. MÄs izveidojÄm domÄnus un nosÅ«tÄ«jÄm uz tiem trafiku:
IzrÄdÄ«jÄs, ka Å”im CDN ir Å”Äda funkcija: PÄrrobežu satiksmes optimizÄcija. Å ai funkcijai ir jÄsamazina izmaksas, kad satiksme ŔķÄrso Ķīnas ugunsmÅ«ri. KÄ izcelÅ”anÄs Tika norÄdÄ«ta Google GLB (GLB anycast) IP adrese. TÄdÄjÄdi mÄs vÄlÄjÄmies vienkÄrÅ”ot projekta arhitektÅ«ru.
RezultÄti bija ļoti labi ā Ali Cloud CDN lÄ«menÄ« un vietÄm pat labÄki. Tas ir pÄrsteidzoÅ”i, jo, ja testi bÅ«s veiksmÄ«gi, var pamest ievÄrojamu daļu infrastruktÅ«ras, tuneļus, CEN, virtuÄlÄs maŔīnas utt.
MÄs ilgi nepriecÄjÄmies, jo atklÄjÄs problÄma: interneta pakalpojumu sniedzÄja China Mobile testi Catchpoint neizdevÄs. No jebkuras vietas mÄs saÅÄmÄm taimautu, izmantojot Tencent's CDN. Sarakste ar tehnisko atbalstu ne pie kÄ nenoveda. MÄs mÄÄ£inÄjÄm atrisinÄt Å”o problÄmu apmÄram dienu, bet nekas nedarbojÄs.
Es tajÄ brÄ«dÄ« atrados ĶīnÄ, taÄu nevarÄju atrast publisko Wi-Fi Ŕī pakalpojumu sniedzÄja tÄ«klÄ, lai personÄ«gi pÄrbaudÄ«tu problÄmu. CitÄdi viss izskatÄ«jÄs Ätri un labi.
TomÄr, tÄ kÄ China Mobile ir viens no trim lielÄkajiem operatoriem, mÄs bijÄm spiesti atgriezt trafiku uz Ali CDN.
Bet kopumÄ tas bija diezgan interesants risinÄjums, kas ir pelnÄ«jis ilgÄku Ŕīs problÄmas pÄrbaudi un problÄmu novÄrÅ”anu.
Akamai
PÄdÄjais mÅ«su pÄrbaudÄ«tais CDN nodroÅ”inÄtÄjs bija Akamai. Å is ir milzÄ«gs pakalpojumu sniedzÄjs, kura tÄ«kls atrodas ĶīnÄ. Protams, mÄs nevarÄjÄm tikt tam garÄm.
Jau paÅ”Ä sÄkumÄ vienojÄmies ar Akamai par izmÄÄ£inÄjuma periodu, lai varÄtu pÄrslÄgt domÄnu un redzÄt, kÄ tas darbosies viÅu tÄ«klÄ. Visu testu rezultÄtus es aprakstÄ«Å”u formÄ āKas man patikaā un āKas man nepatikaā, kÄ arÄ« norÄdÄ«Å”u testa rezultÄtus.
Kas man patika:
PuiÅ”i no Akamai bija ļoti izpalÄ«dzÄ«gi visos jautÄjumos un pavadÄ«ja mÅ«s visos testÄÅ”anas posmos. MÄs nemitÄ«gi centÄmies kaut ko uzlabot savÄ pusÄ. ViÅi sniedza labus tehniskos padomus.
Akamai ir aptuveni par 10ā15% lÄnÄks nekÄ mÅ«su risinÄjums, izmantojot Ali Cloud CDN. IespaidÄ«gi ir tas, ka programmÄ Origin for Akamai mÄs norÄdÄ«jÄm GLB IP adresi, kas nozÄ«mÄ, ka trafiks nenotika caur mÅ«su risinÄjumu (iespÄjams, mÄs varÄtu pamest daļu infrastruktÅ«ras). Bet tomÄr testa rezultÄti parÄdÄ«ja, ka Å”is risinÄjums ir sliktÄks par mÅ«su paÅ”reizÄjo versiju (salÄ«dzinoÅ”ie rezultÄti zemÄk).
PÄrbaudÄ«ts gan Origin GLB, gan Origin ĶīnÄ. Abas iespÄjas ir aptuveni vienÄdas.
Ir DroÅ”s marÅ”ruts (automÄtiskÄ marÅ”rutÄÅ”anas optimizÄcija). Varat mitinÄt testa objektu vietnÄ Origin, un Akamai Edge serveri mÄÄ£inÄs to uztvert (parastais GET). Å iem pieprasÄ«jumiem tiek mÄrÄ«ts Ätrums un citi rÄdÄ«tÄji, pamatojoties uz kuriem Akamai tÄ«kls optimizÄ marÅ”rutus, lai mÅ«su vietnes satiksme bÅ«tu ÄtrÄka, un bija skaidrs, ka Ŕīs funkcijas iespÄjoÅ”ana patieÅ”Äm spÄcÄ«gi ietekmÄja vietnes Ätrumu.
KonfigurÄcijas versijas izveide tÄ«mekļa saskarnÄ ir lieliska. Varat veikt SalÄ«dzinÄt versijas, apskatÄ«t atŔķir. SkatÄ«t iepriekÅ”ÄjÄs versijas.
Jaunu versiju vispirms varat izlaist tikai Akamai Staging tÄ«klÄ ā tajÄ paÅ”Ä tÄ«klÄ, kas tiek ražots, tikai tas neietekmÄs reÄlos lietotÄjus. Lai veiktu Å”o testu, jums ir jÄmÄnÄ«ja DNS ieraksti vietÄjÄ datorÄ.
Ä»oti Ätrs lejupielÄdes Ätrums, izmantojot tÄ«klu, lieliem statiskiem failiem un, acÄ«mredzot, visiem citiem failiem. Fails no āaukstÄsā keÅ”atmiÅas tiek izgÅ«ts daudzas reizes ÄtrÄk nekÄ tas pats fails no Ali CDN āaukstÄsā keÅ”atmiÅas. No ākarstÄsā keÅ”atmiÅas Ätrums jau ir tÄds pats, plus vai mÄ«nus.
Ali CDN tests:
root@shenzhen1:~# curl -o /dev/null -w@curl_time https://en.semrushchina.cn/my_reports/build/scripts/simpleInit.js?v=1551879212
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5757k 0 5757k 0 0 513k 0 --:--:-- 0:00:11 --:--:-- 526k
time_namelookup: 0.004286
time_connect: 0.030107
time_appconnect: 0.117525
time_pretransfer: 0.117606
time_redirect: 0.000000
time_starttransfer: 0.840348
----------
time_total: 11.208119
----------
size_download: 5895467 Bytes
speed_download: 525999.000B/s
Akamai tests:
root@shenzhen1:~# curl -o /dev/null -w@curl_time https://www.semrushchina.cn/my_reports/build/scripts/simpleInit.js?v=1551879212
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5757k 0 5757k 0 0 1824k 0 --:--:-- 0:00:03 --:--:-- 1825k
time_namelookup: 0.509005
time_connect: 0.528261
time_appconnect: 0.577235
time_pretransfer: 0.577324
time_redirect: 0.000000
time_starttransfer: 1.327013
----------
time_total: 3.154850
----------
size_download: 5895467 Bytes
speed_download: 1868699.000B/s
MÄs pamanÄ«jÄm, ka situÄcija iepriekÅ” minÄtajÄ piemÄrÄ ir atkarÄ«ga no dažÄdiem faktoriem. Rakstot Å”o punktu, es vÄlreiz izpildÄ«ju testu. RezultÄti abÄm platformÄm bija aptuveni vienÄdi. Tas liecina, ka internets ĶīnÄ, pat lielajiem operatoriem un mÄkoÅpakalpojumu sniedzÄjiem, laiku pa laikam darbojas atŔķirÄ«gi.
IepriekÅ”Äjam punktam pievienoÅ”u lielu plusu Akamai: ja Ali rÄda lÄ«dzÄ«gus augstas veiktspÄjas un ļoti zemas veiktspÄjas mirkļus (tas attiecas uz Ali CDN, Ali CEN un Ali IPSEC), tad Akamai katru reizi, neatkarÄ«gi no kÄ es pÄrbaudu viÅu tÄ«klu, viss darbojas stabili.
Akamai ir plaÅ”s pÄrklÄjums ĶīnÄ, un tas darbojas caur daudziem pakalpojumu sniedzÄjiem.
Kas man nepatika:
Man nepatÄ«k tÄ«mekļa saskarne un veids, kÄ tas darbojas ā tas ir tik slikts. Bet bÅ«tÄ«bÄ pie tÄ pierod (iespÄjams).
Testa rezultÄti ir sliktÄki nekÄ mÅ«su vietnÄ.
PÄrbaužu laikÄ ir vairÄk kļūdu nekÄ mÅ«su vietnÄ (darbspÄjas laiks zemÄk).
Mums ĶīnÄ nav savu DNS serveru. TÄpÄc pÄrbaudÄs ir daudz kļūdu DNS atrisinÄÅ”anas noildzes dÄļ.
ViÅi nenorÄda savus IP diapazonus -> nav iespÄjams reÄ£istrÄt pareizos set_real_ip_from mÅ«su serveros.
Metrika (aptuveni 3626 palaiÅ”anas reizes; visa metrika, izÅemot darbspÄjas laiku, ms; statistika par vienu laika periodu):
CDN nodroÅ”inÄtÄjs
Median
75%
95%
Atbilde
Tīmekļa lapas atbilde
Uptime
DNS
MeklÄt speciÄlistu
Pagaidiet
Slodze
SSL
SecinÄjums ir Å”Äds: Akamai iespÄja ir dzÄ«votspÄjÄ«ga, taÄu nenodroÅ”ina tÄdu paÅ”u stabilitÄti un Ätrumu kÄ mÅ«su paÅ”u risinÄjums kopÄ ar Ali CDN.
Mazas piezīmes
Daži momenti nebija iekļauti stÄstÄ, bet es arÄ« par tiem gribÄtu uzrakstÄ«t.
Pekina + Tokija un Honkonga
KÄ jau teicu iepriekÅ”, mÄs pÄrbaudÄ«jÄm IPSEC tuneli uz Honkongu (HK). Bet mÄs arÄ« pÄrbaudÄ«jÄm CEN uz HK. Tas maksÄ nedaudz mazÄk, un es domÄju, kÄ tas darbosies starp pilsÄtÄm ar attÄlumu ~ 100 km. Interesanti izrÄdÄ«jÄs, ka latentums starp Ŕīm pilsÄtÄm ir par 100 ms lielÄks nekÄ mÅ«su sÄkotnÄjÄ versijÄ (uz TaivÄnu). Ätrums, stabilitÄte arÄ« TaivÄnai bija labÄka. RezultÄtÄ mÄs atstÄjÄm HK kÄ rezerves IPSEC reÄ£ionu.
Ali CDN kÄ izcelsme tika norÄdÄ«ts serveris PekinÄ.
Å Ä« shÄma nebija tik stabila, lai gan Ätruma ziÅÄ tÄ kopumÄ nebija zemÄka par mÅ«su risinÄjumu. AttiecÄ«bÄ uz tuneli esmu redzÄjis periodiskus kritumus pat CEN, kam vajadzÄja bÅ«t stabilam. TÄpÄc atgriezÄmies pie vecÄs shÄmas un Å”o iestudÄjumu demontÄjÄm.
TÄlÄk ir sniegta statistika par latentumu starp dažÄdiem reÄ£ioniem dažÄdiem kanÄliem. VarbÅ«t kÄdam tas interesÄs.
IPsec
Ali cn-peijing <ā> GCP asia-northeast1 ā 193ms
Ali cn-Shenzhen <ā> GCP asia-east2 ā 91 ms
Ali cn-shenzhen <ā> GCP us-east4 ā 200 ms
CEN
Ali cn-peijing <ā> Ali ap-northeast-1 ā 54ms (!)
Ali cn-shenzhen <ā> Ali cn-hongkong ā 6 ms (!)
Ali cn-shenzhen <ā> Ali us-east1 ā 216ms
VispÄrÄ«ga informÄcija par internetu ĶīnÄ
KÄ papildinÄjums paÅ”Ä sÄkumÄ aprakstÄ«tajÄm problÄmÄm ar internetu raksta pirmajÄ daļÄ.
Internets ĶīnÄ ir diezgan Ätrs iekÅ”Ä.
SecinÄjums izdarÄ«ts, pamatojoties uz publisko Wi-Fi tÄ«klu testÄÅ”anu dažÄdÄs vietÄs, kur Å”os tÄ«klus izmanto liels skaits cilvÄku.
LejupielÄdes un augÅ”upielÄdes Ätrums serveros ĶīnÄ bija attiecÄ«gi aptuveni 20 Mbit/s un 5-10 Mbit/s.
Ätrums uz serveriem Ärpus Ķīnas ir vienkÄrÅ”i niecÄ«gs, mazÄks par 1 Mbit/s.
Internets ĶīnÄ nav ļoti stabils.
Dažreiz vietnes var atvÄrt Ätri, dažreiz lÄni (vienÄ un tajÄ paÅ”Ä laikÄ dažÄdÄs dienÄs), ja konfigurÄcija nemainÄs. MÄs to novÄrojÄm, izmantojot semrushchina.cn piemÄru. To var attiecinÄt uz Ali CDN, kas arÄ« darbojas Å”Ädi un citÄdi atkarÄ«bÄ no diennakts laika, zvaigžÅu stÄvokļa utt.
Mobilais internets ir gandrÄ«z visur 4G vai 4G+. NoÄ·er to metro, liftos ā Ä«si sakot, visur.
Tas ir mÄ«ts, ka Ä·Ä«nieÅ”u lietotÄji uzticas tikai domÄniem .cn zonÄ. MÄs to uzzinÄjÄm tieÅ”i no lietotÄjiem.
Daudzi resursi patieÅ”Äm ir bloÄ·Äti. PrimitÄ«vs: google.com, Facebook, Twitter. Bet daudzi Google resursi darbojas (protams, ne visos Wi-Fi un VPN netiek izmantots (arÄ« marÅ”rutÄtÄja pusÄ, tas noteikti).
Darbojas arÄ« daudzi bloÄ·Äto korporÄciju ātehniskieā domÄni. Tas nozÄ«mÄ, ka nevajadzÄtu vienmÄr neapdomÄ«gi izgriezt visus Google un citus Ŕķietami bloÄ·Ätos resursus. Jums ir jÄmeklÄ kÄds aizliegto domÄnu saraksts.
ViÅiem ir tikai trÄ«s galvenie interneta operatori: China Unicom, China Telecom, China Mobile. Ir vÄl mazÄki, taÄu to tirgus daļa ir niecÄ«ga
Bonuss: gala risinÄjuma diagramma
Kopsavilkums
Ir pagÄjis gads kopÅ” projekta sÄkuma. MÄs sÄkÄm ar faktu, ka mÅ«su vietne parasti atteicÄs normÄli strÄdÄt no Ķīnas, un vienkÄrÅ”i GET curl aizÅÄma 5.5 sekundes.
PÄc tam ar Å”iem indikatoriem pirmajÄ risinÄjumÄ (Cloudflare):
Å Ä·Ä«dums
Uptime
Median
75 procentile
95 procentile
Cloudflare
86.6
18s
30s
60s
Galu galÄ mÄs sasniedzÄm Å”Ädus rezultÄtus (statistika par pÄdÄjo mÄnesi):
Å Ä·Ä«dums
Uptime
Median
75 procentile
95 procentile
Ali CDN + CEN/IPsec + GLB
99.86
8.8s
9.5s
13.7s
KÄ redzat, 100% darbÄ«bas laiku vÄl neesam spÄjuÅ”i sasniegt, bet kaut ko izdomÄsim, un tad par rezultÄtiem pastÄstÄ«sim jaunÄ rakstÄ :)
Respekts tiem, kas izlasÄ«ja visas trÄ«s daļas lÄ«dz galam. Es ceru, ka jums tas viss likÄs tikpat interesanti kÄ man, kad es to darÄ«ju.