|
|
Postat pe 25.12.2014 16:18:52
|
|
|
|

Context și nevoi
Site-ul Centrului de Servicii pentru Clienți al Căilor Ferate din China (www.1230**) este unul dintre cele mai mari sisteme de tranzacționare în timp real din lume, comparabil cu Amazon.com, iar site-ul este supus unei presiuni mari în timpul sărbătorilor, mai ales în timpul Festivalului Primăverii. Conform statisticilor, în perioada de vârf a Festivalului Primăverii, la începutul anului 2012, 20 de milioane de persoane vizitau site-ul zilnic, cu un maxim de 1,4 miliarde de vizualizări zilnice. Un număr mare de accesări simultane la rețea au făcut ca 12306 să fie aproape paralizat. Institutul de Tehnologie Electronică a Calculului al Academiei Chineze de Științe Feroviare, în calitate de contractor al sistemului de bilete pe Internet 12306, are nevoie urgentă să găsească o soluție pentru această problemă.
Rezolvare reușită: de peste 75 de ori mai rapidă
Din martie 2012, Corporația Feroviară (fostă Ministerul Căilor Ferate) a început să investigheze și să renoveze 12306. În iunie 2012, platforma distribuită de calcul în memorie Pivotal GemFire (Distributed In-memory computing) a fost selectată pentru a transforma 12306, care a fost furnizată de Wang Mingzhe, șeful echipei de proiect a Academiei de Științe ale Fierului, și de IISI Information Technology Co., Ltd., sub conducerea lui Zhu Jiansheng, directorul Academiei de Științe Feroviare.Prima fază va transforma mai întâi principalul blocaj al sistemului 12306 - sistemul rămas de interogare a biletelor。 În septembrie, transformarea codului a fost finalizată și sistemul a fost lansat. De Ziua Națională din 2012, în perioada de vârf a rezervărilor online, poți descoperi semnificativ că te poți conecta la 12306, deși încă este dificil să rezervi bilete, însă biletele rămase sunt foarte rapide. În octombrie 2012,A doua fază este transformarea sistemului de solicitare a comenzilor cu GemFire (clienții își interoghează propriile înregistrări de comandă)。 În timpul Festivalului de Primăvară din 2013, este perioada de vârf a rezervărilor online, iar în mod semnificativ poți descoperi că te poți conecta la 12306, deși încă este dificil să rezervi bilete, însă interogarea pentru biletele rămase este foarte rapidă, iar întrebarea despre propria rezervare și comandă este, de asemenea, foarte rapidă.
Conform înregistrării de date de funcționare a sistemului, după transformarea tehnică,În utilizarea a doar 10 servere X86, capacitățile rămase de calcul a tichetelor și interogări ale zecilor de calculatoare mici au fost realizate, iar timpul maxim al unei singure interogări a fost redus de la aproximativ 15 secunde la mai puțin de 0,2 secunde, perioadă care a fost scurtată de peste 75 de ori。 În cazul unei concurențe extrem de mari de trafic în timpul Festivalului de Primăvară din 2012, sistemul a fost aproape paralizat. După transformare,Suportă zeci de mii de interogări simultane pe secundă, atingând un debit de 26.000 de interogări pe secundă în perioadele de vârf, eficiența întregului sistem este semnificativ îmbunătățită. Așa cum se vede în imaginea de mai sus.
În modul de operare al sistemului, înainte de transformare, sistemul de interogări de ordine poate suporta doar un debit de 300-400 de interogări pe secundă, iar interogările concurente cu trafic ridicat pot fi realizate doar prin divizarea bazei de date. După transformare, debitul poate ajunge la zeci de mii de interogări pe secundă, iar viteza interogării poate fi garantată de aproximativ 20 de milisecunde.
Noua arhitectură tehnologică poate:Elasticitatea scalării dinamice la cerereCând cantitatea concurenței crește, poți crește dinamic serverul X86 pentru a menține un timp de răspuns de milisecundă.
Căutând-o într-un vis: revoluția tehnologică se întinde pe trei generații într-un singur pas
12306 poate obține astfel de efecte care zguduie pământul, este imposibil să te bazezi pe reparații tehnice mici și trebuie să existe o idee nouă care să aducă pârghii la îmbunătățirea performanței. 12306 a descoperit că platforma de date distribuite în memorie GemFire este una dintre aceste tehnologii.
Raționamentul tehnic al platformei de date distribuite în memorie GemFireDupă cum se arată în figura de mai sus: Prin tehnologia de virtualizare a platformei de cloud computing, memoria mai multor servere X86 este centralizată pentru a forma un pool de resurse de memorie de până la zeci de terabytes, iar toate datele sunt încărcate în memorie pentru calcul în memorie. Procesul de calcul în sine nu trebuie să citească și să scrie pe disc, ci doar să scrie periodic date pe disc sincron sau asincron. GemFire stochează mai multe copii ale datelor într-un cluster distribuit, iar dacă vreo mașină cedează, există backup-uri pe alte mașini, deci de obicei nu este nevoie să-ți faci griji pentru pierderea datelor, iar datele de pe disc sunt folosite ca backup. GemFire suportă persistarea datelor în memorie într-o varietate de baze de date relaționale tradiționale, biblioteci Hadoop și alte sisteme de fișiere.
După cum știm cu toții, blocajul arhitecturii actuale de calcul este stocarea, viteza procesorului se dublează conform Legii lui Moore, iar viteza stocării pe disc crește foarte lent, rezultând un decalaj uriaș de până la 100.000 de ori (așa cum se arată în figura de mai sus). Acest lucru face ușor de înțeles de ce GemFire poate îmbunătăți semnificativ performanța sistemului.
Conform relației dintre calcul și stocare, putem împărți arhitectura de calcul în patru generații:
Prima generație, un sistem bazat pe un singur disc: Datele trebuie citite de pe disc în timpul calculelor. Calculatoarele mici și mainframe-urile se numără printre lideri, atingând performanța supremă a unui singur sistem.
A doua generație, un sistem distribuit de clusterizare bazat pe discuri: În timpul procesului de calcul, datele trebuie citite de pe disc, dar datele sunt distribuite pe diferite discuri server printr-un sistem de distribuție pentru a îmbunătăți puterea de procesare a întregului sistem. În prezent, multe companii mari de Internet și comerț electronic folosesc sisteme distribuite de clusterizare bazate pe servere X86, bazându-se pe implementarea masivă a serverelor X86 pentru a rezolva problema concurenței cu trafic ridicat.
A treia generație, un sistem bazat pe memorie unică: Pune întreaga bază de date în memorie, iar procesul de calcul nu necesită citirea datelor de pe disc. Performanța întregului sistem depinde de performanța unui singur sistem. Bazele de date tradiționale în memorie sunt astfel de sisteme care pot rezolva bine problema vitezei de acces pentru aplicațiile la nivel enterprise, dar nu pot face nimic în privința scălabilității datelor masive sau a accesului concurent masiv.
A patra generație este un sistem de clusterizare distribuită bazată pe memorie: GemFire este un astfel de sistem, calculul paralel fiind una dintre tehnologiile sale cheie, astfel încât poate scala performanța liniar pe baza calculului în memorie prin creșterea scalei de implementare a serverelor.
12306 a adoptat anterior arhitectura de minicalculatoare Unix și a folosit tehnologia GemFire pentru a o transforma într-o arhitectură de cluster de servere Linux/X86, ceea ce înseamnă că acoperă trei generații. De la calculatoare mici la clustere de servere X86 cu memorie mare, nu doar că îmbunătățește performanța cu un ordin de mărime, dar costă și mult mai puțin.
GemFire face parte din platforma Big Data PaaS de nivel enterprise a Pivotal. Platforma Big Data PaaS la nivel enterprise a Pivotal are trei niveluri principale: Cloud Fabric, Big Data Infrastructure Layer și Application Fabric. GemFire aparține stratului infrastructurii big data, iar în plus, baza de date Greenplum aparține și ea acestui strat; Tehnologia stratului infrastructurii cloud este Cloud Foundry; Tehnologiile pentru stratul infrastructurii de dezvoltare a aplicațiilor sunt Spring Framework și RabbitMQ, printre altele.
Referitor la transformarea introducerii tehnologiei GemFire, Zhu Jiansheng, director adjunct al Institutului de Tehnologie a Calculului Electronic al Academiei Chineze de Științe Feroviare, a declarat: "Prin transformarea tehnologică, am rezolvat problema concurenței de trafic ridicat care ne-a afectat de mult timp, astfel încât oamenii din întreaga țară nu se mai plâng din motive tehnice, iar noi suntem în cele din urmă ușurați." Tehnologia de date în memorie distribuită Pivotal GemFire a jucat un rol cheie în întreaga transformare tehnologică. În același timp, datorită eforturilor Pivotal și ale echipei sale de proiect pentru a asigura funcționarea lină a vechiului sistem și migrarea lină de la vechiul sistem la cel nou pe parcursul procesului de dezvoltare tehnică și transformare, noul sistem a fost lansat rapid. ”
|
Precedent:12306 Un număr mare de parole de utilizator au fost scurse, iar adresa de descărcare a bazei de date 12306 a fost divulgatăUrmător:O cantitate mare de date de utilizator 12306 au devenit virale pe Internet, inclusiv numere de cont de utilizator, parole în text clar, cărți de identitate, emailuri etc
|