|
|
Postitatud 25.12.2014 16:18:52
|
|
|
|

Taust ja vajadused
Hiina Raudtee klienditeeninduskeskuse veebileht (www.1230**) on üks maailma suurimaid reaalajas kauplemissüsteeme, võrreldav Amazon.com-ga, ning veebileht on pühade ajal, eriti kevadfestivali ajal, suure surve all. Statistika kohaselt külastas 2012. aasta alguse kevadfestivali tippajal veebisaiti iga päev 20 miljonit inimest, maksimaalselt 1,4 miljardit päevast külastust. Suur hulk samaaegseid võrgu ligipääse põhjustas 12306 peaaegu halvatuse. Hiina Raudteeteaduste Akadeemia Elektroonilise Arvutitehnoloogia Instituut, olles 12306 internetipiletisüsteemi töövõtja, peab kiiresti leidma lahenduse probleemiks.
Edukas lahendus: üle 75 korra kiirem
Alates 2012. aasta märtsist on Raudteekorporatsioon (endine Raudteeministeerium) alustanud 12306 uurimist ja renoveerimist. 2012. aasta juunis valiti Pivotal GemFire hajutatud mälusisese arvutuse platvorm (Distributed In-memory computing) 12306 ümberkujundamiseks, mille pakkus Wang Mingzhe, Raudteaduste Akadeemia projektimeeskonna juht, ning IISI Information Technology Co., Ltd. juhtimisel Zhu Jiansheng, Raudteeteaduste Akadeemia direktor.Esimene etapp muudab esmalt 12306 peamise kitsaskoha – allesjäänud piletipäringusüsteemi。 Septembris lõpetati koodi teisendamine ja süsteem käivitati. 2012. aasta rahvuspühal, veebipõhise broneerimise tippajal, saab märkimisväärselt sisse logida numbrile 12306, kuigi piletite broneerimine on endiselt keeruline, kuid ülejäänud piletid on väga kiired. 2012. aasta oktoobris,Teine etapp on tellimuste päringusüsteemi ümberkujundamine GemFire'iga (kliendid pärivad ise oma tellimuskirjeid)。 2013. aasta kevadfestivali ajal on veebipõhise broneerimise tippperiood ning saad märkimisväärselt sisse logida numbrile 12306, kuigi piletite broneerimine on endiselt keeruline, kuid ülejäänud piletite pärimine on väga kiire ning ka sinu enda broneeringu ja tellimuse pärimine väga kiire.
Vastavalt süsteemi tööandmete andmetele, pärast tehnilist teisendust,Kasutades vaid 10 X86 serverit, on säilinud kümnete väikeste arvutite ülejäänud piletite arvutamise ja päringute võimekus ning ühe päringu maksimaalne aeg on lühenenud umbes 15 sekundilt alla 0,2 sekundi, mis on lühendatud enam kui 75 korda。 2012. aasta kevadfestivali ajal äärmiselt suure liiklusega ühisliikluse korral oli süsteem peaaegu halvatud. Pärast muutust,See toetab kümneid tuhandeid samaaegseid päringuid sekundis, saavutades tipptundidel 26 000 päringut sekundis, kogu süsteemi efektiivsus on oluliselt paranenud. Nagu ülaloleval pildil näha.
Süsteemi töörežiimis enne teisendust toetab järjestuspäringute süsteem ainult 300–400 päringut sekundis ning suure liiklusega samaaegseid päringuid saab realiseerida ainult andmebaasi jagamise kaudu. Pärast teisendust võib läbilaskevõime ulatuda kümnetesse tuhandetesse päringutesse sekundis ning päringu kiirus on garanteeritult umbes 20 millisekundit.
Uus tehnoloogiline arhitektuur suudab:Dünaamiline skaleerimine nõudluse elastsuse aluselKui samaaegsuse hulk suureneb, saab dünaamiliselt suurendada X86 serverit, et säilitada millisekundi tasemel reageerimisaega.
Otsin seda unenäos: tehnoloogiline revolutsioon hõlmab kolme põlvkonda ühe sammuga
12306 suudab saavutada selliseid maavärinaid, et väikestele tehnilistele parandustele on võimatu loota, ning peab olema uus idee, mis suudaks jõudluse parandamisele kaasa tuua. 12306 avastas, et GemFire jaotatud mälusisese andmeplatvormi on üks selline tehnoloogia.
GemFire jaotatud mälusisese andmeplatvormi tehniline põhjendusNagu ülaloleval joonisel näidatud: pilvearvutuse platvormi virtualiseerimistehnoloogia abil tsentraliseeritakse mitme X86 serveri mälu, moodustades kuni kümnete terabaitide suuruse mäluressursside basseini, ning kogu andmed laaditakse mällu mälusiseseks arvutuseks. Arvutusprotsess ise ei pea kettale lugema ega kirjutama, vaid kirjutab andmeid kettale ainult perioodiliselt sünkroonselt või asünkroonselt. GemFire salvestab mitu andmekoopiat hajutatud klastrisse ning kui mõni masin rikneb, on varukoopiad teistel masinatel, seega pole tavaliselt vaja andmekadu pärast muretseda ning varukoopiana on ketta andmed. GemFire toetab mälus andmete säilitamist erinevatesse traditsioonilistesse relatsioonilistesse andmebaasidesse, Hadoopi teekidesse ja teistesse failisüsteemidesse.
Nagu me kõik teame, on praeguse arvutusarhitektuuri kitsaskoht salvestus, protsessori kiirus kahekordistub vastavalt Moore'i seadusele ning kettasalvestuse kiirus kasvab väga aeglaselt, põhjustades tohutu kuni 100 000 korda (nagu ülaloleval joonisel näidatud). See teeb lihtsaks mõista, miks GemFire suudab süsteemi jõudlust oluliselt parandada.
Arvutamise ja salvestuse suhte põhjal saame arvutusarhitektuuri jagada neljaks põlvkonnaks:
Esimene põlvkond, ühe kettapõhine süsteem: Andmeid tuleb arvutuste ajal kettalt lugeda. Väikesed arvutid ja suurarvutid on liidrite seas, saavutades ühe süsteemi maksimaalse jõudluse.
Teine põlvkond on hajutatud klasterdamissüsteem, mis põhineb ketastel: Arvutusprotsessi käigus tuleb andmeid kettalt lugeda, kuid andmed jaotatakse erinevate serverikketaste vahel läbi jaotussüsteemi, et parandada kogu süsteemi töötlemisvõimsust. Praegu kasutavad paljud suured interneti- ja e-kaubandusettevõtted hajutatud klasterdussüsteeme, mis põhinevad X86 serveritel, tuginedes massiivsele X86 serverite juurutusele, et lahendada suure liiklusega samaaegsuse probleem.
Kolmas põlvkond, üks mälupõhine süsteem: Paneb kogu andmebaasi mällu ja arvutusprotsess ei nõua andmete lugemist kettalt. Kogu süsteemi jõudlus sõltub ühe süsteemi toimimisest. Traditsioonilised mälusisesed andmebaasid on sellised, mis suudavad lahendada ligipääsu kiiruse probleemi hästi ettevõtte tasemel rakendustes, kuid ei suuda midagi teha massiivsete andmete või suure samaaegse ligipääsu skaleeritavuse probleemiga.
Neljas põlvkond on mälupõhine hajutatud klasterdamissüsteem: GemFire on selline süsteem, paralleelarvutus on üks selle võtmetehnoloogiaid, seega saab see skaleerida jõudlust lineaarselt mälusisese arvutuse alusel, suurendades serverite juurutamise ulatust.
12306 võttis varem kasutusele Unix miniarvuti arhitektuuri ja kasutas GemFire tehnoloogiat, et muuta see Linux/X86 serveriklastri arhitektuuriks, mis tähendab, et see hõlmab kolme põlvkonda. Alates väikestest arvutitest kuni suure mäluga X86 serveriklastriteni parandab jõudlust mitmekordselt ning maksab ka palju madalamalt.
GemFire on osa Pivotali ettevõttetasemel suurandmete PaaS platvormist. Pivotali ettevõtte tasandi suurandmete PaaS platvormil on kolm peamist taset: Cloud Fabric, Big Data Infrastructure Layer ja Application Fabric. GemFire kuulub suurandmete infrastruktuuri kihti ning lisaks kuulub ka Greenplumi andmebaas sellesse kihti; Pilveinfrastruktuuri kihi tehnoloogia on Cloud Foundry; Rakenduste arenduse infrastruktuuri kihi tehnoloogiad on muu hulgas Spring Framework ja RabbitMQ.
GemFire tehnoloogia kasutuselevõtu ümberkujundamise kohta ütles Hiina Raudteeteaduste Akadeemia Elektroonilise Arvutustehnoloogia Instituudi asejuht Zhu Jiansheng: "Tehnoloogilise transformatsiooni kaudu oleme lahendanud pikka aega vaevanud tipuliikluse paralleelsuse probleemi, nii et kogu riigi inimesed ei kurda enam tehnilistel põhjustel, ja lõpuks tunneme kergendust." Oluline GemFire hajutatud klastri mälus andmetehnoloogia on mänginud võtmerolli kogu tehnoloogia transformatsioonis. Samal ajal, tänu Pivotali ja selle projektimeeskonna pingutustele, et tagada vana süsteemi sujuv toimimine ning sujuv üleminek vanalt süsteemilt uuele tehnilise arenduse ja ümberkujundamise käigus, käivitati uus süsteem kiiresti. ”
|
Eelmine:12306 Lekkis suur hulk kasutajaparoole ning 12306 andmebaasi allalaadimise aadress lekkisJärgmine:Internetis levis suur hulk 12306 kasutajaandmeid, sealhulgas kasutajakontode numbrid, selgetekstilised paroolid, ID-kaardid, e-kirjad jne
|