Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana hosting dengan Amazon GameLift Servers bekerja
Amazon GameLift Serversadalah layanan yang menyediakan server khusus, berbiaya rendah, penyediaan infrastruktur, penskalaan, dan manajemen sesi untuk game multipemain berbasis sesi Anda. Layanan ini menawarkan alat dan fitur fleksibel yang dapat Anda sesuaikan untuk game Anda atau gunakan bekerja sama dengan sistem Anda sendiri. Manfaatkan hosting Amazon GameLift Servers terkelola sehingga Anda dapat fokus menciptakan pengalaman gameplay daripada mengelola operasi server.
Topik ini menjelaskan komponen inti dari solusi Amazon GameLift Servers hosting lengkap dan bagaimana mereka bekerja sama untuk menyediakan sesi permainan multipemain kepada pemain.
Komponen inti dari solusi hosting game
Solusi Amazon GameLift Servers hosting lengkap terdiri dari beberapa komponen penting yang bekerja sama untuk memberikan pengalaman game multipemain. Beberapa komponen ini dibuat dan dikelola oleh Anda, sementara yang lain disediakan oleh Amazon GameLift Servers dan dikelola berdasarkan pilihan konfigurasi Anda. Memahami bagaimana komponen-komponen ini berinteraksi dan peran masing-masing sangat penting untuk mengembangkan solusi hosting game yang efektif. Komponennya meliputi:
Klien game berjalan di perangkat pemain.
Layanan backend memungkinkan klien game untuk berkomunikasi dengan Amazon GameLift Servers untuk mendapatkan informasi sesi game dan bergabung dengan game.
Perangkat lunak server game berjalan pada sumber daya hosting game dan menyelenggarakan sesi permainan untuk sekelompok pemain.
Sistem penempatan memulai sesi permainan dan mencocokkan pemain dengan game.
Armada hosting game menyediakan server game di satu atau lebih lokasi geografis.
Sistem manajemen hosting game memantau status hosting game dan mengelola kapasitas.
Klien game
Klien game adalah perangkat lunak game Anda yang berjalan di perangkat pemain. Ini memulai penempatan pemain ke dalam sesi permainan dengan berkomunikasi dengan layanan backend dan terhubung langsung ke server game untuk berpartisipasi dalam gameplay.
Fungsi utama untuk hosting game
Kirim permintaan bergabung ke layanan backend. Sertakan data pemain yang relevan dan data sesi permainan sebagai bagian dari permintaan bergabung.
Kumpulkan data latensi untuk klien game dan sertakan informasi itu dalam permintaan bergabung.
Terima informasi koneksi sesi game dari layanan backend dan gunakan untuk terhubung ke server game.
Menangani skenario koneksi sesi seperti verifikasi pemain, penerimaan pertandingan, interupsi sesi Amazon GameLift ServersFlexMatch, atau pemutusan sambungan.
Siapa yang membangunnya
Anda menambahkan fungsionalitas hosting game ke perangkat lunak klien game Anda dan mengatur komunikasi dengan layanan backend.
Layanan backend
Layanan backend adalah lapisan koordinasi antara klien game dan layanan. Amazon GameLift Servers Ini mengontrol semua komunikasi dengan layanan untuk membuat permintaan penempatan sesi permainan dan untuk mengambil sesi permainan dan informasi sesi pemain. Penggunaan layanan backend adalah praktik terbaik yang menjaga komunikasi aman dengan layanan atas nama klien game dan menghindari keharusan berbagi AWS kredensi dan izin sensitif dengan klien game.
Layanan backend Anda menerapkan strategi pengelompokan pemain untuk sesi permainan Anda. Anda memiliki banyak fleksibilitas dalam bagaimana pemain berakhir di sesi permainan. Anda dapat menyiapkan browser sesi permainan untuk pemain atau mendukung pihak yang ditentukan pemain. Atau Anda dapat mengumpulkan permintaan sesi permainan saat mereka masuk, membentuk grup pemain (mungkin dengan pra-penyortiran), dan memulai sesi permainan untuk setiap grup. Dengan FlexMatch perjodohan, Anda dapat membentuk pertandingan pemain dan mengisi ulang pertandingan yang ada.
Fungsi utama untuk hosting game
Otentikasi komunikasi dari klien game.
Buat permintaan Amazon GameLift Servers untuk memulai sesi permainan baru, mendapatkan informasi sesi permainan, atau bergabung dengan sesi permainan yang ada. Sertakan sesi permainan yang relevan dan data pemain dalam permintaan sesuai kebutuhan.
Secara opsional buat permintaan untuk sesi pemain untuk memantau ketersediaan sesi game secara lebih dekat. Gunakan sesi pemain untuk memesan slot sesi permainan, memvalidasi pemain saat mereka terhubung, dan melacak pemain terputus.
Tanggapi klien game dengan detail koneksi sesi game dan informasi lainnya seperti yang diminta.
Siapa yang membangunnya
Anda membangun layanan backend di lingkungan yang dikelola oleh Anda untuk mendukung persyaratan permainan Anda dan menerapkan bagaimana pemain masuk ke dalam game. Integrasikan AWS SDK untuk melakukan panggilan ke API Amazon GameLift Servers layanan. Secara opsional, buat layanan backend Anda AWS menggunakan layanan seperti, AWS Lambda Amazon Simple Storage Service (Amazon S3), dan Amazon Cognito.
Server permainan
Server game adalah perangkat lunak server khusus Anda yang mengelola status game, memproses tindakan pemain, dan menyinkronkan gameplay di beberapa pemain yang terhubung. Server game memelihara komunikasi dengan Amazon GameLift Servers layanan untuk mengelola hosting sesi game.
Fungsi utama untuk hosting game
-
Berkomunikasi dengan Amazon GameLift Servers ke:
status laporan (siap menjadi tuan rumah sesi, siap menerima pemain, status kesehatan).
menanggapi panggilan layanan (memulai atau mengakhiri sesi permainan).
Kelola siklus hidup sesi game untuk menyelenggarakan satu sesi game pada satu waktu per proses.
Berkoordinasi dengan AWS layanan lain untuk fungsionalitas tambahan.
Secara opsional memvalidasi koneksi pemain baru.
Siapa yang membangunnya
Anda membangun perangkat lunak server game Anda. Anda mengintegrasikan SDK server untuk Amazon GameLift Servers dan menambahkan fungsionalitas untuk membuat koneksi dengan layanan dan mendukung manajemen sesi permainan.
Armada hosting game
Armada hosting adalah kumpulan sumber daya komputasi yang menjalankan server game Anda. Sumber daya armada dapat didistribusikan di beberapa lokasi geografis untuk memberikan gameplay latensi rendah kepada pemain di mana pun mereka berada. Setiap sumber daya armada menjalankan satu atau lebih proses server game, yang berkomunikasi langsung dengannyaAmazon GameLift Servers. Setiap proses server game dapat menjadi tuan rumah satu sesi permainan pada satu waktu.
Karakteristik dan fungsionalitas armada bervariasi berdasarkan jenis hosting armada. Armada terkelola menyebarkan sumber daya ke AWS Cloud dan dikelola oleh. Amazon GameLift Servers Armada di mana saja adalah sumber daya komputasi yang disediakan pelanggan yang dikelola di luar. Amazon GameLift Servers
Fungsi utama untuk hosting game
-
Menyediakan sumber daya hosting server game.
Armada terkelola menyebarkan instans Amazon EC2 berbasis cloud dengan berbagai pengaturan konfigurasi. Konfigurasi armada menentukan daya komputasi setiap instance dalam armada, lokasi fisik instance, dan detail lainnya. Armada terkelola menambah atau menghapus instans EC2 sebagai respons terhadap penskalaan kapasitas
Di mana saja penyebaran armada dikelola sendiri. Armada dapat terdiri dari perangkat keras fisik atau sumber daya cloud lainnya, dan dikonfigurasi sesuai kebutuhan.
-
Instal lingkungan runtime dan perangkat lunak server game.
Instans armada Amazon EC2 terkelola digunakan dengan build server game Anda dan Amazon Machine Image (AMI) dengan lingkungan runtime yang kompatibel.
Instans armada kontainer terkelola digunakan dengan build server game Anda dan AMI yang dioptimalkan untuk kontainer dengan alat Docker dan komponen lain untuk bekerja dengan Amazon ECS.
Di mana saja armada digunakan dengan perangkat lunak server game dan sistem operasi pilihan Anda.
Kelola siklus hidup proses server game. Terapkan instruksi runtime yang telah dikonfigurasi sebelumnya untuk memulai dan menghentikan proses pada setiap sumber daya armada.
Siapa yang membangunnya
Ini tergantung pada jenis hosting armada:
Armada Amazon EC2 terkelola: Anda mengunggah build server gameAmazon GameLift Servers, yang menyimpannya untuk diterapkan ke instance armada. Amazon GameLift Serversmenyediakan AWS Cloud infrastruktur armada. Anda mengonfigurasi armada dan menginstruksikannya tentang cara menjalankan server game di setiap instance armada.
Armada kontainer terkelola: Anda mengemas instruksi pembuatan dan runtime server game ke dalam gambar kontainer untuk disimpan di Amazon ECR untuk penerapan. Amazon GameLift Serversmenyediakan AWS Cloud infrastruktur armada. Anda menyediakan arsitektur kontainer dan mengonfigurasi armada untuk meng-host kontainer Anda.
Armada Anywhere: Anda menyediakan semua infrastruktur dan mengelola penyebaran perangkat lunak server. Anda membuat armada Anywhere untuk menghubungkan sumber daya hosting game aktif Anda. Amazon GameLift Servers
Sistem penempatan sesi permainan
Sistem penempatan sesi permainan menempatkan server game yang tersedia untuk menyelenggarakan sesi permainan baru. Sistem ini menggunakan informasi real-time tentang ketersediaan server game untuk membuat keputusan penempatan yang optimal.
DalamAmazon GameLift Servers, mekanisme penempatan sesi permainan utama adalah antrian. Antrian sesi permainan menggunakan algoritme, yang dapat Anda konfigurasikan, untuk menempatkan sesi permainan untuk hasil terbaik. Anda dapat memprioritaskan penempatan berdasarkan faktor-faktor seperti biaya hosting terendah dan latensi pemain terendah, dan Anda dapat mengonfigurasi antrian untuk mencari di beberapa lokasi geografis. Sebagai alternatif antrian, Anda dapat menunjuk armada tertentu untuk menyelenggarakan sesi permainan Anda.
Fungsi utama untuk hosting game
Memproses permintaan penempatan sesi permainan yang diterima dari layanan backend.
Buat penempatan berdasarkan informasi real-time tentang ketersediaan sumber daya hosting.
Gunakan data latensi pemain dan data lainnya untuk memprioritaskan opsi penempatan (hanya antrian)
Prompt proses server game untuk memulai sesi permainan baru.
Perbarui informasi koneksi sesi game setelah sesi permainan siap menerima pemain.
Secara opsional mengatur FlexMatch perjodohan untuk membuat pertandingan pemain dan meminta penempatan sesi permainan untuk pertandingan.
Siapa yang membangunnya
Amazon GameLift Serversmemasok sistem penempatan. Anda mengonfigurasi perilaku penempatan melalui cara layanan backend Anda membuat permintaan penempatan dan secara opsional dengan mengatur antrian sesi permainan dan mak comblang. FlexMatch Gunakan Amazon GameLift Servers konsol, AWS SDK, atau AWS CLI untuk membuat dan mengonfigurasi antrian dan mak comblang untuk game Anda.
Sistem manajemen hosting game
Sistem manajemen hosting game adalah tulang punggung operasional yang mengoordinasikan dan memantau semua aspek solusi hosting game Anda. Sistem ini memberikan kecerdasan dan otomatisasi yang memungkinkan Amazon GameLift Servers 'penempatan dan penskalaan kemampuan.
Fungsi utama untuk hosting game
Lacak status real-time dan ketersediaan proses server game, sesi game, dan sesi pemain di semua armada untuk mendukung penempatan sesi game dan penskalaan kapasitas otomatis.
Memantau kesehatan dan kinerja armada.
Kumpulkan dan analisis metrik aktivitas hosting game.
Menyediakan alat penskalaan kapasitas, termasuk penskalaan otomatis berdasarkan permintaan pemain dan pemanfaatan armada.
Kelola pembaruan untuk perangkat lunak server game dan instruksi runtime.
Siapa yang membangunnya
Armada terkelola: Amazon GameLift Servers menyediakan pelacakan ketersediaan, metrik aktivitas hosting game dan kinerja perangkat keras, dan alat penskalaan kapasitas. Anda menggunakan AWS alat yang tersedia untuk mengelola pembaruan perangkat lunak server game, memodifikasi instruksi runtime, dan menyesuaikan penggunaan metrik Anda (seperti pengaturan CloudWatch untuk pemantauan). Anda mengonfigurasi kebijakan penskalaan khusus dan memodifikasi sesuai kebutuhan.
Armada Anywhere: Amazon GameLift Servers menyediakan pelacakan ketersediaan dan metrik aktivitas hosting game. Anda mengelola perubahan konfigurasi armada, termasuk pembaruan perangkat lunak server game dan instruksi runtime. Anda membuat sistem untuk memantau kinerja armada dan mengelola penskalaan kapasitas armada.
Bagaimana komponen bekerja sama
Saat komputasi hosting game diterapkan
Perangkat lunak server game diinstal: Komputasi diinstal dengan lingkungan runtime dan server game Anda dibangun
Peluncuran server game: Setidaknya satu instance server game yang dapat dieksekusi diluncurkan, dengan parameter peluncuran opsional, pada komputasi.
Server game terhubung ke Amazon GameLift Servers: Sebagai bagian dari tindakan startup, proses server game memanggil SDK server untuk menginisialisasi koneksi ke layanan.
Server game melaporkan siap untuk meng-host sesi game: Proses server game menyelesaikan tindakan startup, lalu memanggil SDK server untuk melaporkan kesiapan. Ini mulai melaporkan status kesehatan berdasarkan konfigurasinya.
Amazon GameLift Serversmelacak ketersediaan: Layanan mencatat ketersediaan proses server game untuk penempatan sesi game. Ini juga memperbarui metrik untuk armada, instance, dan sesi game untuk melacak penggunaan dan kapasitas.
Server game menunggu penugasan sesi game: Proses server game mempertahankan status idle sambil menunggu prompt untuk memulai sesi game.
Ketika seorang pemain ingin bergabung dengan permainan
Pemain memulai permainan: Seorang pemain meluncurkan klien game Anda, mengautentikasi dengan layanan backend Anda, dan meminta untuk bergabung dengan game.
Layanan backend meminta sesi permainan: Layanan backend Anda memanggil Amazon GameLift Servers untuk menemukan atau membuat sesi permainan yang sesuai, berdasarkan strategi pengelompokan pemainnya. Permintaan mungkin termasuk data pemain atau game untuk digunakan dalam sesi permainan.
Amazon GameLift Serversmenempatkan sesi permainan: Saat memulai sesi permainan baru, sistem penempatan mengidentifikasi lokasi yang optimal untuk meng-host sesi dan memilih proses server game yang tersedia. Layanan meminta proses yang dipilih untuk memulai sesi permainan baru dan meneruskan data pemain atau game apa pun. Jika FlexMatch perjodohan sedang digunakan, mak comblang pertama-tama membuat kecocokan, lalu meminta penempatan untuk pertandingan tersebut.
Server game memulai sesi permainan: Server game memulai langkah-langkah untuk memulai sesi permainan. Setelah selesai, ia melaporkan Amazon GameLift Servers bahwa ia siap menerima koneksi pemain.
Informasi koneksi dikirimkan ke klien game: Setelah server game memperbarui statusnya, Amazon GameLift Servers berikan informasi koneksi sesi game. Layanan backend menerima informasi ini dan mengirimkannya ke klien game.
Pemain terhubung ke sesi permainan: Klien game menggunakan informasi koneksi untuk terhubung langsung ke server game dan memulai gameplay.
Amazon GameLift Serversmemantau status sesi game: Proses server game melaporkan status kesehatan, status koneksi pemain opsional, dan status sesi game untuk melacak ketersediaan sesi game yang sedang berlangsung.
Proses server game dimatikan: Proses server game mengakhiri sesi game, melaporkan status, dan kemudian mati sendiri.