Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ

N'afọ ndị na-adịbeghị anya, ọtụtụ ikpo okwu maka ịkwalite ọrụ njedebe n'ihu na-enye ohere maka nnabata onwe onye ma ọ bụ proxying akụrụngwa nke ndị ọzọ. Akamai na-enye gị ohere ịtọ kpọmkwem paramita maka URL ndị emepụtara onwe ya. Cloudflare nwere teknụzụ Edge Workers. Fasterzine nwere ike ihe atụ URL dị na ibe ka ha rụtụ aka na akụrụngwa ndị ọzọ dị na ngalaba isi saịtị ahụ.

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ

Ọ bụrụ na ị maara na ọrụ ndị ọzọ na-eji na oru ngo gị anaghị agbanwe ọtụtụ oge, yana na usoro nke ịnyefe ha n'aka ndị ahịa nwere ike imeziwanye, mgbe ahụ ị na-eche echiche maka proxying ọrụ ndị dị otú ahụ. Site na usoro a, ị nwere ike iweta akụrụngwa ndị a nso na ndị ọrụ gị wee nweta njikwa zuru oke n'ihe nchekwa ha na akụkụ ndị ahịa. Nke a, na mgbakwunye, na-enye gị ohere ichebe ndị ọrụ site na nsogbu nke "okuku" nke ọrụ ndị ọzọ ma ọ bụ mmebi nke arụmọrụ ya kpatara.

Ọ dị mma: arụmọrụ emelitere

Ịkwado ihe onwunwe onye ọzọ onwe ya na-eme ka arụmọrụ dị mma n'ụzọ doro anya. Ihe nchọgharị ahụ adịghị mkpa ịnweta DNS ọzọ, ọ dịghị mkpa ka ịmepụta njikọ TCP ma mee aka TLS na ngalaba ndị ọzọ. Ị nwere ike ịhụ ka nnabata onye ọzọ nwere onwe ya si emetụta arụmọrụ site n'ịtụle ọnụ ọgụgụ abụọ ndị a.

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
A na-ebudata akụrụngwa ndị ọzọ site na isi mmalite (si na site n'ebe a)

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
A na-echekwa ihe onwunwe ndị ọzọ n'otu ebe dị ka ihe ndị ọzọ dị na saịtị ahụ (wepụtara na site n'ebe a)

A na-emeziwanye ọnọdụ ahụ site n'eziokwu ahụ bụ na ihe nchọgharị ahụ ga-eji ikike ịmegharị ma tinye data site na njikọ HTTP / 2 nke emeberela na ngalaba isi.

Ọ bụrụ na ị kwadoghị akụrụngwa ndị ọzọ, ebe ọ bụ na a ga-ebugo ha site na ngalaba dị iche na nke bụ isi, enweghị ike ibute ha ụzọ. Nke a ga-eme ka ha na-asọrịta mpi maka bandwit nke onye ahịa. Nke a nwere ike bute oge nbudata maka ọdịnaya dị oke mkpa iji wuo ibe nke dị ogologo karịa ihe a ga-enweta n'okpuru ọnọdụ dị mma. ebe a kwuo okwu na mkpa HTTP/2 na-akọwa ihe a niile nke ọma.

Enwere ike iche na iji njirimara na njikọ nke ihe ndị dị na mpụga preconnect ga-enyere aka dozie nsogbu ahụ. Agbanyeghị, ọ bụrụ na enwere ọtụtụ njikọ ndị a na ngalaba dị iche iche, ọ nwere ike bufee ahịrị nkwukọrịta n'oge kacha mkpa.

Ọ bụrụ na ị kwadoro akụrụngwa ndị ọzọ n'onwe gị, ị nwere ike ijikwa otu esi enye onye ahịa ihe ndị a kpọmkwem. Ya bụ, anyị na-ekwu maka ihe ndị a:

  • Ị nwere ike hụ na ejiri data mkpakọ algọridim dabara nke ọma maka ihe nchọgharị ọ bụla (Brotli/gzip).
  • Ị nwere ike ịbawanye oge caching maka ihe onwunwe ndị na-adịkarịghị ogologo oge, ọbụna na ndị na-enye ndị a maara nke ọma (dịka ọmụmaatụ, uru kwekọrọ na mkpado GA ka edoziri na nkeji 30).

Ị nwere ike ịgbatị TTL maka akụrụngwa iji, sịnụ, otu afọ site na itinye ọdịnaya dị mkpa n'ime atụmatụ njikwa caching gị (URL hashes, versioning, wdg). Anyị ga-ekwu maka nke a n'okpuru.

▍ Nchedo megide nkwụsịtụ na ọrụ nke ndị ọzọ ma ọ bụ nkwụsị ha

Akụkụ ọzọ na-adọrọ mmasị nke ịnweta akụrụngwa nke ndị ọzọ bụ na ọ na-enye gị ohere ibelata ihe egwu ndị metụtara nkwụsị nke ọrụ ndị ọzọ. Ka anyị were na usoro nnwale A/B nke atọ ị na-eji na-emejuputa atumatu dị ka edemede mgbochi nke na-ebu na ngalaba isi nke ibe ahụ. Edemede a na-ebu nwayọ nwayọ. Ọ bụrụ na edemede kwekọrọ ekwekọghị, ibe ahụ ga-abụ ihe efu. Ọ bụrụ na ọ na-ewe ogologo oge iji buo ya, ibe ahụ ga-apụta na ogologo oge. Ma ọ bụ, were ya na ọrụ a na-eji ọbá akwụkwọ ebudatara na akụrụngwa CDN ndị ọzọ. Ka anyị were ya na akụrụngwa a nwere ọdịda ma ọ bụ egbochiri ya n'otu obodo. Ọnọdụ dị otú ahụ ga-eduga na imebi echiche nke saịtị ahụ.

Iji chọpụta ka saịtị gị si arụ ọrụ mgbe ụfọdụ ọrụ mpụga adịghị, ị nwere ike iji ngalaba SPOF na webpagetest.org.

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
Ngalaba SPOF na webpagetest.org

▍ Kedu maka nsogbu na caching nke ihe na ihe nchọgharị? (ntụgharị: ọ bụ akụkọ ifo)

Ị nwere ike iche na iji CDN ọha na eze ga-eduga na arụ ọrụ akụrụngwa ka mma, ebe ọ bụ na ọrụ ndị a nwere netwọk dị elu ma kesaa ya gburugburu ụwa. Mana ihe niile bụ n'ezie ntakịrị mgbagwoju anya.

Ka anyị kwuo na anyị nwere saịtị dị iche iche: website1.com, website2.com, website3.com. Saịtị ndị a niile na-eji ọba akwụkwọ jQuery. Anyị na-ejikọta ya na ha site na iji CDN, dịka ọmụmaatụ - googleapis.com. Ị nwere ike ịtụ anya ka ihe nchọgharị ahụ budata ma chekwaa ọba akwụkwọ ahụ otu oge, wee jiri ya gafee saịtị atọ ahụ. Nke a nwere ike ibelata ibu na netwọkụ. Ikekwe nke a ga-enye gị ohere ịchekwa ego ebe ma nyere aka melite arụmọrụ akụrụngwa. Site na echiche bara uru, ihe niile na-ele anya dị iche iche. Dịka ọmụmaatụ, Safari nwere njirimara a na-akpọ Mgbochi Ndepụta Ọgụgụ Isi: Ebe nchekwa ahụ na-eji igodo abụọ dabere na isi mmalite nke akwụkwọ ahụ na isi mmalite nke akụ ndị ọzọ. ebe a ezigbo akụkọ banyere isiokwu a.

ochie ọmụmụ Yahoo и Facebook, yana nso nso a ọmụmụ Paul Calvano, na-egosi na anaghị echekwa akụrụngwa na cache nchọgharị ruo ogologo oge anyị nwere ike ịtụ anya: "Enwere nnukwu ọdịiche dị n'etiti oge nchekwa nke ọrụ nke onwe na nke ndị ọzọ. Anyị na-ekwu maka CSS na mkpụrụedemede webụ. Ya bụ, 95% nke mkpụrụedemede ala nwere ndụ nchekwa ihe karịrị otu izu, ebe 50% nke mkpụrụedemede ndị ọzọ nwere ndụ cache nke na-erughị otu izu! Nke a na-enye ndị mmepe weebụ ezigbo ihe mere ha ga-eji kwado faịlụ font n'onwe ha! "

N'ihi ya, ọ bụrụ na ị kwado ọdịnaya nke ndị ọzọ, ị gaghị achọpụta nsogbu arụmọrụ ọ bụla kpatara caching nchọgharị.

Ugbu a anyị kpuchiri ike nke nnabata onwe onye nke atọ, ka anyị kwuo maka otu esi agwa ezigbo mmejuputa usoro a site na nke ọjọọ.

Ihe ọjọọ: ekwensu nọ na nkọwa

Ịbugharị akụrụngwa ndị ọzọ gaa na ngalaba nke gị enweghị ike ịme ya na-akpaghị aka na-agba mbọ hụ na echekwara akụrụngwa ndị ahụ nke ọma.

Otu n'ime isi nsogbu ebe a bụ oge caching. Dịka ọmụmaatụ, ozi ụdị a gụnyere n'aha edemede ndị ọzọ dị ka nke a: jquery-3.4.1.js. Faịlụ dị otú ahụ agaghị agbanwe n'ọdịnihu, n'ihi ya nke a agaghị akpata nsogbu ọ bụla na caching ya.

Mana ọ bụrụ na ejighị ụfọdụ atụmatụ nsụgharị mgbe ị na-arụ ọrụ na faịlụ, scripts cache, ọdịnaya nke na-agbanwe mgbe aha faịlụ na-agbanweghị agbanwe, nwere ike ịghọ ihe ochie. Nke a nwere ike ịbụ nnukwu nsogbu, ebe ọ, dịka ọmụmaatụ, anaghị ekwe ka etinye patches nchekwa akpaaka na script nke ndị ahịa kwesịrị ịnata ngwa ngwa o kwere mee. Onye nrụpụta ga-agba mbọ imelite ụdị edemede a na cache. Tụkwasị na nke a, nke a nwere ike ime ka ngwa ọdịda ngwa n'ihi na koodu ejiri na onye ahịa site na cache dị iche na nke ọhụrụ nke koodu nke e mere akụkụ nkesa nke ọrụ ahụ.

N'ezie, ọ bụrụ na anyị na-ekwu maka ihe ndị a na-emelite ugboro ugboro (ndị njikwa mkpado, ngwọta maka ule A / B), mgbe ahụ, caching ha site na iji ngwaọrụ CDN bụ ọrụ nwere ike idozi, ma ọ dị mgbagwoju anya karị. Ọrụ dị ka Iwu Ọchịchị, ihe ngwọta njikwa mkpado, na-eji webhooks mgbe ị na-ebipụta ụdị ọhụrụ. Nke a na-enye gị ike ịmanye oghere cache na CDN, ma ọ bụ, ka mma, ike ịmanye hash ma ọ bụ URL mmelite.

▍ Mmegharị nnyefe nke ihe ndị ahịa

Na mgbakwunye, mgbe anyị na-ekwu maka caching, anyị kwesịrị iburu n'uche eziokwu ahụ bụ na ntọala caching ejiri na CDN nwere ike ọ gaghị adabara ụfọdụ akụrụngwa ndị ọzọ. Dịka ọmụmaatụ, akụrụngwa ndị dị otú ahụ nwere ike iji teknụzụ onye ọrụ sniffing (nrụ ọrụ ngbanwe) iji jeere ihe nchọgharị ụfọdụ nwere ụdị ọdịnaya ahaziri maka ihe nchọgharị ndị ahụ. Teknụzụ ndị a na-adabere na nkwupụta oge niile, ma ọ bụ nchekwa data nke ozi nkụnye HTTP, iji chọpụta ike nchọgharị. User-Agent. Ozugbo ha matara ihe nchọgharị ha na-emekọ ihe, ha na-enye ya ihe ndị emere maka ya.

N'ebe a, ị nwere ike icheta ọrụ abụọ. Nke mbụ bụ googlefonts.com. Nke abụọ bụ polyfill.io. Ọrụ Fonts Google na-enye, maka ụfọdụ akụrụngwa, koodu CSS dị iche iche, dabere na ike nke ihe nchọgharị ahụ (na-enye njikọ na akụrụngwa woff2 site na iji. unicode-range).

Nke a bụ nsonaazụ nke ajụjụ Google Fonts ole na ole emere site na ihe nchọgharị dị iche iche.

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
Nsonaazụ ajụjụ Google Fonts sitere na Chrome

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
Nsonaazụ nke ajụjụ Fonts Google mezuru site na IE10

Polyfill.io na-enye ihe nchọgharị naanị polyfill ọ chọrọ. Emere nke a maka ebumnuche arụmọrụ.

Dịka ọmụmaatụ, ka anyị lelee ihe na-eme ma ọ bụrụ na ị na-eme arịrịọ ndị a site na ihe nchọgharị dị iche iche: https://polyfill.io/v3/polyfill.js?features=default

Na nzaghachi nye arịrịọ dị otú ahụ emere site na IE10, 34 KB nke data ga-enweta. Azịza ya, nke emere site na Chrome, ga-abụ ihe efu.

Iwe: Ụfọdụ echiche nzuzo

Isi ihe a bụ nke ikpeazụ n'usoro, ma ọ dịghị ihe ọzọ dị mkpa. Isi ihe bụ na ntinye onwe onye nke ihe onwunwe nke atọ na isi ngalaba nke ọrụ ahụ ma ọ bụ na subdomain ya nwere ike imebi ihe nzuzo nke ndị ọrụ ma na-emetụta ọrụ weebụ bụ isi.

Ọ bụrụ na ahazighị sistemụ CDN gị nke ọma, ị nwere ike kwụsịchaa izipu kuki ngalaba gị na ọrụ ndị ọzọ. Ọ bụrụ na ahazighị nzacha kwesịrị ekwesị na ọkwa CDN, yabụ kuki nnọkọ gị, nke enweghị ike iji ya na Javascript (yana httponly), enwere ike iziga onye ọbịa nke mba ọzọ.

Nke a bụ kpọmkwem ihe nwere ike ime na ndị na-egwu egwu dịka Eulerian ma ọ bụ Criteo. Ndị na-eso ụzọ ndị ọzọ nwere ike edobela ihe nchọpụta pụrụ iche na kuki. Ọ bụrụ na ha bụ akụkụ nke ihe saịtị, ha nwere ike ịgụ ihe nchọpụta ahụ n'uche ha mgbe onye ọrụ na-eji akụrụngwa weebụ dị iche iche na-arụ ọrụ.

Ụbọchị ndị a, ọtụtụ ihe nchọgharị na-agụnye nchebe megide ụdị omume tracker a. N'ihi ya, ndị na-egwu egwu na-eji teknụzụ eme ihe ugbu a CNAME mkpuchi, na-eme ka ọ bụrụ ihe odide nke ha maka ọrụ dị iche iche. Ya bụ, ndị na-egwu egwu na-enye ndị nwe saịtị ka ha tinye CNAME na ntọala ha maka ngalaba ụfọdụ, adreesị nke na-adịkarị ka usoro mkpụrụedemede enweghị usoro.

Ọ bụ ezie na a naghị atụ aro ka ịme kuki webụsaịtị dị na mpaghara subdomains niile (dịka ọmụmaatụ - *.website.com), ọtụtụ saịtị na-eme nke a. N'okwu a, a na-eziga kuki ndị dị otú ahụ na-akpaghị aka na ihe nchọta ndị ọzọ na-emehie. N'ihi ya, anyị enweghịzi ike ikwu maka nzuzo ọ bụla.

Ọzọkwa, otu ihe ahụ na-eme na nkụnye eji isi mee HTTP Onye ahịa-Ndụmọdụ, nke a na-eziga naanị na ngalaba isi, ebe ọ bụ na enwere ike iji ya mepụta akara mkpịsị aka dijitalụ onye ọrụ. Gbaa mbọ hụ na ọrụ CDN ị na-eji na-enyocha nkụnye ndị a nke ọma.

Nsonaazụ

Ọ bụrụ na ị na-eme atụmatụ imejuputa nnabata nke akụrụngwa nke ndị ọzọ n'oge adịghị anya, ka m nye gị ndụmọdụ:

  • Chekwaa ọba akwụkwọ JS gị kacha mkpa, mkpụrụedemede na faịlụ CSS. Nke a ga-ebelata ohere nke ọdịda saịtị ma ọ bụ mmebi arụmọrụ n'ihi akụrụngwa dị mkpa maka saịtị ahụ adịghị adị n'ihi mmejọ nke ọrụ ndị ọzọ.
  • Tupu ị na-echekwa ihe ndị ọzọ na CDN, jide n'aka na a na-eji ụfọdụ ụdị nsụgharị eme ihe mgbe ị na-akpọ faịlụ ha, ma ọ bụ na ị nwere ike ijikwa usoro ndụ nke ihe ndị a site na iji aka ma ọ bụ na-edozi cache CDN na-akpaghị aka mgbe ị na-ebipụta ụdị ọhụrụ. edemede ahụ.
  • Kpachara anya maka CDN gị, ihe nkesa proxy na ntọala cache. Nke a ga-enye gị ohere igbochi ọrụ gị ma ọ bụ nkụnye eji isi mee ka izipu kuki Client-Hints ọrụ ndị ọzọ.

Ezigbo ndị na-agụ akwụkwọ! Ị na-anabata ihe ndị ọzọ na sava gị nke dị oke mkpa maka ịrụ ọrụ nke ọrụ gị?

Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ
Ihe onwunwe ndị ọzọ na-akwado onwe ya: ndị dị mma, ndị ọjọọ, ndị jọrọ njọ

isi: www.habr.com

Tinye a comment