Di dalam Teknologi adalah seri blog yang sejalan dengan kami Podcast Pembicaraan Teknologi. Di sini, kami menyelami lebih jauh tantangan teknis utama yang kami atasi dan berbagi pendekatan unik yang kami ambil untuk melakukannya. Pada edisi kali ini Di dalam Teknologi, kami berbicara dengan Direktur Teknis grup Pertumbuhan Ivan Marcin untuk mempelajari lebih lanjut tentang perjodohan di Roblox.
Tantangan teknis apa yang sedang Anda selesaikan?
Penjodohan membangun layanan yang mencocokkan pengguna Roblox dengan server pengalaman dalam proses bergabung. Saat seseorang ingin mengunjungi pengalaman Roblox, kami melihat ribuan titik data dari beberapa mesin Roblox dan memberi peringkat pada data tersebut untuk mencocokkannya. Roblox unik karena orang dan tempat terus berubah, dan sistem yang kami bangun harus memperhitungkan fluktuasi ini.
Untuk melakukan hal ini, kami harus mengembangkan teknologi untuk memecahkan dua tantangan yang merupakan kunci untuk memaksimalkan kepuasan pengguna. Yang pertama adalah menentukan cara melacak dan memberi peringkat pada tempat-tempat yang kita cocokkan dengan orang-orang secara real-time. Yang kedua adalah mengoptimalkan matchmaking untuk efisiensi dalam skala besar. Sistem hibrid ini harus menyesuaikan jutaan pengguna kami secara bersamaan dengan pengalaman dengan latensi minimal sekaligus mengatur instans mesin Roblox di seluruh armada pusat data edge kami. Itulah yang mendorong keterlibatan maksimal.
Prosesnya memiliki banyak kerumitan, namun contoh yang baik dari tantangan tertentu adalah apa yang disebut “masalah kawanan yang menggelegar.” Saat itulah sistem kami mengalami lonjakan beban yang sangat besar dalam waktu singkat. Misalnya, saat jutaan orang mencoba mengikuti pengalaman populer pada waktu yang sama di Sabtu pagi.
Dalam kasus tersebut, kami mungkin melihat lonjakan permintaan sebesar 10x lipat. Peningkatan tekanan yang tiba-tiba ini memberikan tekanan pada sistem kami dan di masa lalu, kejadian seperti ini telah membuat platform kami down. Namun sekarang, banyak pengalaman Roblox yang memiliki acara khusus, rilis terbatas, atau pembaruan seperti ini. Meskipun hal ini meningkatkan keterlibatan, hal ini juga memaksa kami untuk siap menangani kawanan petir yang sering datang.
Apakah masalah kawanan yang bergemuruh adalah sesuatu yang dialami oleh jaringan dan platform sosial lain?
Platform apa pun bisa menghadapi lonjakan besar pengguna secara tiba-tiba. Namun hal ini sangat menantang bagi kami karena skalanya. Peluncuran item terbatas mungkin hanya merupakan acara satu kali untuk sebuah pengalaman, tetapi di Roblox ada jutaan pengalaman dan banyak yang memiliki acara populer seperti ini. Jadi bagi Roblox, insiden kawanan guntur bukanlah hal yang langka, terisolasi, atau dapat diprediksi. Hal ini dapat terjadi kapan saja dalam pengalaman kita, dan kita harus siap. Kami telah memperketat sistem perjodohan dan sistem lainnya agar lebih bergantung pada pola-pola ini.
Solusi inovatif apa saja yang kami bangun untuk mengatasi tantangan ini?
Kami perlu membangun sistem pencarian dan rekomendasi khusus yang terus-menerus mengindeks pengalaman Roblox dan mencocokkan orang-orang dengan pengalaman tersebut secara real-time.
Untuk mengirim pengguna ke tempat terbaik dan menangani kawanan petir kapan saja, di mana saja di seluruh Roblox, sistem mempertimbangkan masukan seperti status pengguna, lokasi, latensi, dan properti pemain lainnya. Itu juga harus melacak dan menyegarkan keadaan semua pengalaman Roblox setiap beberapa detik.
Dari sana, kami perlu membuat rekomendasi pertandingan ini secara real time. Dengan banyak sistem perjodohan tradisional, pengguna terhubung dan menunggu di lobi virtual hingga game diluncurkan. Hal ini dapat memakan waktu beberapa menit, namun di Roblox, kami perlu memberikan pengalaman yang tepat kepada orang-orang begitu mereka mengeklik tombol bergabung.
Untuk melakukan hal ini diperlukan pembangunan sistem pengalaman yang mengindeks ulang data kami setiap beberapa detik. Melakukan hal ini dalam skala besar merupakan tantangan utama karena kita tidak dapat menggunakan teknik sistem terdistribusi standar, seperti hanya mengandalkan caching, untuk menangani lonjakan beban. Sebaliknya, kami mengandalkan pembuatan sistem pengindeksan khusus. Setiap mesin Roblox terus-menerus memasukkan data ke dalam sistem ini. Permintaan bergabung pengalaman apa pun memindai properti setiap tempat aktif, memberi peringkat pada beberapa indeks, dan membuat rekomendasi ke mana harus mengirim pengguna berdasarkan apa yang terjadi pada waktu yang tepat.
Apa pembelajaran utama dari melakukan pekerjaan teknis ini?
Salah satu pembelajaran penting dari melakukan pekerjaan teknis ini adalah kita perlu melihat segala sesuatunya dari sudut pandang yang seimbang. Kami telah bekerja keras untuk meningkatkan keandalan platform kami, namun kami juga mengembangkan fitur baru yang akan meningkatkan pengalaman pengguna dalam jangka panjang. Ibarat pendulum yang berayun maju mundur karena perubahannya konstan. Kita harus bisa belajar, beradaptasi, dan mencari tahu apa yang bisa kita lakukan dalam jangka pendek sambil membangun untuk jangka panjang.
Ambil contoh, bagaimana kita menangani masalah kawanan ternak yang bergemuruh. Komunitas pengembang kami menyadari bahwa mereka dapat memanfaatkan sensasi di akhir pekan untuk menarik pengguna ke pengalaman mereka. Hal ini mengakibatkan banyak orang mengikuti pengalaman pada Sabtu pagi. Jadi kami harus mengubah rencana teknik kami, karena tantangan penskalaan tersebut bukanlah sesuatu yang dapat diselesaikan dengan mudah. Jika konten bersifat statis, Anda mengatasinya dengan menambahkan lapisan cache di bagian atas dan dengan menyediakan kapasitas untuk penggunaan puncak. Namun sifat sistem kami yang real-time berarti merancang ulang sistem pengindeksan dan pemindaian untuk membagi pencarian dan menskalakan konkurensi kami.
Nilai Roblox manakah yang menurut Anda paling sesuai dengan cara Anda dan tim Anda mengatasi tantangan teknis?
Menghormati komunitas paling selaras dengan cara tim kami mengatasi tantangan teknis. Komunitas kami terdiri dari pengguna dan pencipta yang memberikan pengalaman dan mendorong persyaratan teknis kami. Keduanya sama pentingnya. Jadi ketika kita mengubah sesuatu, kita harus sangat memikirkan dampaknya terhadap semua orang.
Misalnya, jika kita mempertimbangkan untuk memodifikasi sesuatu seperti API yang berdampak pada teleportasi, kita harus memahami pengaruhnya terhadap pengguna dan pengembang. Kami menghabiskan banyak waktu untuk memikirkan cara agar orang-orang memainkan game yang tepat, dan juga cara memberikan lebih banyak opsi dan kontrol kepada pengembang. Kami secara rutin menghubungi pengembang untuk bertukar pikiran tentang fitur baru dengan mereka.
Apa yang paling membuat Anda bersemangat tentang tujuan Roblox dan tim Anda?
Tiga hal. Pertama, saya terkesan dengan pertumbuhan kami yang luar biasa. Yang kedua adalah potensi kreasi dan inovasi di Roblox: orang-orang terus-menerus memunculkan ide dan pengalaman baru, dan mendorong kita untuk menjadi kreatif juga dalam meningkatkan kreativitas tersebut. Ketiga, AI/ML sedang booming, dan Roblox berada di garis depan gelombang ini. Misalnya, kami mengintegrasikan ML lebih lanjut ke dalam perjodohan, dan AI generatif dengan cara unik dan canggih lainnya di Roblox. Ini sungguh mengasyikkan.
- Konten Bertenaga SEO & Distribusi PR. Dapatkan Amplifikasi Hari Ini.
- PlatoData.Jaringan Vertikal Generatif Ai. Berdayakan Diri Anda. Akses Di Sini.
- PlatoAiStream. Intelijen Web3. Pengetahuan Diperkuat. Akses Di Sini.
- PlatoESG. Karbon, teknologi bersih, energi, Lingkungan Hidup, Tenaga surya, Penanganan limbah. Akses Di Sini.
- PlatoHealth. Kecerdasan Uji Coba Biotek dan Klinis. Akses Di Sini.
- Sumber: https://blog.roblox.com/2023/10/inside-tech-solving-matchmaking-roblox/
- :memiliki
- :adalah
- :Di mana
- $NAIK
- a
- Sanggup
- Tentang Kami
- Akun
- di seluruh
- aktif
- menyesuaikan
- menambahkan
- alamat
- mempengaruhi
- AI
- AI / ML
- Rata
- Semua
- juga
- an
- dan
- Apa pun
- di manapun
- Lebah
- pendekatan
- ADALAH
- AS
- At
- usaha
- menarik
- kembali
- berdasarkan
- BE
- karena
- menjadi
- TERBAIK
- Blog
- kedua
- brainstorm
- Terbawa
- membangun
- Bangunan
- membangun
- tapi
- tombol
- by
- bernama
- CAN
- Kapasitas
- kasus
- Pusat
- menantang
- tantangan
- menantang
- perubahan
- mengubah
- Klik
- kedatangan
- masyarakat
- kompleksitas
- bersamaan
- Terhubung
- mengingat
- menganggap
- konstan
- terus-menerus
- Konten
- kontrol
- bisa
- penciptaan
- Kreatif
- kreativitas
- pencipta
- adat
- pemotongan
- data
- Pusat Data
- titik data
- menentukan
- mengembangkan
- Pengembang
- pengembang
- berkembang
- Kepala
- didistribusikan
- sistem terdistribusi
- menyelam
- membagi
- do
- melakukan
- turun
- drive
- mudah
- Tepi
- edisi
- efisiensi
- interaksi
- Mesin
- Teknik
- sama
- Acara
- peristiwa
- Setiap
- semua orang
- contoh
- gembira
- menarik
- pengalaman
- Pengalaman
- Menghadapi
- Fitur
- beberapa
- Angka
- Pertama
- ARMADA KAPAL
- fluktuasi
- Untuk
- pasukan
- garis terdepan
- sebagainya
- dari
- lebih lanjut
- permainan
- menghasilkan
- generatif
- AI generatif
- mendapatkan
- Memberikan
- Pergi
- baik
- Kelompok
- Pertumbuhan
- memiliki
- menangani
- terjadi
- Kejadian
- Sulit
- Memiliki
- menuju
- di sini
- Seterpercayaapakah Olymp Trade? Kesimpulan
- How To
- HTTPS
- Hibrida
- Hype
- ide-ide
- if
- Dampak
- dampak
- penting
- terkesan
- memperbaiki
- meningkatkan
- in
- Di lain
- Pada meningkat
- Meningkatkan
- indeks
- Innovation
- inovatif
- input
- dalam
- contoh
- sebagai gantinya
- Mengintegrasikan
- ke
- terpencil
- IT
- ivan
- ikut
- bergabung
- melompat
- hanya
- kunci
- Latensi
- jalankan
- lapisan
- BELAJAR
- Leverage
- 'like'
- Terbatas
- memuat
- Lobi
- tempat
- Panjang
- jangka panjang
- melihat
- lookup
- Lot
- terbuat
- membuat
- MEMBUAT
- banyak
- massa
- besar-besaran
- Cocok
- sesuai
- memaksimalkan
- maksimum
- Mungkin..
- berarti
- jutaan
- minimal
- menit
- ML
- lebih
- pagi
- paling
- beberapa
- Alam
- Perlu
- dibutuhkan
- kebutuhan
- jaringan
- New
- Fitur Baru
- sekarang
- banyak sekali
- of
- on
- mengoptimalkan
- Opsi
- or
- Lainnya
- kami
- di luar
- lebih
- tertentu
- khususnya
- lalu
- pola
- Puncak
- Konsultan Ahli
- periode
- perspektif
- Tempat
- Tempat
- rencana
- Platform
- Platform
- plato
- Kecerdasan Data Plato
- Data Plato
- Bermain
- pemain
- poin
- Populer
- potensi
- Bisa ditebak
- tekanan
- Masalah
- proses
- properties
- Dorong
- mendorong
- Mendorong
- Cepat
- peringkat
- jajaran
- LANGKA
- mencapai
- siap
- nyata
- real-time
- menyadari
- Rekomendasi
- rekomendasi
- reguler
- secara teratur
- melepaskan
- keandalan
- mengandalkan
- permintaan
- permintaan
- Persyaratan
- membutuhkan
- mengakibatkan
- benar
- roblox
- sama
- kepuasan
- Sabtu
- Skala
- skala
- pemindaian
- scan
- Kedua
- detik
- melihat
- mengirim
- Seri
- Server
- Layanan
- beberapa
- Share
- bergeser
- Pendek
- jangka pendek
- So
- Sosial
- sosial jaringan
- semata-mata
- Solusi
- MEMECAHKAN
- dipecahkan
- Memecahkan
- beberapa
- Seseorang
- sesuatu
- khusus
- menghabiskan
- sepatu berduri
- standar
- Negara
- tiba-tiba
- gelora
- sistem
- sistem
- memecahkan
- Mengatasi
- mengatasi
- Mengambil
- pengambilan
- Pembicaraan
- tim
- tech
- Teknis
- teknik
- Teknologi
- istilah
- bahwa
- Grafik
- Negara
- mereka
- Mereka
- Sana.
- Ini
- mereka
- hal
- berpikir
- Pikir
- Ketiga
- ini
- itu
- ribuan
- waktu
- untuk
- puncak
- terhadap
- jalur
- tradisional
- dahsyat
- benar-benar
- dua
- mengetik
- jenis
- memahami
- unik
- Memperbarui
- us
- menggunakan
- Pengguna
- Pengguna Pengalaman
- Pengguna
- nilai
- sangat
- maya
- Mengunjungi
- menunggu
- ingin
- Gelombang
- cara
- we
- BAIK
- Apa
- ketika
- sementara
- SIAPA
- akan
- dengan
- Kerja
- kerja
- kamu
- Anda
- zephyrnet.dll