Highload ++ ist sehr nah! Vom 7. bis 8. November treffen sich zum dreizehnten Mal mehr als 3.000 Entwickler hoch geladener Systeme in Skolkovo. Die Veranstaltung zielt darauf ab, Wissen über Technologien auszutauschen, die gleichzeitig viele tausend und Millionen Benutzer bedienen.
Das Programm umfasst Aspekte der Webentwicklung wie die Architektur großer Projekte, Datenbanken und Speichersysteme, Systemadministration, Lasttests, Betrieb großer Projekte und andere Bereiche im Zusammenhang mit hoch ausgelasteten Systemen.
Wir sind aktiv an Highload ++ 2019 beteiligt und werden Ihnen heute mitteilen, welche Berichte unsere Mitarbeiter für die Konferenzteilnehmer erstellt haben.
7. November

Zeit: 12:00 Uhr
Ort: Moskauer HalleDer Graf der Freunde ist einer der wichtigsten und am meisten belasteten Dienste in Odnoklassniki. Es wird für fast alle Funktionen der Website benötigt: Erstellen Sie einen Feed, finden Sie neue Freunde, überprüfen Sie die Berechtigungen beim Anzeigen von Fotos und vieles mehr. All dies schafft bis zu 700.000 Anfragen pro Sekunde und 300.000.000.000 Verbindungen zwischen Benutzern.
Eine solche Belastung stellt nicht nur strenge Anforderungen an die Leistung, sondern auch an die Fehlertoleranz, da Probleme mit dem Diagramm die Arbeit des gesamten Standorts lähmen können. Wir lebten lange Zeit nach einem klassischen Schema von Shardable-Basen und Caches. Sie hatte jedoch viele Probleme sowohl mit der Datenkonsistenz als auch mit der Fehlertoleranz.
In dem Bericht werden wir ausführlich über den Übergang zur neuen Diagrammarchitektur sprechen, mit einer Geschichte über die alte Version und die Probleme, die während ihrer Verwendung aufgetreten sind, beginnen und dann in die neue Diagrammarchitektur und die Überraschungen eintauchen, die uns während der Migration erwarteten.

Zeit: 17 Uhr
Ort: Singapore HallIn Odnoklassniki werden Benutzeranfragen von mehr als 200 Arten einzigartiger Arten von Diensten bearbeitet. Viele dieser Dienste verwenden die JVM-Kombinationstechnik der Geschäftslogik und die verteilte fehlertolerante Cassandra-Datenbank. Auf diese Weise können wir hoch ausgelastete Dienste erstellen, die Hunderte von Milliarden von Datensätzen mit Millionen von Vorgängen pro Sekunde verwalten.
In diesem Bericht werden wir darüber sprechen, welche Vorteile sich aus der Kombination von Geschäftslogik und Datenbank ergeben. diskutieren, wie sich der Zustand auf die Zuverlässigkeit und Verfügbarkeit von Diensten auswirkt; und diskutieren Sie auch, wie diese Technik die Leistung unserer Dienstleistungen erheblich verbessert hat.
Dafür sind aber nicht alle Datenbanken geeignet. Wir werden im Detail untersuchen, welche Datenbanken für die Einbettung in Ihren nächsten Microservice geeignet sind und welche nicht.
8. November

Zeit: 10:00 Uhr
Ort: Kapstadt RathausKlassenkameraden bestehen aus mehr als 6.000 Servern in mehreren Rechenzentren. Fast die Hälfte von ihnen ist Teil unserer Cloud, One-Cloud, über die wir bereits vor zwei Jahren in HighLoad ++ gesprochen haben.
Bei der Verwaltung von mehr als 10.000 Containern entstehen typische Aufgaben, deren manuelle Implementierung zu viel Zeit in Anspruch nimmt und unweigerlich zu menschlichen Fehlern führt. Daher bemühen wir uns, alle Prozesse in der Cloud zu automatisieren, um die Beteiligung von Menschen zu minimieren. Wir haben diese komplette Automatisierung „Aufstieg der Maschinen“ genannt.
In dem Bericht werden Themen wie:
- Layout der Sicherheitspatches auf allen Containern. Gleichzeitig lernen wir, wie Docker-Bildebenen in 1 Sekunde ersetzt werden.
- Sicherstellung der Verfügbarkeit verteilter Statefull-Services während des Betriebs in der Cloud;
- Das Problem der Fragmentierung in der Cloud. Wir zeigen Ihnen, wie Sie durch Ändern des Platzierungsalgorithmus eine Million Dollar sparen können.

Zeit: 14 Uhr
Ort: Haupthalle (Kongresshalle)Alexander wird sagen:
- Da Odnoklassniki Millionen von Benutzern von TCP auf UDP übertragen hat, verwenden 3/4 OK Android-Benutzer UDP bereits für die Netzwerkkommunikation
- wie sie laut Produktkundenstatistik bis zu 30% der Inhaltsbereitstellung an Benutzer beschleunigten
- über Ansätze zum Erstellen von Netzwerkprotokollen und Methoden zum Testen und Modellieren des Netzwerks
Darüber hinaus teilt OK nicht nur die Ergebnisse von TCP- und QUIC-Tests in verschiedenen Netzwerken mit, sondern auch den Quellcode des Netzwerkemulators, in dem solche Tests durchgeführt werden.
200 TB + Elasticsearch-Cluster . Petr Zaitsev, Systemadministrator, Elasticsearch-Spezialist

Zeit: 16 Uhr
Ort: Haupthalle (Kongresshalle)Der Zweck des Berichts: Über die Fallstricke und die Architektur des Elasticsearch-Clusters zum Speichern von Protokollen in einem besonders großen Volumen zu sprechen.
In dem Bericht werde ich darüber sprechen, wie wir die Speicherung und den Zugriff auf Protokolle für Entwickler im Rahmen des Odnoklassniki-Projekts organisiert haben.
An den Service wurden zunächst hohe Anforderungen gestellt. Jeder wusste, dass das Volumen der verarbeiteten Daten groß sein würde, dass auch Fehlertoleranz erforderlich war und die Spitzenlast auf 2 Millionen Zeilen pro Sekunde ansteigen könnte. Aus diesen Gründen erwies sich die Aufgabe als völlig nicht trivial, mit einem großen Gehalt an "Fallstricken" und pikanten Merkmalen.
Ich werde die Geschichte unseres „gewundenen“ Weges zur Lösung dieses Problems beschreiben und Ihnen sagen, zu welcher Cluster-Architektur wir letztendlich gekommen sind und welche Entscheidungen auf den ersten Blick als „Schuss in den Fuß“ im unerwartetsten Moment erschienen.
Wir hatten 4 Rechenzentren, 500 Instanzen für elastische Daten, mehr als 200 TB Daten, bis zu 2 Millionen Leitungen pro Sekunde in der Spitze und 100% Service-Verfügbarkeitsanforderungen um jeden Preis.
Wie wir das geschafft haben, erfahren Sie in unserem Bericht!