Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 16269|Atbildi: 0

Interneta produkta izlaišanas pelēktoņu izlaišana

[Kopēt saiti]
Publicēts 09.03.2017 15:48:27 | | | |


Iepriekš minētais attēls ir Tencent pelēktoņu izlaidums, parastie lietotāji tam var piekļūt, Alibaba Cloud serverim nevar piekļūt, ping ir normāls, un izšķirtspējas IP ir arī normāls

Tas ir vienkārši nepieejams, var redzēt, ka Tencent patīk spēlēt arī ar pelēktoņu izlaišanu ...

1. Kāpēc pelēktoņu izlaišana
  • Interneta pakalpojumi bieži mainās, un izlaišanas cikli ir īsi. Ātrumu un kvalitāti vienmēr ir grūti apvienot.
  • Pelēktoņu publicēšana var samazināt publicēšanas risku un samazināt ietekmes apjomu.
  • Samaziniet atkarību no testēšanas un samaziniet datu veidošanas izmaksas bezsaistes paštestēšanai.
  • Ir ērti centralizēti uzraudzīt žurnālus un publicēt tos pilnībā Slodzes līdzsvarošanas lomas dēļ katrā slānī ir grūti izsekot pilnīgu zvana saiti.
  • Varat izmantot pelēktoņu testa kontus un pēc tam pelēktoņu reālos lietotāju kontus pēc testa konta nokārtošanas, lai vēl vairāk samazinātu publicēšanas risku un ietekmi.
  • Viegla atcelšana.
Problēmas, kuras nevar atrisināt ar pelēktoņu izlaidumiem

Jāuzsver, ka iepriekš minētajai "pieļaujamajai ietekmei" jābūt atgūstamai, piemēram, API nevar izsaukt uz noteiktu laiku, bet pēc remonta to var veiksmīgi izsaukt. Lietotāja datu (piemēram, informācija par produktu, informācija par pasūtījumu utt.) neatgriezeniska zudums vai iznīcināšana nav pieļaujama. Tāpēc interneta uzņēmumu arhitektu pienākums ir labot zaudētos lietotāja datus nesenā stāvoklī (piemēram, pirms stundas līdz nedēļai), manuāli iejaucoties lietotāja datu zuduma gadījumā ražošanas sistēmas traucējumu dēļ (piemēram, regulāra lietotāja datu dublēšana, operāciju žurnālu rakstīšana utt.).

PADOMI Vispirms pārbaudiet sava konta pelēktoņu politiku, lai samazinātu risku sabojāt vai zaudēt reālu lietotāju datus.

2. Kāds efekts ir sagaidāms?
Neatkarīgi no izmaiņām, mēs vēlamies, lai konkrēti pieprasījumi tiktu novirzīti uz mūsu izmaiņu versiju (pelēktoņu versiju) novērošanai un apstiprināšanai.

3. Pelēktoņu stratēģija
Patiesībā pieprasījumi ir jānovirza uz mūsu pelēktoņu versiju (pelēktoņu mašīnu). Tas bieži ir cieši saistīts ar uzņēmējdarbību. Piemēram, API parasti ir šādas prasības:

Konkrēti lietotāji (piemēram, testa konti)
Konkrētas lietotnes (piemēram, testa lietotnes vai partneru lietotnes)
Specifiski moduļi un saskarnes (tikai dažām saskarnēm ir nepieciešamas pelēktoņas, kas parasti ir API konteineru modifikācija, un dažas API, kas nav ļoti svarīgas, tiek izmantotas pelēktoņu testēšanai.) )
Specifiska ierīce (daži pieprasījuma IP tiek pārsūtīti uz pelēktoņu ierīci)
4. Pelēktoņu shēmu apspriešana
1. risinājums: koda līmenis tiek vērtēts pēc saskaņotā karoga, un vecais un jaunais tiek dinamiski pārslēgti - Amazon pieeja

Ieviešana:

Apglabājiet slēdzi kodā, izdariet spriedumu "if-else" un iestatiet slēdzi uz ieslēgtu mašīnām, kurām nepieciešama pelēktoņa, pretējā gadījumā tas ir izslēgts. Katram laidienam ir divas versijas.

Nopelniem

Ātra atcelšana, nav nepieciešams atkārtoti publicēt un pārstartēt sistēmu.
Trūkums

Esiet tendēts uz kodēšanu.
Sazarotā loģika rada sarežģītību.
Šo metodi autors izmantoja, kad es biju Alibaba, pārslēdzot preču datu bāzi no Oracle uz MySQL un izmantojot stāvokļa mainīgo kontrolei. Tādējādi panākot vienmērīgas migrācijas efektu.

2. variants: pirmsizlaides mašīna - Alibaba prakse

Patiesībā tas nav pelēktoņi patiesajā nozīmē. Tā kā šī pirmsizlaides mašīna ir iekšēja IP adrese, un tai nav ārēja pakalpojuma. Verifikācijai ir nepieciešama domēna saistīšana. Bet dati ir pilnīgi tiešsaistē. Tātad tā būtībā ir vienkārša pieeja dažiem konkrētiem pelēktoņu lietotājiem (lietotājiem, kuriem ir piekļuve pelēktoņu mašīnai, iekšējās pārbaudes lietotājiem). Patiesībā līdzīga pieeja ir arī API pusē, kas ir mūsu Gamma vide, un mēs arī nodrošinām Gamma mašīnas domēna nosaukumu, lai atvieglotu ārējo sadarbības lietotāju sadarbību ar testēšanu.

Nopelniem

Vienkārši
Trūkums

Izšķērdēt mašīnu (to var ievietot ražošanas vidē pēc pirmsizlaides pabeigšanas un noņemt no nginx pirmsizlaides laikā, bet ir nepieciešams O&M atbalsts.) )
Nav pietiekami elastīgs
IDL pakalpojumus var izmantot tikai piekļuves slāņa mašīnām, un IDL pakalpojumi ir jāaplūko atsevišķi.
3. iespēja: SET izvietošana

1. Izvietojiet izolēti atbilstoši pakalpojumiem

Piemēram, pašreizējā API konteineru praksē izvietošanas detalizāciju var sasniegt līdz API līmenim, bet priekšgala uz priekšu - saskaņā ar nginx. Piemēram, kas:

Mikro iepirkšanās API konteiners: api.weigou.qq.com
Pat API Container:api.paipai.com
Yixun API konteiners: api.yixun.com
Tiešsaistes iepirkšanās API Container:api.buy.qq.com
Iepriekš minētais ir izolēts izvietojums lielā biznesa līmenī. To var arī vēl vairāk uzlabot līdz moduļa līmenim, piemēram, virtuālā pakalpojuma e-komercijas API, kas ir apakšbiznesa modulis, kas karājas zem Paipai, bet, tā kā tie ir savienoti ar WeChat, apmeklējumu skaits ir ievērojami palielinājies, lai izvairītos no citu Paipai uzņēmumu ietekmes, un, lai izvairītos no citu uzņēmumu ietekmes, API šeit ir izvietot divas mašīnas atsevišķi, nginx var konfigurēt, lai iztukšotu virtuālo API piekļuvi:

Virtuālais API konteiners: http://api.paipai.com/v2/virbiz

Tādā veidā, izlaižot versiju, mēs vispirms varam izvēlēties Yixun ar mazāko publicējamo biznesa apjomu un pēc tam novērot, ka pirms visu pārējo platformu izmantošanas nav problēmu.

2. Izvietošana, izmantojot lietotāju izolāciju

Tas nav ļoti piemērots atvērtām platformām, bet tas ir ļoti piemērots tādiem lietojumprogrammu scenārijiem kā SNS. Piemēram, QQ sistēma ir sadalīta vairākās kopās atbilstoši lietotāju numuru segmentiem, un katrā komplektā ir 100 miljoni secīgu skaitļu. Pieņemot, ka jaunākais QQ skaitlis ir tuvu 1 miljardam, kopumā ir 10 komplekti (no 1. līdz 10. kopai). Tādā veidā jūs varat izvēlēties vienu no SETS, ko publicēt katru reizi, un augsta līmeņa QQ bieži vien nav ļoti svarīgs lietotājs, tāpēc SET10 tiks izlaists vispirms.

Nopelniem

Izolēta izvietošana ar minimālu ietekmi uz visām biznesa līnijām. Automātiski atbalstīt pelēktoņu publicēšanu.
Trūkums

Pelēktoņu granularitāte ir atkarīga no izolētās izvietošanas detalizācijas, kas parasti ir liela.
Mašīnu izšķērdēšana salīdzinājumā ar centralizēto izvietošanu.
Katras biznesa līnijas versijas var būt nekonsekventas, kas neveicina vienotu pārvaldību.
Ir noteiktas ieviešanas un ieviešanas izmaksas
4. shēma: dinamiskā maršrutēšana

Metode: izmantojiet pelēktoņu politiku, kuru var elastīgi konfigurēt, lai ietekmētu slodzes bilances darbību un ļautu tai atgriezt pelēktoņu pakalpojuma IP un portu saskaņā ar pelēktoņu politiku.

Piemērots pelēktoņu apkalpošanai ar back-office IDL.

Nopelniem

Elastīgs, kontrolējams.
Trūkums

Pašreizējais konfigurācijas centrs un pats L5 neņem vērā norādītās maršrutēšanas politikas un nav mērogojamas, tāpēc tās ir jāizstrādā ārpus tām.
API metadatu avoti ir salīdzinoši izkliedēti, un pašlaik API un IDL metadati, API līmeņi un biežuma ierobežojumi ir sadalīti dažādos datu avotos, un tagad ir nepieciešams pievienot pelēktoņu maršrutēšanas datu avotu.




Parasti ir trīs veidi, kā publicēt pelēktoņus nginx+lua, nginx tiek sadalīts saskaņā ar sīkdatnēm, un nginx tiek piešķirts pēc svara:
nginx+lua atšķiras pēc apmeklētāja IP adreses, jo uzņēmums eksportē IP adresi, un vietnei tiks piekļūta vai nu vecā versija, vai jaunā versija, kas nav piemērota šai metodei
Nginx piešķir svarus, pamatojoties uz svariem, kas ir vienkārši īstenojami un kurus var izmēģināt
Nginx sadalās, pamatojoties uz sīkfailiem, un pelēktoņu publikācijas, pamatojoties uz lietotājiem





Iepriekšējo:Javascrip{filter}t window.print() iestata drukas stilu un saturu
Nākamo:Parunāsim par pelēktoņu publicēšanu un fona pakalpojumu uzraudzību
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com