|
|
Veröffentlicht am 25.12.2014 16:18:52
|
|
|
|

Hintergrund und Bedürfnisse
Website des Kundenservicezentrums China Railway (www.1230**) ist eines der weltweit größten Echtzeit-Handelssysteme, vergleichbar mit Amazon.com, und die Website steht während der Feiertage, besonders während des Frühlingsfestes, unter großem Druck. Laut Statistiken besuchten während des Höhepunkts des Frühlingsfestes Anfang 2012 täglich 20 Millionen Menschen die Website, mit maximal 1,4 Milliarden täglichen Aufrufen. Eine große Anzahl gleichzeitiger Netzwerkzugriffe führte dazu, dass 12306 nahezu gelähmt wurde. Das Institut für Elektronische Computertechnik der Chinesischen Akademie der Eisenbahnwissenschaften muss als Auftragnehmer des Internet-Ticketsystems 12306 dringend einen Weg finden, das Problem zu lösen.
Erfolgreiche Auflösung: mehr als 75-mal schneller
Seit März 2012 hat die Eisenbahngesellschaft (früher das Eisenbahnministerium) mit der Untersuchung und Renovierung von 12306 begonnen. Im Juni 2012 wurde die zentrale GemFire-Plattform für verteilte In-Memory-Computing (Distributed In-memory Computing) ausgewählt, um 12306 zu transformieren, die von Wang Mingzhe, Leiter des Projektteams der Academy of Iron Sciences, und IISI Information Technology Co., Ltd. unter der Leitung von Zhu Jiansheng, Direktor der Academy of Railway Sciences, bereitgestellt wurde.Die erste Phase wird zunächst den Hauptengpass von 12306 transformieren – das verbleibende Ticket-Abfragesystem –。 Im September wurde die Code-Transformation abgeschlossen und das System gestartet. Am Nationalfeiertag 2012, während der Hochsaison der Online-Buchung, können Sie sich deutlich bei 12306 anmelden, obwohl es immer noch schwierig ist, Tickets zu buchen, aber die übrigen Tickets sind sehr schnell. Im Oktober 2012,Die zweite Phase besteht darin, das Bestellanfragesystem mit GemFire zu transformieren (Kunden fragen ihre eigenen Bestellaufzeichnungen ab)。 Während des Frühlingsfestes 2013 ist die Hochphase der Online-Buchung, und Sie können sich deutlich bei 12306 anmelden, obwohl es immer noch schwierig ist, Tickets zu buchen, aber die Suche nach den verbleibenden Tickets ist sehr schnell, ebenso wie die eigene Buchung und Bestellung sehr schnell.
Laut dem Systembetriebsdatendaten, nach der technischen Umwandlung,Mit nur 10 X86-Servern wurden die verbleibenden Ticketberechnungs- und Abfragefähigkeiten von Dutzenden kleiner Computer realisiert, und die maximale Zeit einer einzelnen Abfrage wurde von etwa 15 Sekunden auf weniger als 0,2 Sekunden reduziert, was sich um mehr als 75 Mal verkürzt hat。 Im Fall extrem hoher Verkehrsaufführung während des Frühlingsfestes 2012 war das System nahezu gelähmt. Nach der Transformation,Es unterstützt Zehntausende gleichzeitiger Abfragen pro Sekunde und erreicht in Spitzenzeiten einen Durchsatz von 26.000 Anfragen pro Sekunde, die Effizienz des gesamten Systems wird deutlich verbessert. Wie auf dem obigen Bild gezeigt.
Im Systembetriebsmodus vor der Transformation kann das Order-Abfragesystem nur einen Durchsatz von 300–400 Abfragen pro Sekunde unterstützen, und hochfrequente gleichzeitige Abfragen können nur durch Datenbanksplitting realisiert werden. Nach der Transformation kann der Durchsatz bis zu zehntausende Anfragen pro Sekunde betragen, und die Abfragegeschwindigkeit kann mit etwa 20 Millisekunden garantiert werden.
Die neue Technologiearchitektur kann:Dynamische Skalierung der NachfrageelastizitätWenn die Nebenläufigkeit steigt, kann man den X86-Server auch dynamisch erhöhen, um eine Millisekunden-Reaktionszeit aufrechtzuerhalten.
Im Traum danach suchen: Die technologische Revolution erstreckt sich über drei Generationen in einem Schritt
12306 kann solche erschütternden Effekte erzielen, es ist unmöglich, sich auf kleine technische Reparaturen zu verlassen, und es muss eine neue Idee geben, die die Leistungsverbesserung nutzen kann. 12306 entdeckte, dass die verteilte In-Memory-Datenplattform GemFire eine solche Technologie ist.
Technische Begründung der GemFire-verteilten In-Memory-DatenplattformWie in der obigen Abbildung gezeigt: Durch die Virtualisierungstechnologie der Cloud-Computing-Plattform wird der Speicher mehrerer X86-Server zentralisiert, um einen Speicherressourcenpool von bis zu Dutzend Terabyte zu bilden, und alle Daten werden für die Berechnung im Speicher geladen. Der Berechnungsprozess selbst muss nicht auf die Festplatte lesen und schreiben, sondern schreibt nur periodisch Daten synchron oder asynchron auf die Festplatte. GemFire speichert mehrere Datenkopien in einem verteilten Cluster, und wenn eine Maschine ausfällt, gibt es Backups auf anderen Rechnern, sodass man sich in der Regel keine Sorgen um Datenverlust machen muss, und es gibt Festplattendaten als Backup. GemFire unterstützt das Speichern von Daten im Speicher in verschiedenen traditionellen relationalen Datenbanken, Hadoop-Bibliotheken und anderen Dateisystemen.
Wie wir alle wissen, ist der Engpass der aktuellen Rechenarchitektur der Speicher, die Prozessorgeschwindigkeit verdoppelt sich laut Moores Gesetz, und die Geschwindigkeit des Festplattenspeichers wächst sehr langsam, was zu einer riesigen Lücke von bis zu 100.000 Mal führt (wie in der obigen Abbildung gezeigt). Das macht es leicht zu verstehen, warum GemFire die Systemleistung erheblich verbessern kann.
Je nach Beziehung zwischen Rechnen und Speicher können wir die Rechenarchitektur in vier Generationen unterteilen:
Die erste Generation, ein System mit nur einer Festplatte: Daten müssen während der Berechnungen von der Festplatte gelesen werden. Kleine Computer und Großrechner gehören zu den führenden und erreichen die ultimative Leistung eines einzelnen Systems.
Die zweite Generation ist ein verteiltes Clustering-System auf Basis von Festplatten: Während des Berechnungsprozesses müssen Daten von der Festplatte gelesen werden, aber die Daten werden über ein Verteilungssystem über verschiedene Serverfestplatten verteilt, um die Rechenleistung des gesamten Systems zu verbessern. Derzeit nutzen viele große Internet- und E-Commerce-Unternehmen verteilte Clustering-Systeme, die auf X86-Servern basieren und auf eine massive X86-Server-Bereitstellung setzen, um das Problem der hohen Verkehrsgleichzeitigkeit zu lösen.
Die dritte Generation, ein einzelnes speicherbasiertes System: Legt die gesamte Datenbank in den Speicher, und der Berechnungsprozess erfordert kein Lesen von Daten von der Festplatte. Die Leistung des gesamten Systems hängt von der Leistung eines einzelnen Systems ab. Traditionelle In-Memory-Datenbanken sind solche Systeme, die das Problem der Zugriffsgeschwindigkeit für Unternehmensanwendungen gut lösen können, aber nichts gegen das Skalierbarkeitsproblem massiver Daten oder massiver gleichzeitiger Zugriff tun können.
Die vierte Generation ist ein speicherbasiertes, verteiltes Clustering-System: GemFire ist ein solches System, paralleles Rechnen ist eine seiner Schlüsseltechnologien, sodass es die Leistung linear auf Basis von In-Memory-Computing skalieren kann, indem die Umfangsgröße der Serverbereitstellung erhöht wird.
12306 übernahm zuvor die Unix-Minicomputer-Architektur und nutzte GemFire-Technologie, um sie in eine Linux/X86-Server-Cluster-Architektur umzuwandeln, was bedeutet, dass sie drei Generationen umfasst. Von kleinen Computern bis hin zu X86-Serverclustern mit großem Speicher verbessert sich nicht nur die Leistung um eine Größenordnung, sondern ist auch deutlich günstiger.
GemFire ist Teil der unternehmensweiten Big Data PaaS-Plattform von Pivotal. Die unternehmensweite Big-Data-PaaS-Plattform von Pivotal besteht aus drei Hauptebenen: Cloud Fabric, Big Data Infrastructure Layer und Application Fabric. GemFire gehört zur Big-Data-Infrastrukturschicht, und zusätzlich gehört auch die Greenplum-Datenbank zu dieser Schicht; Die Technologie der Cloud-Infrastrukturschicht ist Cloud Foundry; Die Technologien für die Anwendungsentwicklungs-Infrastrukturschicht sind unter anderem Spring Framework und RabbitMQ.
Bezüglich der Transformation und Einführung der GemFire-Technologie sagte Zhu Jiansheng, stellvertretender Direktor des Instituts für elektronische Computertechnik der Chinesischen Akademie der Eisenbahnwissenschaften: "Durch die technologische Transformation haben wir das Problem der hohen Spitzenverkehrs-Nebenfahrt gelöst, das uns seit langem plagt, sodass die Menschen im ganzen Land sich nicht mehr wegen technischer Gründe beschweren und wir endlich erleichtert sind." Die zentrale GemFire-Cluster-In-Memory-Datentechnologie hat eine Schlüsselrolle bei der gesamten Technologietransformation gespielt. Gleichzeitig wurde dank der Bemühungen von Pivotal und seinem Projektteam, den reibungslosen Betrieb des alten Systems und die reibungslose Migration vom alten System zum neuen System während der technischen Entwicklung und Transformation zu gewährleisten, das neue System schnell eingeführt. ”
|
Vorhergehend:12306 Eine große Anzahl von Benutzerpasswörtern wurde geleakt, und die Download-Adresse der 12306-Datenbank wurde geleaktNächster:Ein großer Teil der 12306-Nutzerdaten ging viral im Internet, darunter Benutzerkontonummern, Klartextpasswörter, Ausweise, E-Mails usw
|