Kukhathamiritsa kwa seva ya Minecraft

Kukhathamiritsa kwa seva ya Minecraft
Pa blog yathu tili nayo kale anauza, momwe mungapangire seva yanu ya Minecraft, koma zaka 5 zapita kuyambira pamenepo ndipo zambiri zasintha. Tikugawana nanu njira zamakono zopangira ndi kukhathamiritsa gawo la seva lamasewera otchuka ngati amenewa.

Pa mbiri yake yazaka 9 (kuwerengera kuyambira tsiku lomwe adatulutsidwa), Minecraft yapeza mafani ndi adani ambiri pakati pa osewera wamba komanso akatswiri. Lingaliro losavuta la dziko lopangidwa ndi midadada lasintha kuchokera ku zosangalatsa zosavuta kupita ku njira yapadziko lonse lapansi yolumikizirana ndikupanga zinthu zosiyanasiyana kuchokera kudziko lenileni.

Kuphatikiza pa zomangamanga, masewerawa ali ndi mphamvu yolenga logic, zomwe zimakulolani kuti mugwiritse ntchito ma aligorivimu okwanira mkati mwa Minecraft. YouTube ili ndi mavidiyo ochititsa chidwi kwambiri omwe anthu, atachita khama lalikulu ndikuwononga nthawi yambiri, adapanga izi kapena chipangizo chamagetsi kapena kupanga kopi yatsatanetsatane. alipo и zopeka Zomangamanga. Chilichonse chimachepa ndi malingaliro a osewera komanso kuthekera kwa chilengedwe chamasewera.


Koma tisalankhulenso za zomwe osewera amapanga, koma tiyeni tiwone gawo la seva la pulogalamuyo ndikuwunikira mavuto (nthawi zina ovuta kwambiri) omwe angabwere panthawi yogwira ntchito. Tiyeni tisungitse nthawi yomweyo kuti tizingolankhula za Java Edition.

Mitundu ya ma seva

Njira yosavuta ndi seva yomangidwa mu kasitomala wamasewera. Tidapanga dziko, kukanikiza batani limodzi, ndipo seva idapezeka pa netiweki yakomweko. Njira iyi siingathe kupirira katundu wovuta, choncho sitingaganizirepo.

Vanilla

Mojang Studios ikugawa gawo la seva lamasewera ngati pulogalamu ya Java kwaulere patsamba lovomerezeka. Izi zimakulolani kuti mupange nokha seva yodzipereka ndi dziko laumwini, zomwe zimapangitsa kuti zitheke kulumikizana kulikonse padziko lapansi. Kwa iwo omwe akuchita izi kwa nthawi yoyamba, pali chachikulu phunziro, ikupezeka pa Wiki yofananira yamasewera.

Njirayi ili ndi vuto limodzi lalikulu, lomwe ndilo kusowa kwa kunja kwa bokosi luso logwirizanitsa mapulagini omwe amakulitsa ntchito ya seva ndikulola kuti asamangogwiritsa ntchito njira zambiri, komanso kukhathamiritsa ntchito. Kuphatikiza apo, seva yovomerezeka imakhala ndi kugwiritsa ntchito RAM kwakukulu kwa wosewera aliyense wolumikizidwa.

Bukit

Pulogalamu ya seva yopangidwa ndi okonda kutengera mtundu wa Vanilla Bukit adakulitsa kwambiri kuthekera kwamasewerawa pothandizira mapulagini ndi ma mods (zosintha). Sizinalole kuwonjezera midadada yatsopano pamasewerawa, komanso kuchita zosinthika zosiyanasiyana zomwe sizimatheka ndi pulogalamu ya vanila. Chosangalatsa ndichakuti kugwiritsa ntchito kumeneku kumafuna kukumbukira pang'ono.

Kuyika Bukkit sikovuta; malangizo ofananira ali pazomwe zili GamePedia. Koma izi sizomveka, popeza kuyambira 2014 gulu la Bukkit latha, opanga pulojekitiyo akhala antchito a Mojang Studios, ndipo posungira kusiyidwa. Choncho, Bukkit wamwalira, ndipo ndizomveka kumvetsera ntchito ziwiri zotsatirazi.

SpigotMC

Kuti moyo ukhale wosavuta kwa opanga mapulagini, panali kufunikira kwa API yolumikizana ndi dziko lamasewera. Ili ndilo vuto lomwe olenga adathetsa. spigot, kutenga pachimake cha Bukkit ndikuchikonzanso kuti chikhale chodalirika komanso ntchito yabwino. Komabe, Git repository Ntchitoyi idaletsedwa chifukwa cha Digital Millennium Copyright Act (DMCA), ndipo n'kosatheka kutsitsa gwero la code kuchokera pamenepo.

Pakadali pano, SpigotMC imapangidwa mwachangu ndikugwiritsidwa ntchito. Imathandizira mapulagini onse opangidwa a Bukkit, koma samagwirizana nawo kumbuyo. Kuti muyende mozungulira DMCA Takedown, njira yokongola yotchedwa BuildTools idapangidwa. Chida ichi chimathetsa kufunika kogawa pulogalamu yophatikizidwa ndikulola ogwiritsa ntchito kusonkhanitsa Spigot, CraftBukkit ndi Bukkit kuchokera ku code source. Zonsezi zimapangitsa kuletsa kwa DMCA kukhala kopanda ntchito.

PaperMC

Chilichonse chinkawoneka bwino, ndipo Spigot idakhala njira yabwino. Koma izi sizinali zokwanira kwa ena okonda, ndipo adapanga foloko yawo ya Spigot "pa steroids." Yambani tsamba la polojekiti ubwino waukulu ndi kuti “Ndizopusa mofulumira”. Zotukuka mudzi amakulolani kuthetsa mwamsanga nkhani zomwe zikubwera, ndipo API yowonjezera imakulolani kuti mupange mapulagini osangalatsa. Mutha kuyambitsa PaperMC ndi lamulo limodzi losavuta, loperekedwa zolemba.

PaperMC imagwirizana kwambiri, kotero mapulagini olembedwa a SpigotMC amatha kugwira ntchito pa PaperMC, koma popanda thandizo la boma. Kugwirizana kumbuyo ndi SpigotMC kulinso. Tsopano popeza talemba njira zosiyanasiyana zopangira seva, tiyeni tipitirire kuzinthu zomwe zingachitike.

Mavuto ndi Mayankho

Chinthu chachikulu chomwe muyenera kumvetsetsa ndikuti chilichonse chokhudzana ndi kukonza dziko lamasewera chidzasinthidwa pamakompyuta amodzi a seva yakuthupi. Chifukwa chake ngati mwadzidzidzi muli ndi seva yabwino kwambiri yokhala ndi ma cores khumi ndi awiri apakompyuta, ndiye kuti imodzi yokha ndiyomwe idzakwezedwa. Ena onse adzakhala opanda ntchito. Uku ndiye kamangidwe ka pulogalamuyi, ndipo palibe chomwe mungachite. Chifukwa chake posankha seva, muyenera kusamala osati kuchuluka kwa ma cores, koma pafupipafupi mawotchi. Zikakhala zapamwamba, ntchitoyo idzakhala yabwinoko.

Pankhani ya kuchuluka kwa RAM, tiyenera kupitilira pazizindikiro zotsatirazi:

  • chiwerengero chokonzekera cha osewera;
  • chiwerengero chokonzekera cha mayiko pa seva;
  • kukula kwa dziko lililonse.

Tiyenera kukumbukira kuti pulogalamu ya Java nthawi zonse imafuna kusungidwa kwa RAM. Ngati mukuyembekeza kukumbukira kukumbukira kwa 8 gigabytes, ndiye kuti mukufunikiradi kukhala ndi 12. Manambalawa ndi achibale, koma chenichenicho sichimasintha.

Kuti tiyambe gawo la seva, timalimbikitsa kugwiritsa ntchito mbendera zomwe zafotokozedwa m'nkhaniyi Kukonza mbendera za JVM - G1GC Zotolera Zinyalala za Minecraft. "Matsenga akuda" awa amalola seva kukonza bwino "otolera zinyalala" ndikuwongolera kugwiritsa ntchito RAM. Simuyenera kugawa zokumbukira zambiri kuposa zomwe seva imadya panthawi yomwe osewera akuchulukana.

Kupanga mapu a block

"Kodi ukuganiza kuti mwezi umakhalapo ukauyang'ana?" (Albert Einstein)

Seva yatsopano kwathunthu. Wosewerayo akangolumikizana bwino koyamba, wosewera amawonekera pamalo osonkhanira (spawn). Awa ndi malo okhawo omwe dziko lamasewera limapangidwira kale ndi seva. Panthawi imodzimodziyo, gawo la kasitomala limayang'ana zoikamo, ndipo chizindikiro chofunika ndicho mtunda wojambula. Imayesedwa m'magulu (malo a mapu ndi 16×16 ndi midadada 256).

Seva imasunga mapu apadziko lonse lapansi, ndipo ngati palibe midadada yopangidwa mmenemo pomwe pakuwonekera kwa mawonekedwe amasewera, ndiye kuti seva imapanga ndikuzisunga. Sikuti izi zimangofunika zida zazikulu zamakompyuta, komanso zimachulukitsa kukula kwa mapu a dziko. Pa imodzi mwama seva akale kwambiri a anarchist Zamgululi (2builders2tools) Kukula kwa mapu kwadutsa kale 8 Tb, ndipo malire a dziko lapansi ali pafupi ndi midadada 30 miliyoni. Pali nkhani masauzande ambiri okhudzana ndi seva iyi ndipo ikuyenera kukhala ndi nkhani yake pamndandandawu.

Kupanga dziko mozungulira wosewera m'modzi si vuto. Kupanga dziko mozungulira mazana osewera kumayambitsa kutsika pang'ono kwa seva kwakanthawi kochepa, kenako katunduyo adzachepa. Kupanga dziko kwa kasitomala opereka mtunda wozungulira osewera chikwi kumatha "kugwetsa" seva ndikutaya makasitomala onse chifukwa chatha.

Mu pulogalamu ya seva pali mtengo monga TPS (Nkhupakupa pa Seva - nkhupakupa pamphindikati). Nthawi zambiri, 1 wotchi yozungulira imakhala yofanana ndi 50 ms. (Sekondi imodzi yadziko lenileni ndi yofanana ndi nkhupakupa 1 zamasewera padziko lapansi). Ngati kukonza kwa nkhupakupa kukukwera mpaka masekondi 20, ntchito ya seva imatsekedwa, kutulutsa osewera onse.

Yankho lake ndikuchepetsa dziko lapansi kuzinthu zina ndikuchita kupanga koyambirira kwa block. Chifukwa chake, timachotsa kufunikira kwa m'badwo wamphamvu pamasewera, ndipo seva idzangofunika kuwerenga mapu omwe alipo. Nkhani zonsezi zitha kuthetsedwa ndi pulogalamu yowonjezera imodzi WorldBorder.

Njira yosavuta ndikuyika malire a dziko lapansi ngati bwalo logwirizana ndi malo oyambira (ngakhale mutha kupanga mawonekedwe aliwonse) ndi lamulo limodzi:

/wb set <радиус в блоках> spawn

Ngati wosewera mpira ayesa kuwoloka malire, amakankhidwira mmbuyo midadada ingapo. Ngati izi zachitika kangapo mkati mwa nthawi yochepa, wolakwirayo amamukakamiza kuti atumize patelefoni pomwe amabadwira. Kubadwa kwadziko lapansi kukuchitika mophweka, ndi lamulo:

/wb fill

Popeza izi zitha kukhudza osewera pa seva, onetsetsani kuti mwatsimikiza:

/wb confirm

Pazonse, zinatenga pafupifupi maola a 5000 kuti apange dziko lokhala ndi utali wa midadada 40 (~ midadada 2 biliyoni) pa purosesa ya Intel® Xeon® Gold 6240. Choncho, ngati mukufuna kupanga mapu okulirapo, dziwani kuti njirayi idzatenga nthawi yokwanira, ndipo seva ya TPS idzachepetsedwa kwambiri. Komanso, kumbukirani kuti ngakhale ma radius a 5000 blocks adzafunika pafupifupi 2 GB ya disk space.

Ngakhale kuti pulogalamu yowonjezera yaposachedwa idapangidwira mtundu wa Minecraft 1.14, zidapezeka kuti zimagwira ntchito bwino pamatembenuzidwe otsatirawa. Mndandanda wathunthu wamalamulo okhala ndi mafotokozedwe ulipo pa plugin forum.

Vuto limatchinga

Pali mitundu ingapo ya midadada ku Minecraft. Komabe, tikufuna kukopa chidwi cha owerenga ngati chipika ngati TNT. Monga dzina likunenera, chipika ichi ndi chophulika (zolemba za mkonzi - ichi ndi masewera adziko lapansi ndipo chinthuchi chilibe chilichonse ndi zophulika zenizeni). Chodabwitsa chake ndi chakuti panthawi yotsegulira mphamvu yokoka imayamba kuchitapo kanthu. Izi zimakakamiza seva kuwerengera zonse zogwirizanitsa ngati panthawiyi chipikacho chikuyamba kugwa.

Ngati pali midadada ingapo ya TNT, ndiye kuti kuphulika kwa chipika chimodzi kumayambitsa kuphulika ndi kuyambitsa mphamvu yokoka m'miyala yoyandikana nayo, kuwabalalitsa mbali zonse. Makina okongola onsewa pa mbali ya seva amawoneka ngati ntchito zambiri kuti awerengere njira ya chipika chilichonse, komanso kulumikizana ndi midadada yoyandikana nayo. Ntchitoyi ndi yofunikira kwambiri, yomwe aliyense angathe kuyang'ana mosavuta. Pangani ndi kuphulitsa kachubu kuchokera ku midadada ya TNT yomwe ili yosachepera 30x30x30 kukula kwake. Ndipo ngati mumaganiza kuti muli ndi kompyuta yabwino, yamphamvu yamasewera, munalakwitsa kwambiri 😉

/fill ~ ~ ~ ~30 ~30 ~30 minecraft:tnt

Kukhathamiritsa kwa seva ya Minecraft
"Kuyesa" kofananako pa seva yokhala ndi Intel® Xeon® Gold 6240 kudapangitsa kutsika kwakukulu kwa TPS ndi 80% CPU katundu pa nthawi yonse ya block block. Chifukwa chake, ngati wosewera aliyense atha kuchita izi, ndiye kuti vuto lamasewera lidzakhudza osewera onse pa seva.

Njira yolimba kwambiri - Makristasi a M'mphepete. Ngati TNT imaphulika motsatizana, ndiye kuti Edge Crystals amaphulitsa zonse nthawi imodzi, zomwe mwamalingaliro zimatha kuyimitsa ntchito ya seva.

Izi zitha kupewedwa poletsa kwathunthu kugwiritsa ntchito midadada iyi mdziko lamasewera. Mwachitsanzo, kugwiritsa ntchito pulogalamu yowonjezera WorldGuard. Chonde dziwani kuti pulogalamu yowonjezera iyi yokha siigwira ntchito popanda pulogalamu yowonjezera ina Padziko Lonse. Chifukwa chake yikani WorldEdit poyamba, kenako WorldGuard.

Pomaliza

Kuwongolera bwino seva yamasewera sikophweka. Zovuta komanso kuchepa kwa magwiridwe antchito zimakudikirirani nthawi iliyonse, makamaka ngati simuganizira zamasewera omwewo. Sizingatheke kuwoneratu chilichonse, chifukwa osewera nthawi zina amatha kukhala opanga kwambiri poyesa kukakamiza seva kuti ichite zomwe sizinapangire. Kukhazikika koyenera kokha pakati pa zoopsa ndi zoletsedwa zomwe zakhazikitsidwa zidzalola seva kuti igwire ntchito mosalekeza osati kuchepetsa ntchito yake kuzinthu zofunikira.

Pa nthawi yokhala kwaokha, ena mwa antchito athu adaphonya maofesi omwe amawakonda ndipo adaganiza zowapanganso mkati mwa Minecraft. Mulinso ndi mwayi wobwera kudzatichezera osayika thanzi lanu pachiswe kapena kuwononga nthawi panjira.

Kuti tichite izi, tikuyitanira aliyense ku seva yathu minecraft.selectel.ru (kasitomala mtundu 1.15.2), pomwe malo opangira ma data Tsvetochnaya-1 ndi Tsvetochnaya-2 adapangidwanso. Musaiwale kuvomereza kutsitsa zowonjezera, ndizofunikira pakuwonetsa koyenera kwa malo ena.

Zofuna, ma code otsatsa, mazira a Isitala ndi kulumikizana kosangalatsa zikukuyembekezerani.

Source: www.habr.com

Kuwonjezera ndemanga