Μέσα στο Τεχν είναι μια σειρά blog που πηγαίνει χέρι-χέρι με το δικό μας Tech Talks Podcast. Εδώ, βυθιζόμαστε περαιτέρω σε μια βασική τεχνική πρόκληση που αντιμετωπίζουμε και μοιραζόμαστε τις μοναδικές προσεγγίσεις που ακολουθούμε για να το κάνουμε. Σε αυτή την έκδοση του Μέσα στο Τεχν, μιλήσαμε με τον Τεχνικό Διευθυντή του Growth group Ivan Marcin για να μάθουμε περισσότερα για το matchmaking στο Roblox.
Για ποιες τεχνικές προκλήσεις επιλύετε;
Το Matchmaking δημιουργεί τις υπηρεσίες που ταιριάζουν με τους χρήστες του Roblox σε έναν διακομιστή εμπειρίας στη διαδικασία σύνδεσης. Όταν κάποιος θέλει να επισκεφτεί μια εμπειρία Roblox, εξετάζουμε χιλιάδες σημεία δεδομένων από πολλαπλές παρουσίες μηχανών Roblox και τα κατατάσσουμε ώστε να ταιριάζουν. Το Roblox είναι μοναδικό επειδή οι άνθρωποι και τα μέρη αλλάζουν συνεχώς, και το σύστημα που χτίζουμε πρέπει να λαμβάνει υπόψη αυτές τις διακυμάνσεις.
Για να γίνει αυτό, πρέπει να αναπτύξουμε τις τεχνολογίες για την επίλυση δύο προκλήσεων που είναι βασικές για τη μεγιστοποίηση της ικανοποίησης των χρηστών. Ο πρώτος είναι ο καθορισμός του τρόπου παρακολούθησης και κατάταξης των θέσεων με τις οποίες αντιστοιχίζουμε τους ανθρώπους σε πραγματικό χρόνο. Το δεύτερο είναι η βελτιστοποίηση του matchmaking για αποτελεσματικότητα σε κλίμακα. Αυτό το υβριδικό σύστημα πρέπει να ταιριάζει με τα εκατομμύρια των ταυτόχρονων χρηστών μας με εμπειρίες με ελάχιστο λανθάνοντα χρόνο, ενώ παράλληλα να ενορχηστρώνει παρουσίες μηχανών Roblox σε όλο το στόλο των κέντρων δεδομένων αιχμής. Αυτό είναι που οδηγεί στη μέγιστη αφοσίωση.
Η διαδικασία έχει πολλές πολυπλοκότητες, αλλά ένα καλό παράδειγμα μιας συγκεκριμένης πρόκλησης είναι αυτό που ονομάζεται «πρόβλημα της βροντερής αγέλης». Τότε είναι που τα συστήματά μας βλέπουν τεράστιες αιχμές φορτίου σε σύντομο χρονικό διάστημα. Για παράδειγμα, όταν εκατομμύρια άνθρωποι προσπαθούν να συμμετάσχουν σε μια δημοφιλή εμπειρία την ίδια ώρα το πρωί του Σαββάτου.
Σε αυτές τις περιπτώσεις, ενδέχεται να δούμε ένα γρήγορο άλμα 10 φορές στα αιτήματα. Αυτή η ξαφνική αυξημένη πίεση στρεσάρει τα συστήματά μας και στο παρελθόν, αυτού του είδους τα γεγονότα είχαν καταρρίψει την πλατφόρμα. Αλλά τώρα, πολλές εμπειρίες Roblox έχουν αυτόν τον τύπο ειδικής εκδήλωσης, περιορισμένη έκδοση ή ενημέρωση. Ενώ αυξάνει τη δέσμευση, μας αναγκάζει επίσης να είμαστε έτοιμοι να χειριστούμε τακτικά κοπάδια με βροντές.
Είναι το πρόβλημα της βροντερής αγέλης κάτι που έχουν άλλα κοινωνικά δίκτυα και πλατφόρμες;
Οποιαδήποτε πλατφόρμα μπορεί να αντιμετωπίσει μια ξαφνική τεράστια αύξηση χρηστών. Αλλά είναι ιδιαίτερα δύσκολο για εμάς λόγω της κλίμακας μας. Ένα περιορισμένο λανσάρισμα αντικειμένων μπορεί να είναι απλώς ένα γεγονός για μια εμπειρία, αλλά στο Roblox υπάρχουν εκατομμύρια εμπειρίες και πολλά έχουν δημοφιλή γεγονότα όπως αυτά. Έτσι, για το Roblox, τα περιστατικά με βροντές αγέλες δεν είναι σπάνια, μεμονωμένα ή προβλέψιμα. Μπορούν να συμβούν ανά πάσα στιγμή σε οποιαδήποτε από τις εμπειρίες μας και πρέπει να είμαστε έτοιμοι. Έχουμε σκληρύνει το matchmaking και άλλα συστήματα ώστε να εξαρτώνται περισσότερο από αυτά τα μοτίβα.
Ποιες είναι μερικές από τις καινοτόμες λύσεις που χτίζουμε για να αντιμετωπίσουμε αυτές τις προκλήσεις;
Χρειαζόμασταν να δημιουργήσουμε ένα προσαρμοσμένο σύστημα αναζήτησης και συστάσεων που θα ευρετηριάζει συνεχώς τις εμπειρίες του Roblox και θα αντιστοιχίζει τους ανθρώπους σε αυτές σε πραγματικό χρόνο.
Για να στείλει τους χρήστες στο καλύτερο μέρος και να χειριστεί τις βροντερές αγέλες ανά πάσα στιγμή, οπουδήποτε στο Roblox, το σύστημα λαμβάνει υπόψη εισόδους όπως η κατάσταση των χρηστών, η τοποθεσία, ο λανθάνοντας χρόνος και άλλες ιδιότητες αναπαραγωγής. Πρέπει επίσης να παρακολουθεί και να ανανεώνει την κατάσταση όλων των εμπειριών του Roblox κάθε λίγα δευτερόλεπτα.
Από εκεί, πρέπει να δημιουργήσουμε αυτές τις προτάσεις αγώνων σε πραγματικό χρόνο. Με πολλά παραδοσιακά συστήματα αντιστοίχισης, οι χρήστες συνδέονται και περιμένουν σε ένα εικονικό λόμπι να ξεκινήσει το παιχνίδι. Αυτό μπορεί να διαρκέσει αρκετά λεπτά, αλλά στο Roblox, πρέπει να στείλουμε τους ανθρώπους στις σωστές εμπειρίες μόλις κάνουν κλικ στο κουμπί συμμετοχής.
Για να γίνει αυτό απαιτεί τη δημιουργία ενός συστήματος εμπειρίας που αναπροσαρμόζει τα δεδομένα μας κάθε λίγα δευτερόλεπτα. Το να γίνει αυτό σε κλίμακα είναι μια βασική πρόκληση, επειδή δεν μπορούμε να χρησιμοποιήσουμε τυπικές τεχνικές κατανεμημένων συστημάτων, όπως να βασιζόμαστε αποκλειστικά στην προσωρινή αποθήκευση, για να χειριστούμε αιχμές φορτίου. Αντίθετα, βασιστήκαμε στη δημιουργία ενός προσαρμοσμένου συστήματος ευρετηρίου. Κάθε περίπτωση κινητήρα Roblox ωθεί συνεχώς δεδομένα σε αυτό το σύστημα. Οποιοδήποτε αίτημα συμμετοχής εμπειρίας σαρώνει τις ιδιότητες κάθε ενεργού μέρους, τις κατατάσσει σε πολλαπλά ευρετήρια και κάνει μια σύσταση για το πού να στείλει τον χρήστη με βάση το τι συμβαίνει τη συγκεκριμένη στιγμή.
Ποια είναι τα βασικά διδάγματα από την εκτέλεση αυτής της τεχνικής εργασίας;
Ένα από τα βασικά διδάγματα από αυτήν την τεχνική εργασία είναι ότι πρέπει να δούμε τα πράγματα από μια ισορροπημένη οπτική γωνία. Εργαζόμαστε σκληρά για να βελτιώσουμε την αξιοπιστία της πλατφόρμας μας, αλλά αναπτύσσουμε επίσης νέες δυνατότητες που θα βελτιώσουν την εμπειρία του χρήστη μακροπρόθεσμα. Είναι σαν ένα εκκρεμές που ταλαντεύεται μπρος-πίσω γιατί η αλλαγή είναι σταθερή. Πρέπει να είμαστε σε θέση να μάθουμε, να προσαρμοστούμε και να καταλάβουμε τι μπορούμε να κάνουμε βραχυπρόθεσμα, ενώ παράλληλα χτίζουμε μακροπρόθεσμα.
Πάρτε, για παράδειγμα, πώς χειριστήκαμε το πρόβλημα της βροντερής αγέλης. Η κοινότητα προγραμματιστών μας συνειδητοποίησε ότι θα μπορούσε να αξιοποιήσει τη διαφημιστική εκστρατεία τα Σαββατοκύριακα για να προσελκύσει χρήστες στις εμπειρίες τους. Αυτό είχε ως αποτέλεσμα μάζες ανθρώπων να ενώνουν τις εμπειρίες τα πρωινά του Σαββάτου. Έτσι έπρεπε να αλλάξουμε τα μηχανολογικά μας σχέδια, καθώς αυτή η πρόκληση κλιμάκωσης δεν ήταν κάτι που θα μπορούσε να λυθεί εύκολα. Όταν το περιεχόμενο είναι στατικό, το αντιμετωπίζετε προσθέτοντας επίπεδα προσωρινής αποθήκευσης στην κορυφή και παρέχοντας χωρητικότητα για μέγιστη χρήση. Αλλά η φύση των συστημάτων μας σε πραγματικό χρόνο σήμαινε την εκ νέου αρχιτεκτονική των συστημάτων ευρετηρίασης και σάρωσης για να χωρίσουμε τις αναζητήσεις και να κλιμακώσουμε την ταυτότητά μας.
Ποια αξία του Roblox πιστεύετε ότι ευθυγραμμίζεται καλύτερα με τον τρόπο που εσείς και η ομάδα σας αντιμετωπίζετε τεχνικές προκλήσεις;
Ο σεβασμός της κοινότητας ευθυγραμμίζεται καλύτερα με τον τρόπο με τον οποίο η ομάδα μας αντιμετωπίζει τεχνικές προκλήσεις. Η κοινότητά μας αποτελείται τόσο από χρήστες όσο και από δημιουργούς που δημιουργούν εμπειρίες και ωθούν τις τεχνικές απαιτήσεις μας. Και τα δύο είναι εξίσου σημαντικά. Έτσι, όταν αλλάζουμε κάτι, πρέπει να είμαστε πολύ προσεκτικοί για το πώς επηρεάζει τον καθένα.
Για παράδειγμα, εάν σκεφτόμαστε να τροποποιήσουμε κάτι σαν τα API που επηρεάζουν την τηλεμεταφορά, πρέπει να καταλάβουμε πώς θα επηρεάσει τόσο τους χρήστες όσο και τους προγραμματιστές. Ξοδεύουμε πολύ χρόνο σκεπτόμενοι πώς θα κάνουμε τους ανθρώπους να παίξουν το σωστό παιχνίδι, αλλά και πώς θα δώσουμε στους προγραμματιστές περισσότερες επιλογές και ελέγχους. Επικοινωνούμε τακτικά με προγραμματιστές για να συλλάβουμε νέες δυνατότητες μαζί τους.
Τι σας ενθουσιάζει περισσότερο για το πού κατευθύνεται η Roblox και η ομάδα σας;
Τρία πράγματα. Πρώτον, είμαι εντυπωσιασμένος από την τεράστια ανάπτυξή μας. Το δεύτερο είναι το δυναμικό της δημιουργίας και της καινοτομίας στο Roblox: οι άνθρωποι έρχονται συνεχώς με νέες ιδέες και εμπειρίες και μας ωθεί να είμαστε δημιουργικοί και για το πώς να επεκταθούμε σε αυτή τη δημιουργικότητα. Τρίτον, η AI/ML ανθεί και η Roblox βρίσκεται ακριβώς στην πρώτη γραμμή αυτού του κύματος. Για παράδειγμα, ενσωματώνουμε περαιτέρω ML στο matchmaking και τη δημιουργία τεχνητής νοημοσύνης με άλλους μοναδικούς και πρωτοποριακούς τρόπους στο Roblox. Είναι πραγματικά συναρπαστικό.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoData.Network Vertical Generative Ai. Ενδυναμώστε τον εαυτό σας. Πρόσβαση εδώ.
- PlatoAiStream. Web3 Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- PlatoESG. Ανθρακας, Cleantech, Ενέργεια, Περιβάλλον, Ηλιακός, Διαχείριση των αποβλήτων. Πρόσβαση εδώ.
- PlatoHealth. Ευφυΐα βιοτεχνολογίας και κλινικών δοκιμών. Πρόσβαση εδώ.
- πηγή: https://blog.roblox.com/2023/10/inside-tech-solving-matchmaking-roblox/
- :έχει
- :είναι
- :που
- $UP
- a
- Ικανός
- Σχετικα
- Λογαριασμός
- απέναντι
- ενεργός
- προσαρμόσει
- προσθήκη
- διεύθυνση
- επηρεάζουν
- AI
- AI / ML
- Ευθυγραμμίζει
- Όλα
- Επίσης
- an
- και
- κάθε
- οπουδήποτε
- APIs
- προσεγγίσεις
- ΕΙΝΑΙ
- AS
- At
- απόπειρα
- προσελκύσει
- πίσω
- βασίζονται
- BE
- επειδή
- ήταν
- ΚΑΛΎΤΕΡΟΣ
- Μπλοκ
- και οι δύο
- έμπνευση
- Έφερε
- χτίζω
- Κτίριο
- Χτίζει
- αλλά
- κουμπί
- by
- που ονομάζεται
- CAN
- Χωρητικότητα
- περιπτώσεις
- Κέντρα
- πρόκληση
- προκλήσεις
- πρόκληση
- αλλαγή
- αλλαγή
- κλικ
- ερχομός
- κοινότητα
- πολυπλοκότητα
- ανταγωνιστής
- Connect
- θεωρώντας
- θεωρεί
- σταθερός
- συνεχώς
- περιεχόμενο
- ελέγχους
- θα μπορούσε να
- δημιουργία
- Δημιουργικός
- δημιουργικότητα
- δημιουργούς
- έθιμο
- τομή
- ημερομηνία
- κέντρα δεδομένων
- σημεία δεδομένων
- καθορίζοντας
- ανάπτυξη
- Εργολάβος
- προγραμματιστές
- ανάπτυξη
- Διευθυντής
- διανέμονται
- κατανεμημένα συστήματα
- κατάδυση
- διαιρούν
- do
- πράξη
- κάτω
- δίσκους
- εύκολα
- άκρη
- έκδοση
- αποδοτικότητα
- δέσμευση
- Κινητήρας
- Μηχανική
- εξίσου
- Συμβάν
- εκδηλώσεις
- Κάθε
- όλοι
- παράδειγμα
- ενθουσιασμένη
- συναρπαστικός
- εμπειρία
- Δραστηριοτητες
- Πρόσωπο
- Χαρακτηριστικά
- λίγοι
- Εικόνα
- Όνομα
- ΣΤΟΛΟΣ
- διακυμάνσεις
- Για
- Δυνάμεις
- Πρώτη γραμμή
- Εμπρός
- από
- περαιτέρω
- παιχνίδι
- παράγουν
- γενετική
- Παραγωγική τεχνητή νοημοσύνη
- παίρνω
- Δώστε
- πηγαίνει
- καλός
- Group
- Ανάπτυξη
- είχε
- λαβή
- συμβαίνω
- Συμβαίνει
- Σκληρά
- Έχω
- με επικεφαλής
- εδώ
- Πως
- Πώς να
- HTTPS
- Υβριδικό
- Hype
- ιδεών
- if
- Επίπτωση
- Επιπτώσεις
- σημαντικό
- εντυπωσιασμένος
- βελτίωση
- βελτίωση
- in
- Σε άλλες
- αυξημένη
- Αυξήσεις
- δείκτες
- Καινοτομία
- καινοτόμες
- είσοδοι
- μέσα
- παράδειγμα
- αντί
- Ενσωμάτωση
- σε
- απομονωμένος
- IT
- ivan
- ενταχθούν
- ενώνει
- άλμα
- μόλις
- Κλειδί
- Αφάνεια
- ξεκινήσει
- στρώματα
- ΜΑΘΑΊΝΩ
- Μόχλευση
- Μου αρέσει
- Περιωρισμένος
- φορτίο
- Αίθουσα Αναμονής
- τοποθεσία
- Μακριά
- μακροπρόθεσμος
- ματιά
- αναζήτηση
- Παρτίδα
- που
- κάνω
- ΚΑΝΕΙ
- πολοί
- μάζες
- μαζική
- Ταίριασμα
- ταιριάζουν
- μεγιστοποιώντας
- ανώτατο όριο
- Ενδέχεται..
- σήμαινε
- εκατομμύρια
- ελάχιστος
- πρακτικά
- ML
- περισσότερο
- πρωί
- πλέον
- πολλαπλούς
- Φύση
- Ανάγκη
- που απαιτούνται
- ανάγκες
- δίκτυα
- Νέα
- Νέες δυνατότητες
- τώρα
- πολυάριθμες
- of
- on
- βελτιστοποίηση
- Επιλογές
- or
- ΑΛΛΑ
- δικός μας
- έξω
- επί
- Ειδικότερα
- ιδιαίτερα
- Το παρελθόν
- πρότυπα
- Κορυφή
- People
- περίοδος
- προοπτική
- Μέρος
- Μέρη
- φώναξε
- πλατφόρμες
- Πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- Δοκιμάστε να παίξετε
- παίχτης
- σημεία
- Δημοφιλής
- δυναμικού
- Αναμενόμενος
- χυτρα
- Πρόβλημα
- διαδικασια μας
- ιδιότητες
- Σπρώξτε
- ωθεί
- Δραστήριος
- Γρήγορα
- κατατάσσουν
- τάξεις
- ΣΠΑΝΙΟΣ
- φθάσουν
- έτοιμος
- πραγματικός
- σε πραγματικό χρόνο
- συνειδητοποίησα
- Σύσταση
- συστάσεις
- τακτικός
- τακτικά
- απελευθερώνουν
- αξιοπιστία
- βασιζόμενοι
- ζητήσει
- αιτήματα
- απαιτήσεις
- Απαιτεί
- είχε ως αποτέλεσμα
- δεξιά
- Roblox
- ίδιο
- ικανοποίηση
- Σάββατο
- Κλίμακα
- απολέπιση
- σάρωσης
- σαρώσεις
- Δεύτερος
- δευτερόλεπτα
- δείτε
- στείλετε
- Σειρές
- διακομιστής
- Υπηρεσίες
- διάφοροι
- Κοινοποίηση
- αλλαγή
- Κοντά
- βραχυπρόθεσμα
- So
- Μ.Κ.Δ
- κοινωνικά δίκτυα
- μόνο
- Λύσεις
- SOLVE
- λυθεί
- Επίλυση
- μερικοί
- Κάποιος
- κάτι
- ειδική
- δαπανήσει
- αιχμές
- πρότυπο
- Κατάσταση
- αιφνίδιος
- ανακύπτει
- σύστημα
- συστήματα
- ανυψωτήρ
- Αντιμετωπίζει
- εξάρτια
- Πάρτε
- λήψη
- συνομιλίες
- tech
- Τεχνικός
- τεχνικές
- Τεχνολογίες
- όρος
- ότι
- Η
- Το κράτος
- τους
- Τους
- Εκεί.
- Αυτοί
- αυτοί
- πράγματα
- νομίζω
- Σκέψη
- Τρίτος
- αυτό
- εκείνοι
- χιλιάδες
- ώρα
- προς την
- κορυφή
- προς
- τροχιά
- παραδοσιακός
- καταπληκτικός
- όντως
- δύο
- τύπος
- τύποι
- καταλαβαίνω
- μοναδικός
- Ενημέρωση
- us
- χρήση
- Χρήστες
- Η εμπειρία χρήστη
- Χρήστες
- αξία
- πολύ
- Πραγματικός
- Επίσκεψη
- περιμένετε
- θέλει
- WAVE
- τρόπους
- we
- ΛΟΙΠΌΝ
- Τι
- πότε
- ενώ
- Ο ΟΠΟΊΟΣ
- θα
- με
- Εργασία
- εργαζόμενος
- εσείς
- Σας
- zephyrnet