Përshëndetje!
Ădo histori e mirĂ« ka njĂ« fund. Dhe historia jonĂ« pĂ«r mĂ«nyrĂ«n se si ne krijuam njĂ« zgjidhje pĂ«r kalimin e shpejtĂ« tĂ« Firewall-it Kinez, nuk Ă«shtĂ« njĂ« pĂ«rjashtim. Prandaj, nĂ«nĂ« shpejtoj t'ju ndihmoj tĂ« ndaj me ju pjesĂ«n e fundit, pjesa pĂ«rfundimtare pĂ«r kĂ«tĂ« temĂ«.
Në pjesën e mëparshme, folëm për shumë teste që ne kemi bërë dhe cilat ishin rezultatet. Dhe u ndalëm te ideja që do ishte mirë të shtonim CDN! për kohezionin në skemën tonë.
Do t'ju tregoj se si ne testuam Alibaba Cloud CDN, Tencent Cloud CDN dhe Akamai, dhe mbi çfarë vendosëm në fund. Po ashtu, do bëjmë një përmbledhje.

Alibaba Cloud CDN
Ne jemi të alojuar në Alibaba Cloud, përdorim IPSEC dhe CEN nga ata. Logjikisht, do të ishte e kuptueshme të fillojmë me zgjidhjet e tyre.
Alibaba Cloud ofron dy lloje produktesh qĂ« mund tĂ« na pĂ«rshtaten: CDN dhe DCDN. Opsioni i parĂ« Ă«shtĂ« njĂ« CDN klasik pĂ«r njĂ« domen tĂ« veçantĂ« (subdomen). Opsioni i dytĂ« Ă«shtĂ« i njohur si Dynamic Route for CDN (e quaj ndryshe CDN dinamik), mund ta aktivizosh nĂ« mĂ«nyrĂ« qĂ« tĂ« mbulojĂ« tĂ« gjithĂ« sitin (pĂ«r domena wildcard), gjithashtu ruan statikĂ«n dhe akceleruar pĂ«rmbajtjen dinamike, dmth, dinamika e faqes gjithashtu do tĂ« ngarkohet pĂ«rmes rrjeteve mĂ« tĂ« shpejta tĂ« ofruesit. Kjo Ă«shtĂ« e rĂ«ndĂ«sishme pĂ«r ne, pasi kemi njĂ« sit tĂ« dinamizuar, qĂ« pĂ«rdor shumĂ« subdomena, dhe Ă«shtĂ« mĂ« e lehtĂ« tĂ« konfigurosh CDN njĂ« herĂ« pĂ«r "yjet" â *.semrushchina.cn.
Ne e kishim parë këtë produkt në faza të mëparshme të projektit tonë kinez, por atëherë nuk kishte funksionuar, dhe zhvilluesit kishin premtuar se shumë shpejt do të ishte i disponueshëm për të gjithë klientët. Dhe tani është.
Me DCDN mund të:
- konfiguroni terminimin SSL me certifikatin tuaj,
- aktivizoni akcelerimin e përmbajtjes dinamike,
- konfiguroni fleksibël ruajtjen e skedarëve statikë,
- bëni purge të caches,
- kaloni websockets,
- aktivizoni kompresimin dhe madje edhe HTML Beautifier.
Pra, gjithçka është si te gocat dhe djemtë e mëdhenj të CDN.
Pas caktimit të Origin (vendi ku do shkojnë serverët edge të CDN), mbetet të krijoni një CNAME për yllin, që i referohet all.semrushchina.cn.w.kunluncan.com (ky CNAME u mor në konsolën e Alibaba Cloud), dhe CDN do të funksionojë.
Sipas rezultateve të testeve, ky CDN na ndihmoi shumë. Të dhënat janë më poshtë.
Zgjidhja
Disponueshmëria
Median
75 Percentile
95 Percentile
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
KĂ«to janĂ« rezultate shumĂ« tĂ« mira, sidomos krahasuar me shifrat qĂ« kishim nĂ« fillim. Por e dinim se testi i shfletuesit tĂ« versionit amerikan tĂ« sitit tonĂ« www.semrush.com Ă«shtĂ« i menaxhuar nga SHBA me njĂ« mesatare prej 8.3s (njĂ« vlerĂ« e afĂ«rme). Ka ende hapĂ«sirĂ« pĂ«r pĂ«rmirĂ«sim. Sidomos, kishte edhe ofrues tĂ« tjerĂ« CDN, tĂ« cilĂ«t ishim tĂ« interesuar tâi testonim.
KĂ«shtu kalojmĂ« nĂ« njĂ« tjetĂ«r gjigant nĂ« tregun kinez â Tencent.
Tencent Cloud
Tencent po zhvillon vetĂ« cloud-in e tij â kjo Ă«shtĂ« e dukshme nga numri i vogĂ«l i produkteve. GjatĂ« pĂ«rdorimit tĂ« tij, donim tĂ« testonim jo vetĂ«m CDN-nĂ« e tyre, por gjithashtu infrastrukturĂ«n e rrjetit nĂ« pĂ«rgjithĂ«si:
- a kanë ata diçka të ngjashme me CEN?
- si funksionon IPSEC-at? A është e shpejtë, çfarë është uptime?
- a kanë ata Anycast?

Do t'i shqyrtojmë këto pyetje një nga një.
Analogu i CEN
Tencent ka një produkt Cloud Connect Network (), që lejon lidhjen e VPC-ve nga rajone të ndryshme, përfshirë rajonet brenda dhe jashtë Kinës. Produkti tani është në beta të brendshme, dhe duhet të krijoni një tiket për t'u lidhur me të. Nga mbështetja mësuam se llogaritë globale (nuk ka të bëjë me qytetarët kinezë dhe nuk janë persona juridikë) nuk mund të marrin pjesë në programin e beta-testimit dhe gjithashtu nuk mund të lidhin një rajon brenda Kinës me një rajon jashtë. 1-0 në favor të Ali Cloud
IPSEC
Rajoni mĂ« jugor te Tencent â Guangzhou. Ne krijuam njĂ« tunel dhe e lidhĂ«m atĂ« me rajonin e Hong Kongut nĂ« GCP (atĂ«herĂ« ky rajon ishte tashmĂ« i disponueshĂ«m). Gjithashtu ngritĂ«m njĂ« tunel tĂ« dytĂ« nĂ« Ali Cloud nga Shenzhen nĂ« Hong Kong. Doli se pĂ«rmes rrjetit Tencent, latenca deri nĂ« Hong Kong Ă«shtĂ« mĂ« e mirĂ« (10ms), sesa nga Shenzhen nĂ« Hong Kong nĂ« Ali (120ms â çfarĂ«?). Por kjo nuk e pĂ«rmirĂ«soi punĂ«n e sitit, tĂ« orientuar drejt punĂ«s pĂ«rmes Tencent dhe kĂ«tij tuneli, qĂ« ishte njĂ« fakt befasues dhe pĂ«rsĂ«ri provonte se: latenca â pĂ«r KinĂ«n nuk Ă«shtĂ« njĂ« tregues qĂ« duhet marrĂ« parasysh gjatĂ« zhvillimit tĂ« zgjidhjes pĂ«r kalimin e firewall-it kinez.
Anycast Internet Acceleration
NjĂ« produkt tjetĂ«r, qĂ« lejon punĂ«n pĂ«rmes IP anycast â . Por ai gjithashtu nuk Ă«shtĂ« i disponueshĂ«m pĂ«r llogaritĂ« globale, kĂ«shtu qĂ« nuk do tĂ« flas pĂ«r tĂ«, por tĂ« dish qĂ« ekziston njĂ« produkt i tillĂ« mund tĂ« jetĂ« e dobishme.
Por testi i CDN tregoi rezultate mjaft interesante. CDN te Tencent nuk mund të aktivizohet në full-site, vetëm për domena të veçantë. Ne afruam domenet dhe i dërguam atyre trafik:

Doli se ky CDN ka një funksion të tillë: Cross Border Traffic Optimization. Kjo veçori duhet të ulë kostot gjatë kalimit të trafikut përmes firewall-it kinez. Si Origjina u përcaktua adresa IP e GLB-së së Google (GLB anycast). Kështu, ne donim ta thjeshtojmë arkitekturën e projektit.
Rezultatet ishin shumĂ« tĂ« mira â nĂ« nivelin e Ali Cloud CDN, dhe gjetkĂ« madje edhe mĂ« mirĂ«. Kjo Ă«shtĂ« befasuese, sepse nĂ« rast tĂ« suksesit tĂ« testeve, mund tĂ« hiqnim njĂ« pjesĂ« tĂ« rĂ«ndĂ«sishme tĂ« infrastrukturĂ«s, tunelave, CEN, virtualkĂ« dhe kĂ«shtu me radhĂ«.
Nuk u gëzuam shumë, pasi shpërtheu një problem: testet në Catchpoint dështuan për ofruesin e internetit China Mobile. Nga çdo lokacion merrnim një kohëzgjatje përmes CDN të Tencent. Korrespondenca me suportin teknik nuk çoi askund. Rreth një ditë përpiqeshim të zgjidhnim këtë problem, por asgjë nuk doli.
Isha atëherë në Kinë, por nuk arrita të gjej Wi-Fi publik në këtë rrjet për të verifikuar problemin personalisht. Nga ana tjetër, gjithçka dukej e shpejtë dhe e mirë.
Megjithatë, për shkak se operatori China Mobile është një nga tre operatorët më të mëdhenj, ne u detyruam të kthyerim trafikun në Ali CDN.
Por në përgjithësi, kjo ishte një zgjidhje mjaft interesante që meriton më shumë testim dhe troubleshootim të këtij problemi.
Akamai
Ofruesi i fundit CDN që testuam ishte Akamai. Ky është një ofrues i madh, që ka një rrjet në Kinë. Sigurisht, nuk mund të kalonim pa të.

QĂ« nga fillimi, ne u mora me Akamai pĂ«r njĂ« periudhĂ« prove, nĂ« mĂ«nyrĂ« qĂ« tĂ« mund tĂ« kalonim domainin dhe tĂ« shihnim si do tĂ« funksiononte nĂ« rrjetin e tyre. Rezultatin e tĂ« gjitha testeve do ta pĂ«rshkruaj nĂ« formĂ«n e âĂfarĂ« mĂ« pĂ«lqeuâ dhe âĂfarĂ« sâmĂ« pĂ«lqeuâ, si dhe do tĂ« paraqes rezultate tĂ« testeve.
ĂfarĂ« mĂ« pĂ«lqeu:
- Djemtë nga Akamai na ndihmuan shumë në çdo çështje dhe na shoqëruan në të gjitha fazat e testimit. Vazhdimisht përpiqeshin të përmirësonin diçka nga ana e tyre. Jepnin këshilla të mira teknike.
- Akamai punon rreth 10-15% më ngadalë se zgjidhja jonë përmes Ali Cloud CDN. E habitshme është se për Akamai, në Origin ne përcaktuam adresën IP të GLB, dmth. trafiku nuk po kalonte përmes zgjidhjes sonë (potencialisht mund të heqim një pjesë të infrastrukturës). Megjithatë, rezultatet e testeve treguan se kjo zgjidhje ishte më e dobët se opsioni ynë aktual (rezultatet krahasuese janë më poshtë).
- I testuam si Origin GLB, ashtu edhe Origin në Kinë. Të dy opsionet ishin më shumë të njëjtë.
- Ka Sure Route (optimizimi automatik i rrugëve). Mund të vendosni një objekt testimi në Origin, dhe serverët Edge të Akamai do ta provonin atë (GET i zakonshëm). Për këto kërkesa matet shpejtësia dhe metrika të tjera, mbi të cilat rrjeti Akamai optimizon rrugët, në mënyrë që trafiku të udhëtonte më shpejt për faqen tonë dhe ishte e dukshme se aktivizimi i kësaj veçorie ndikon ndjeshëm në shpejtësinë e punës së faqes.
- Versionimi i konfigurimit nĂ« ndĂ«rfaqen e uebit â Ă«shtĂ« shumĂ« e kĂ«ndshme. Mund tĂ« bĂ«ni Krahasim pĂ«r versionet, tĂ« shihni dife. TĂ« shihni versionet e mĂ«parshme.
- Mund tĂ« zhvilloni njĂ« version tĂ« ri fillimisht vetĂ«m nĂ« rrjetin Staging tĂ« Akamai â e njĂ«jta rrjetĂ« si dhe prodhimi, vetĂ«m qĂ« ajo rrugĂ« nuk ndikon te pĂ«rdoruesit aktualĂ«. PĂ«r kĂ«tĂ« test, duhet tĂ« bĂ«ni spufim tĂ« regjistrimeve DNS nĂ« makinĂ«n tuaj lokale.
- ShpejtĂ«sia e ngarkimit pĂ«rmes rrjetit tĂ« tyre tĂ« statikĂ«s sĂ« madhe, si dhe dukshĂ«m çdo skedar tjetĂ«r, Ă«shtĂ« shumĂ« tĂ« shpejtĂ«. NjĂ« skedar nga cache-i âi ftohtĂ«â merret disa herĂ« mĂ« shpejt se i njĂ«jti skedar nga cache-i âi ftohtĂ«â i Ali CDN. Nga cache-i âi nxehtĂ«â shpejtĂ«sia Ă«shtĂ« mĂ« shumĂ«-mĂ« pak e njĂ«jtĂ«.
Teste Ali CDN:
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/sTeste Akamai:
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/sVëmë re se situata nga shembulli më sipër varet nga faktorë të ndryshëm. Në momentin e shkruarjes së këtij pikë, unë kam bërë testin përsëri. Rezultatet për të dy platformat ishin rreth të njëjtave. Kjo na tregon se interneti në Kinë, madje edhe për operatorët e mëdhenj dhe ofruesit e cloud, ndonjëherë sillet ndryshe.
Për pikën e mëparshme do të shtoja një avantazh të madh për Akamai: nëse tek Ali shihen shpërthime të tilla të performancës shumë të lartë dhe shumë të ulët (kjo ka të bëjë me Ali CDN, Ali CEN, dhe Ali IPSEC), për Akamai, çdo herë, siç e testova rrjetin e tyre, gjithçka punon stabilisht.
Akamai ka të vërtetë një mbulim të madh në Kinë dhe punon përmes shumë ofruesve.
ĂfarĂ« nuk pĂ«lqeve:
- Nuk mĂ« pĂ«lqen ndĂ«rfaqja e web-it dhe mĂ«nyra e funksionimit â janĂ« tĂ« parĂ«ndĂ«sishme. Por nĂ« parim, mĂ«sohesh (ndoshta).
- Rezultatet e testeve janë më të këqija se platforma jonë.
- Gabimet në testet janë më të shumta se në platformën tonë (uptime më i ulët).
- Nuk kanë servera DNS të tyre në Kinë. Nga këtu, shumë gabime në teste për shkak të kohës së zgjidhjes DNS.
- Nuk ofrojnë gamat e tyre IP -> nuk ka mundësi për të shkruar saktë set_real_ip_from në serverat tanë.
Metrikat (~3626 runs; të gjitha metrikat, përveç Uptime, në ms; statistika për një interval të caktuar kohor):
Ofruesi CDN
Median
75%
95%
Përgjigje
Përgjigjia e Webfaqes
Disponueshmëria
DNS
Connect
Wait
Ngarko
SSL
Ali CDN
9195
10749
17489
1,715
10,745
99.531
57
17
927
479
200
Akamai
9783
11887
19888
2,352
11,550
98.980
424
91
1408
381
50
Shpërndarja sipas Percentile (në ms):
Percentile
Akamai
Ali CDN
10
7,092
6,942
20
7,775
7,583
30
8,446
8,092
40
9,146
8,596
50
9,783
9,195
60
10,497
9,770
70
11,371
10,383
80
12,670
11,255
90
15,882
13,165
100
91,592
91,596
Konkluzionet janë se opsioni me Akamai është i qëndrueshëm, por nuk ofron të njëjtat nivele të stabilitetit dhe shpejtësisë si zgjidhja jonë e brendshme së bashku me Ali CDN.
Shënime të vogla
Disa pika nuk janë përfshirë në narracion, por do të doja t'i përmendja ato gjithashtu.
Pekin + Tokio dhe Hong Kong
Siç e thamë më sipër, testuam tunelin IPSEC deri në Hong Kong (HK). Por gjithashtu testuam edhe CEN deri në HK. Ai është pak më i lirë dhe ishte interesante të shihnim si do të funksiononte midis qyteteve që janë rreth 100 km larg. E habitshme ishte se latency midis këtyre qyteteve ishte 100ms më e lartë se në opsionin tonë fillestar (deri në Tajvan). Shpejtësia dhe stabiliteti gjithashtu ishin më të mira për Tajvanin. Në fund, e lejuam HK si një rajon backup IPSEC.
Për më tepër, ne provuam të ngrinim një instalim të tillë:
- terminimi i klientëve në Pekin,
- IPSEC dhe CEN deri në Tokio,
- në Ali CDN u caktua nga serveri origjin në Pekin.
Ky skemë nuk ishte aq e qëndrueshme, megjithatë për shpejtësi në përgjithësi nuk ishte më e keqe se zgjidhja jonë. Sa i përket tunelit, kam parë rëniet periodike edhe për CEN, i cili duhet të ishte stabil. Prandaj, u kthehem skemës së vjetër dhe e hoqëm këtë fazë.
Më poshtë është statistika për latency midis rajoneve të ndryshme për kanale të ndryshme. Ndoshta dikujt do t'i interesojë.
IPsec
Ali cn-beijing GCP asia-northeast1 â 193ms
Ali cn-shenzhen GCP asia-east2 â 91ms
Ali cn-shenzhen GCP us-east4 â 200ms
CEN
Ali cn-beijing Ali ap-northeast-1 â 54ms (!)
Ali cn-shenzhen Ali cn-hongkong â 6ms (!)
Ali cn-shenzhen Ali us-east1 â 216ms
Informacione të përgjithshme rreth internetit në Kinë
Si një shtesë për problemet me internetin, të përshkruara në fillim, në pjesën e parë të artikullit.
- Internetin në Kinë punon relativisht shpejt brenda.
- Përfundimi është bazuar në testimin e rrjeteve Wi-Fi publike në vende të ndryshme, ku këto rrjete përdoren nga një numër i madh njerëzish.
- Shpejtësia e ngarkimit dhe shkarkimit në serverët brenda Kinës ishte rreth 20 Mbps dhe 5-10 Mbps përkatësisht.
- Shpejtësia deri në serverët jashtë Kinës është thjesht minimale, më pak se 1 Mbps.
- Internetin në Kinë nuk është shumë i qëndrueshëm.
- Disa herë faqet mund të hapen shpejt, disa herë ngadalë (në të njëjtën orë ditore në ditë të ndryshme), me kusht që konfigurimi të mos ndryshohet. Ne e vërejëm këtë në rastin e semrushchina.cn. Këtë mund ta asociojmë me Ali CDN, i cili gjithashtu funksionon kështu ose ndryshe në varësi të orës së ditës, pozicionit të yjeve etj.
- Internetin mobil Ă«shtĂ« praktikisht kudo 4G ose 4G+. Kapja Ă«shtĂ« nĂ« metrotĂ«, ashensorĂ«t â me fjalĂ« tĂ« tjera, kudo.
- Miti është se përdoruesit kinezë besojnë vetëm në domainet në zonën .cn. Ne e kemi verifikuar këtë drejtpërdrejt me përdoruesit.
- Mund të shihet se redirigjon në www.baidu.com (edhe në Kinë kontinentale).
- Shumë burime janë vërtet të bllokuara. Në mënyrë primitive: google.com, Facebook, Twitter. Por shumë burime të Google funksionojnë (sigurisht, jo në të gjithë Wi-Fi dhe VPN nuk përdoret (edhe nga ana e routerit, kjo është e sigurt).
- Shumë 'teknikë' domainet e korporatave të bllokuara funksionojnë gjithashtu. Kjo do të thotë se nuk është gjithmonë e nevojshme të hiqen të gjitha burimet që duken se janë të bllokuara. Duhet kërkuar ndonjë listë të domainëve të ndaluar.
- Ata kanë vetëm tre operatorë të mëdhenj të internetit: China Unicom, China Telecom, China Mobile. Ka edhe disa të vegjël, por pjesëmarrja e tyre në treg është e parëndësishme.
Bonus: skema përfundimtare e zgjidhjes

Përfundimi
Ka kaluar një vit që nga fillimi i projektit. Ne filluam me faktin se faqja jonë nuk pranonte të punonte normalisht nga Kina, dhe thjesht GET curl merrte 5.5 sekonda.
Më pas, nga këto tregues me zgjidhjen fillestare (Cloudflare):
Zgjidhja
Disponueshmëria
Median
75 Percentile
95 Percentile
Cloudflare
86.6
18s
30s
60s
Më në fund arritëm këta rezultate (statistika për muajin e fundit):
Zgjidhja
Disponueshmëria
Median
75 Percentile
95 Percentile
Ali CDN + CEN/IPsec + GLB
99.86
8.8s
9.5s
13.7s
Siç duket, nuk kemi arritur ende uptime të 100%, por do të mendojmë diçka dhe do t'ju tregojmë rezultatet në një artikull të ri :)
PĂ«r ata qĂ« e lexuan deri nĂ« fund tĂ« tĂ« tre pjesĂ«ve â respekt. Shpresoj qĂ« gjithçka ishte njĂ«soj interesante pĂ«r ju siç ishte pĂ«r mua kur e bĂ«ja kĂ«tĂ«.
P.S. Pjesët e mëparshme
Burimi: habr.com
