Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Permainan Cloud Native dengan kruiseGame

Permainan Cloud Native dengan kruiseGame

王林
王林asal
2024-09-03 14:17:29352semak imbas

Apakah kruise-game?

kruise-game ialah projek sumber terbuka di bawah openkruise yang bertujuan untuk membawa transformasi asli awan untuk beban kerja permainan aka pelayan permainan.

tetapi apakah pelayan permainan sebenarnya?
pelayan permainan pada asasnya ialah mesin atau bekas maya yang mengendalikan fungsi teras di bahagian belakang permainan dalam talian berbilang PVP

di bawah saya telah menunjukkan arkitek pelayan permainan asas yang digunakan oleh permainan dalam talian PvP moden

Cloud Native gaming with kruiseGame

mengapa kita benar-benar memerlukan kruise-game. bukankah sumber k8s lalai cukup untuk beban kerja permainan ?

permainan PvP moden semakin kompleks, mereka memerlukan berbilang pelayan permainan untuk mengendalikan pelbagai jenis perkhidmatan contohnya.
permainan PvP moden anda seperti valorant memerlukan pelayan permainan untuk melobi, mencari jodoh dan yang menjalankan logik permainan dan menguruskan keadaan permainan. Mengendalikan begitu banyak pelayan permainan adalah tugas besar dan tidak boleh dilakukan secara manual. Jadi bagaimana sekarang?

kami mempunyai kubernet untuk diselamatkan.K8 dengan operasi dan pengurusan automatiknya
keupayaan boleh menangani beban ini untuk Kami, hanya menggunakan imej pelayan permainan anda dan kami selesai betul?. Tidak sangat

Saya harap ia semudah ini. Masalahnya ialah anda tidak menggunakan apl web tanpa kewarganegaraan biasa anda di sini. Pelayan permainan berbeza dan keperluannya berbeza. Sumber lalai k8s bagus untuk apl tanpa negara tetapi pelayan permainan mempunyai kitaran hayat yang lebih kompleks dan ia adalah stateful juga keperluan rangkaian mereka berbeza.

  • pertama sekali pelayan permainan memerlukan sambungan tanpa kehilangan terus kepada pelanggan (sambungan udp), untuk ini kami memerlukan alamat Ip tetap pod, IP pod k8s ditukar semasa pemadaman, penskalaan.

  • juga terdapat kekurangan kawalan yang anda miliki ke atas pod jika menggunakannya untuk pelayan permainan, terdapat perkara yang dipanggil kemas kini bergulir di mana anda mengemas kini beberapa contoh pelayan permainan untuk menguji kemas kini dan melancarkan secara beransur-ansur kepada kejadian lain untuk mengelakkan masa henti, penjadual K8s tidak tahu bahawa anda sedang bekerja dengan pelayan permainan ia akan mengemas kini pod secara rawak, pada asasnya anda tidak mempunyai kawalan ke atas strategi kemas kini pelayan permainan anda. JADI anda mempunyai sedikit atau tiada fleksibiliti terhadap kemas kini pelayan permainan.

Untuk mengurangkan isu ini kruise-game mentakrifkan dua Sumber tersuai yang direka khusus untuk beban kerja pelayan permainan gameServer dan gameserverSet

  • gameServer:Merujuk kepada abstraksi operasi O&M dan pengurusan pada pelayan permainan tertentu. Ia digunakan terutamanya untuk operasi O&M dan pengurusan seperti kawalan jujukan kemas kini, kawalan keadaan pelayan permainan dan perubahan rangkaian pelayan permainan.

  • gameServerSet:Merujuk kepada abstraksi pengurusan kitaran hayat untuk sekumpulan pelayan permainan. Ia digunakan terutamanya untuk kawalan kitaran hayat seperti pengurusan nombor replika dan pelancaran pelayan permainan.

ciri yang disediakan oleh kruise-game untuk pengurusan pelayan permainan:-

  • Kemas kini hangat berdasarkan imej dan muat semula panas konfigurasi

  • Kemas kini, pemadaman dan pengasingan pelayan permainan tertentu

  • Berbilang model rangkaian terbina dalam (alamat dan port IP tetap, sambungan terus tanpa kehilangan dan pecutan global)

  • Auto penskalaan

  • O&M automatik (kualiti perkhidmatan)

  • Bebas daripada penyedia perkhidmatan awan

  • Orkestrasi pelayan permainan yang kompleks

Imej di bawah menunjukkan seni bina penggunaan permainan kruise pada k8

Cloud Native gaming with kruiseGame

bermula dengan kruise-game :0

  1. mendapatkan kluster dan helm k8s

anda memerlukan kluster k8s untuk permainan kruise, cara paling mudah untuk mendapatkan kluster k8s ialah dengan memasukkan minikube dalam mesin anda, juga pastikan anda memasang helm pada mesin anda.

2.mulakan minikube

minikube start 

3.gunakan helm untuk memasang kruise-game

#kruise-game relies on openkruise so you need to install openkruise first
# Firstly add openkruise charts repository if you haven't do this.
$ helm repo add openkruise https://openkruise.github.io/charts/
# [Optional]
$ helm repo update
# Install the latest version.
$ helm install kruise openkruise/kruise --version 1.6.3
#now instakk kruise-game
$ helm install kruise-game openkruise/kruise-game --version 0.8.0

4.pergi ke papan pemuka minikube anda

minikube dashboard 

5.anda sepatutnya ruang nama kruise-game-system, tahniah anda memasang kruise-game

Cloud Native gaming with kruiseGame

untuk maklumat lanjut dan butiran tentang kruise-game rujuk dokumen kruise-game.

Terima kasih kerana membaca, harap anda menikmati ini :).

Atas ialah kandungan terperinci Permainan Cloud Native dengan kruiseGame. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Pemutus Litar dalam apl GoArtikel seterusnya:Pemutus Litar dalam apl Go