In der Tech ist eine Blogserie, die Hand in Hand mit unserer geht Tech Talks-Podcast. Hier gehen wir tiefer auf eine wichtige technische Herausforderung ein, die wir angehen, und teilen die einzigartigen Ansätze, die wir dabei verfolgen. In dieser Ausgabe von In der Tech, haben wir mit Ivan Marcin, dem technischen Direktor der Growth Group, gesprochen, um mehr über das Matchmaking auf Roblox zu erfahren.
Welche technischen Herausforderungen lösen Sie?
Matchmaking erstellt die Dienste, die Roblox-Benutzer im Beitrittsprozess einem Erlebnisserver zuordnen. Wenn jemand ein Roblox-Erlebnis besuchen möchte, schauen wir uns Tausende von Datenpunkten aus mehreren Roblox-Engine-Instanzen an und bewerten sie, um eine Übereinstimmung zu erzielen. Roblox ist einzigartig, weil sich Menschen und Orte ständig ändern und das System, das wir aufbauen, diese Schwankungen berücksichtigen muss.
Dazu müssen wir die Technologien entwickeln, um zwei Herausforderungen zu lösen, die für die Maximierung der Benutzerzufriedenheit von entscheidender Bedeutung sind. Die erste besteht darin, festzulegen, wie wir die Orte, denen wir Personen zuordnen, in Echtzeit verfolgen und einordnen können. Die zweite besteht darin, das Matchmaking für Effizienz im großen Maßstab zu optimieren. Dieses Hybridsystem muss unseren Millionen gleichzeitiger Benutzer Erlebnisse mit minimaler Latenz bieten und gleichzeitig Roblox-Engine-Instanzen in unserer Flotte von Edge-Rechenzentren orchestrieren. Das ist es, was zu maximalem Engagement führt.
Der Prozess weist zahlreiche Komplexitäten auf, aber ein gutes Beispiel für eine besondere Herausforderung ist das sogenannte „Problem der donnernden Herde“. Dann kommt es in unseren Systemen innerhalb kurzer Zeit zu massiven Lastspitzen. Zum Beispiel, wenn Millionen von Menschen an einem Samstagmorgen gleichzeitig versuchen, an einem beliebten Erlebnis teilzunehmen.
In diesen Fällen kann es zu einem schnellen Anstieg der Anfragen um das Zehnfache kommen. Dieser plötzliche erhöhte Druck belastet unsere Systeme und in der Vergangenheit hatten solche Ereignisse die Plattform zum Absturz gebracht. Aber mittlerweile gibt es bei vielen Roblox-Erlebnissen diese Art von Sonderereignis, limitierter Veröffentlichung oder Aktualisierung. Es erhöht zwar das Engagement, zwingt uns aber auch dazu, auf regelmäßig donnernde Herden vorbereitet zu sein.
Ist das Problem der donnernden Herde etwas, das auch andere soziale Netzwerke und Plattformen haben?
Jede Plattform kann einem plötzlichen massiven Anstieg der Benutzerzahlen ausgesetzt sein. Aufgrund unserer Größe stellt es für uns jedoch eine besondere Herausforderung dar. Eine limitierte Artikeleinführung mag nur ein einmaliges Ereignis für ein Erlebnis sein, aber auf Roblox gibt es Millionen von Erlebnissen und viele haben beliebte Ereignisse wie dieses. Für Roblox sind donnernde Herdenvorfälle also nicht selten, isoliert oder vorhersehbar. Sie können bei jeder unserer Erfahrungen jederzeit auftreten, und wir müssen darauf vorbereitet sein. Wir haben das Matchmaking und andere Systeme verstärkt, um stärker auf diese Muster angewiesen zu sein.
Welche innovativen Lösungen entwickeln wir, um diese Herausforderungen zu bewältigen?
Wir mussten ein benutzerdefiniertes Such- und Empfehlungssystem erstellen, das Roblox-Erlebnisse ständig indiziert und ihnen in Echtzeit Menschen zuordnet.
Um Benutzer jederzeit und überall in Roblox an den besten Ort zu schicken und mit den donnernden Herden fertig zu werden, berücksichtigt das System Eingaben wie den Status, den Standort, die Latenz und andere Spielereigenschaften der Benutzer. Außerdem muss es alle paar Sekunden den Status aller Roblox-Erlebnisse verfolgen und aktualisieren.
Von dort aus müssen wir diese Spielempfehlungen in Echtzeit generieren. Bei vielen traditionellen Matchmaking-Systemen verbinden sich Benutzer und warten in einer virtuellen Lobby auf den Start des Spiels. Das kann mehrere Minuten dauern, aber bei Roblox müssen wir die Leute in dem Moment, in dem sie auf die Schaltfläche „Beitreten“ klicken, zu den richtigen Erlebnissen weiterleiten.
Um dies zu erreichen, muss ein Erlebnissystem aufgebaut werden, das unsere Daten alle paar Sekunden neu indiziert. Dies im großen Maßstab umzusetzen, ist eine große Herausforderung, da wir keine Standardtechniken verteilter Systeme verwenden können, die sich beispielsweise ausschließlich auf Caching verlassen, um Lastspitzen zu bewältigen. Stattdessen haben wir uns auf den Aufbau eines benutzerdefinierten Indexierungssystems verlassen. Jede Roblox-Engine-Instanz überträgt ständig Daten in dieses System. Jede Experience-Join-Anfrage scannt die Eigenschaften jedes aktiven Ortes, ordnet sie über mehrere Indizes hinweg und gibt eine Empfehlung ab, wohin der Benutzer geschickt werden soll, basierend auf dem, was genau zu diesem Zeitpunkt passiert.
Was sind die wichtigsten Erkenntnisse aus dieser technischen Arbeit?
Eine der wichtigsten Erkenntnisse aus dieser technischen Arbeit ist, dass wir die Dinge aus einer ausgewogenen Perspektive betrachten müssen. Wir haben hart daran gearbeitet, die Zuverlässigkeit unserer Plattform zu verbessern, entwickeln aber auch neue Funktionen, die das Benutzererlebnis langfristig verbessern werden. Es ist wie ein Pendel, das hin und her schwingt, weil der Wandel beständig ist. Wir müssen in der Lage sein, zu lernen, uns anzupassen und herauszufinden, was wir kurzfristig tun können, während wir gleichzeitig langfristig aufbauen.
Nehmen wir zum Beispiel, wie wir mit dem Problem der donnernden Herde umgegangen sind. Unsere Entwickler-Community hat erkannt, dass sie den Hype an Wochenenden nutzen können, um Benutzer für ihre Erlebnisse zu gewinnen. Dies führte dazu, dass sich am Samstagmorgen massenhaft Menschen an den Erlebnissen beteiligten. Deshalb mussten wir unsere technischen Pläne ändern, da diese Skalierungsherausforderung nicht einfach zu lösen war. Wenn Inhalte statisch sind, können Sie dies beheben, indem Sie darüber Caching-Ebenen hinzufügen und Kapazität für die Spitzenauslastung bereitstellen. Aber der Echtzeitcharakter unserer Systeme erforderte eine Neustrukturierung unserer Indexierungs- und Scansysteme, um die Suchvorgänge aufzuteilen und unsere Parallelität zu skalieren.
Welcher Roblox-Wert passt Ihrer Meinung nach am besten dazu, wie Sie und Ihr Team technische Herausforderungen angehen?
Der Respekt vor der Community passt am besten dazu, wie unser Team technische Herausforderungen angeht. Unsere Community besteht sowohl aus Benutzern als auch aus Entwicklern, die Erfahrungen machen und unsere technischen Anforderungen vorantreiben. Beide sind gleichermaßen wichtig. Wenn wir also etwas ändern, müssen wir sehr sorgfältig darüber nachdenken, welche Auswirkungen es auf alle hat.
Wenn wir beispielsweise erwägen, etwas wie die APIs zu ändern, die sich auf das Teleportieren auswirken, müssen wir verstehen, wie sich dies sowohl auf Benutzer als auch auf Entwickler auswirkt. Wir verbringen viel Zeit damit, darüber nachzudenken, wie wir die Leute dazu bringen, das richtige Spiel zu spielen, aber auch, wie wir Entwicklern mehr Optionen und Kontrollen bieten können. Wir wenden uns regelmäßig an Entwickler, um gemeinsam mit ihnen neue Funktionen zu entwickeln.
Was begeistert Sie am meisten an der Entwicklung von Roblox und Ihrem Team?
Drei Dinge. Erstens bin ich beeindruckt von unserem enormen Wachstum. Das zweite ist das kreative und innovative Potenzial von Roblox: Die Menschen kommen ständig auf neue Ideen und Erfahrungen und drängen uns dazu, auch kreativ zu sein und diese Kreativität zu nutzen. Drittens boomt KI/ML und Roblox steht an der Spitze dieser Welle. Beispielsweise integrieren wir bei Roblox weitere ML in das Matchmaking und generative KI auf andere einzigartige und innovative Weise. Es ist wirklich aufregend.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- PlatoData.Network Vertikale generative KI. Motiviere dich selbst. Hier zugreifen.
- PlatoAiStream. Web3-Intelligenz. Wissen verstärkt. Hier zugreifen.
- PlatoESG. Kohlenstoff, CleanTech, Energie, Umwelt, Solar, Abfallwirtschaft. Hier zugreifen.
- PlatoHealth. Informationen zu Biotechnologie und klinischen Studien. Hier zugreifen.
- Quelle: https://blog.roblox.com/2023/10/inside-tech-solving-matchmaking-roblox/
- :hast
- :Ist
- :Wo
- $UP
- a
- Fähig
- Über Uns
- Konto
- über
- aktiv
- automatisch
- Hinzufügen
- Adresse
- beeinflussen
- AI
- AI / ML
- Richtet sich aus
- Alle
- ebenfalls
- an
- und
- jedem
- von jedem Standort
- APIs
- Ansätze
- SIND
- AS
- At
- Versuch
- anziehen
- Zurück
- basierend
- BE
- weil
- war
- BESTE
- Blog
- beide
- Geistesblitz
- gebracht
- bauen
- Building
- baut
- aber
- Taste im nun erscheinenden Bestätigungsfenster nun wieder los.
- by
- namens
- CAN
- Kapazität
- Fälle
- Centers
- challenges
- Herausforderungen
- herausfordernd
- Übernehmen
- Ändern
- klicken Sie auf
- Kommen
- community
- Komplexität
- Wettbewerber
- Vernetz Dich
- Berücksichtigung
- überlegt
- konstante
- ständig
- Inhalt
- Steuerung
- könnte
- Schaffung
- Kreativ (Creative)
- Kreativität
- Schöpfer
- Original
- Schneiden
- technische Daten
- Rechenzentren
- Datenpunkte
- Festlegung
- entwickeln
- Entwickler:in / Unternehmen
- Entwickler
- Entwicklung
- Direktor
- verteilt
- verteilte Systeme
- tauchen
- aufteilen
- do
- Dabei
- nach unten
- Laufwerke
- leicht
- Edge
- Ausgabe
- Effizienz
- Engagement
- Motor
- Entwicklung
- gleichermaßen
- Event
- Veranstaltungen
- Jedes
- jedermann
- Beispiel
- erregt
- unterhaltsame Programmpunkte
- ERFAHRUNGEN
- Erfahrungen
- Gesicht
- Eigenschaften
- wenige
- Abbildung
- Vorname
- FLOTTE
- Schwankungen
- Aussichten für
- Streitkräfte
- Vordergrund
- weiter
- für
- weiter
- Spiel
- erzeugen
- generativ
- Generative KI
- bekommen
- ABSICHT
- Goes
- gut
- Gruppe an
- Wachstum
- hätten
- Griff
- passieren
- Los
- hart
- Haben
- Leitung
- hier
- Ultraschall
- Hilfe
- HTTPS
- Hybrid
- Hype
- Ideen
- if
- Impact der HXNUMXO Observatorien
- Einfluss hat
- wichtig
- beeindruckt
- zu unterstützen,
- Verbesserung
- in
- In anderen
- hat
- Steigert
- Indizes
- Innovation
- innovativ
- Eingänge
- innerhalb
- Instanz
- beantragen müssen
- Integration
- in
- isoliert
- IT
- Ivan
- join
- Beitritt
- springen
- nur
- Wesentliche
- Latency
- starten
- Lagen
- LERNEN
- Hebelwirkung
- Gefällt mir
- Limitiert
- Belastung
- Lobby
- Standorte
- Lang
- langfristig
- aussehen
- Nachschlagen
- Los
- gemacht
- um
- MACHT
- viele
- Massen
- massiv
- Spiel
- Abstimmung
- Maximierung
- maximal
- Kann..
- gemeint
- Millionen
- minimal
- Minuten
- ML
- mehr
- Morgen
- vor allem warme
- mehrere
- Natur
- Need
- erforderlich
- Bedürfnisse
- Netzwerke
- Neu
- Neue Funktionen
- jetzt an
- und viele
- of
- on
- Optimierung
- Optionen
- or
- Andere
- UNSERE
- übrig
- besondere
- besonders
- passt
- Muster
- Haupt
- Personen
- Zeit
- Perspektive
- Ort
- Länder/Regionen
- Pläne
- Plattform
- Plattformen
- Plato
- Datenintelligenz von Plato
- PlatoData
- Play
- Spieler
- Punkte
- Beliebt
- Potenzial
- Vorhersagbar
- Druck
- Aufgabenstellung:
- Prozessdefinierung
- immobilien
- Push
- schiebt
- Schieben
- Direkt
- Rang
- Rangstufen
- RARE
- erreichen
- bereit
- echt
- Echtzeit
- realisiert
- Software Empfehlungen
- Empfehlungen
- regulär
- regelmäßig
- Release
- Zuverlässigkeit
- sich auf
- Anforderung
- Zugriffe
- Voraussetzungen:
- erfordert
- Folge
- Recht
- Roblox
- gleich
- Zufriedenheit
- Samstag
- Skalieren
- Skalierung
- Scannen
- scannt
- Zweite
- Sekunden
- sehen
- senden
- Modellreihe
- Server
- Lösungen
- mehrere
- Teilen
- verschieben
- Short
- kurzfristig
- So
- Social Media
- soziale Netzwerke
- allein
- Lösungen
- LÖSEN
- gelöst
- Auflösung
- einige
- Jemand,
- etwas
- besondere
- verbringen
- Spikes
- Standard
- Bundesstaat
- plötzlich
- Schwall
- System
- Systeme und Techniken
- angehen
- angehen
- anpacken
- Nehmen
- Einnahme
- Gespräche
- Team
- Tech
- Technische
- Techniken
- Technologies
- Begriff
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- Der Staat
- ihr
- Sie
- Dort.
- Diese
- vom Nutzer definierten
- think
- Denken
- Dritte
- fehlen uns die Worte.
- diejenigen
- Tausende
- Zeit
- zu
- Top
- gegenüber
- verfolgen sind
- traditionell
- enorm
- wirklich
- XNUMX
- tippe
- Typen
- verstehen
- einzigartiges
- Aktualisierung
- us
- -
- Mitglied
- Benutzererfahrung
- Nutzer
- Wert
- sehr
- Assistent
- Besuchen Sie
- warten
- will
- Wave
- Wege
- we
- GUT
- Was
- wann
- während
- WHO
- werden wir
- mit
- Arbeiten
- arbeiten,
- U
- Ihr
- Zephyrnet