Ar ein blog rydym eisoes wedi
Dros ei hanes 9 mlynedd (gan gyfrif o'r dyddiad rhyddhau), mae Minecraft wedi ennill nifer anhygoel o gefnogwyr a chasinebwyr ymhlith chwaraewyr cyffredin a geeks. Mae'r cysyniad syml o fyd wedi'i wneud o flociau wedi esblygu o ffurf syml o adloniant i fod yn gyfrwng cyffredinol ar gyfer cyfathrebu a chreu gwrthrychau amrywiol o'r byd go iawn.
Yn ogystal ag adeiladu, mae gan y gêm y gallu i greu
Ond gadewch i ni beidio â siarad ymhellach am beth yn union y mae'r chwaraewyr yn ei greu, ond gadewch i ni edrych ar ran gweinydd y cais a thynnu sylw at y problemau (cymhleth iawn weithiau) a all godi yn ystod gweithrediad dan lwyth. Gadewch i ni archebu ar unwaith mai dim ond am y Java Edition y byddwn yn siarad.
Mathau o weinyddion
Yr opsiwn symlaf yw gweinydd sydd wedi'i ymgorffori yn y cleient gêm. Fe wnaethon ni greu byd, pwyso un botwm, a daeth y gweinydd yn hygyrch dros y rhwydwaith lleol. Ni all yr opsiwn hwn wrthsefyll unrhyw lwyth difrifol, ac felly ni fyddwn hyd yn oed yn ei ystyried.
Fanila
Mae Mojang Studios yn dosbarthu rhan gweinydd y gêm fel cymhwysiad Java am ddim
Mae gan y dull hwn un anfantais ddifrifol, sef diffyg galluoedd y tu allan i'r bocs i gysylltu ategion sy'n ehangu ymarferoldeb y gweinydd ac yn caniatáu nid yn unig i awtomeiddio llawer o brosesau, ond hefyd i optimeiddio perfformiad. Yn ogystal, mae gan y gweinydd swyddogol ddefnydd RAM eithaf mawr ar gyfer pob chwaraewr cysylltiedig.
Bwckit
Cymhwysiad gweinydd a grëwyd gan selogion yn seiliedig ar y fersiwn Vanilla
Nid yw'n anodd gosod Bukkit; mae'r cyfarwyddiadau cyfatebol ar yr adnodd
SpigotMC
Er mwyn gwneud bywyd yn haws i ddatblygwyr ategyn, roedd angen API i ryngweithio â byd y gêm. Dyma'r union broblem a ddatrysodd y crewyr.
Ar hyn o bryd, mae SpigotMC yn cael ei ddatblygu a'i ddefnyddio'n weithredol. Mae'n cefnogi'r holl ategion a grëwyd ar gyfer Bukkit, ond nid yw'n gydnaws yn ôl ag ef. I fynd o gwmpas y DMCA Takedown, dyfeisiwyd dull cain o'r enw BuildTools. Mae'r offeryn hwn yn dileu'r angen i ddosbarthu cymhwysiad wedi'i lunio ac yn caniatáu i ddefnyddwyr lunio Spigot, CraftBukkit a Bukkit o'r cod ffynhonnell. Mae hyn i gyd yn gwneud y gwaharddiad DMCA yn ddiwerth.
PapurMC
Roedd popeth yn ymddangos yn cŵl, a daeth Spigot yn opsiwn gwych. Ond nid oedd hyn yn ddigon i rai selogion, ac fe wnaethant greu eu fforc eu hunain o Spigot “ar steroidau.” Ar
Mae gan PaperMC gydnawsedd rhagorol, felly gall ategion a ysgrifennwyd ar gyfer SpigotMC weithio'n hawdd ar PaperMC, ond heb gefnogaeth swyddogol. Mae cydnawsedd ôl â SpigotMC hefyd yn bresennol. Nawr ein bod wedi rhestru'r opsiynau amrywiol ar gyfer creu gweinydd, gadewch i ni symud ymlaen at y materion perfformiad a allai godi.
Problemau ac atebion
Y prif beth y mae angen i chi ei ddeall yw y bydd popeth sy'n ymwneud â phrosesu byd y gêm yn cael ei brosesu ar un craidd cyfrifiadurol o'r gweinydd corfforol yn unig. Felly os yn sydyn mae gennych weinydd rhagorol gyda dwsin o greiddiau cyfrifiadurol, yna dim ond un fydd yn cael ei lwytho. Bydd pob un arall bron yn segur. Dyma bensaernïaeth y cais, ac nid oes unrhyw beth y gallwch chi ei wneud yn ei gylch. Felly wrth ddewis gweinydd, dylech dalu sylw nid i nifer y creiddiau, ond i amlder cloc. Po uchaf ydyw, y gorau fydd y perfformiad.
O ran y mater o gapasiti RAM, dylem symud ymlaen o'r dangosyddion canlynol:
- nifer cynlluniedig o chwaraewyr;
- nifer cynlluniedig o fydoedd ar y gweinydd;
- maint pob byd.
Dylid cofio bod cais Java bob amser angen cronfa wrth gefn o RAM. Os ydych chi'n disgwyl defnydd cof o 8 gigabeit, yna mae angen i chi gael 12 mewn gwirionedd. Mae'r niferoedd yn gymharol, ond nid yw'r hanfod yn newid.
I gychwyn rhan y gweinydd, rydym yn argymell defnyddio'r baneri a nodir yn yr erthygl
Cynhyrchu map bloc
“Ydych chi wir yn meddwl mai dim ond pan edrychwch arno y mae'r lleuad yn bodoli?” (Albert Einstein)
Gweinydd hollol newydd. Cyn gynted ag y bydd y chwaraewr yn cysylltu'n llwyddiannus am y tro cyntaf, mae cymeriad y gêm yn ymddangos yn y man ymgynnull cyffredinol (silio). Dyma'r unig le lle mae'r byd gêm yn cael ei gynhyrchu ymlaen llaw gan y gweinydd. Ar yr un pryd, mae rhan y cleient yn edrych ar y gosodiadau, a'r paramedr allweddol yw'r pellter tynnu. Mae'n cael ei fesur mewn talpiau (mae arwynebedd y map yn 16 × 16 a 256 bloc o uchder) Sawl talp sy'n cael ei nodi mae'n union faint y gofynnir amdano gan y gweinydd.
Mae'r gweinydd yn storio map byd-eang o'r byd, ac os nad oes blociau wedi'u cynhyrchu ynddo eto ar bwynt ymddangosiad cymeriad y gêm, yna mae'r gweinydd yn eu cynhyrchu'n ddeinamig ac yn eu storio. Nid yn unig y mae hyn yn gofyn am adnoddau cyfrifiadurol mawr, ond mae hefyd yn cynyddu maint map y byd yn gyson. Ar un o'r gweinyddion anarchaidd hynaf
Nid yw creu byd o gwmpas un chwaraewr yn broblem. Bydd cynhyrchu byd o gwmpas cannoedd o chwaraewyr yn achosi mân arafu gweinyddwyr am gyfnod byr, ac ar ôl hynny bydd y llwyth yn lleihau. Mae cynhyrchu byd o bellter rendro cleient o gwmpas mil o chwaraewyr eisoes yn gallu “gollwng” y gweinydd a thaflu pob cleient allan ohono oherwydd goramser.
Yn y meddalwedd gweinydd mae gwerth fel TPS (Ticiau fesul Gweinydd - ticiau yr eiliad). Fel arfer, mae cylch 1 cloc yn hafal i 50 ms. (Mae 1 eiliad o'r byd go iawn yn hafal i 20 tic o fyd y gêm). Os bydd prosesu un tic yn cynyddu i 60 eiliad, bydd y cais gweinydd yn cael ei gau, gan daflu pob chwaraewr allan.
Yr ateb yw cyfyngu'r byd i gyfesurynnau penodol a pherfformio cynhyrchu bloc rhagarweiniol. Felly, rydym yn dileu'r angen am gynhyrchu deinamig yn ystod y gêm, a dim ond map sy'n bodoli eisoes y bydd angen i'r gweinydd ei ddarllen. Gellir datrys y ddau fater gydag un ategyn unigol
Y ffordd hawsaf yw gosod ffin y byd ar ffurf cylch o'i gymharu â'r pwynt silio (er y gallwch ei wneud o unrhyw siâp) gydag un gorchymyn:
/wb set <радиус в блоках> spawn
Os yw cymeriad y chwaraewr yn ceisio croesi'r ffin, bydd yn cael ei wthio yn ôl sawl bloc. Os gwneir hyn sawl gwaith o fewn amser cyfyngedig, bydd y troseddwr yn cael ei deleportio trwy rym i'r man silio. Mae cyn-genhedlaeth y byd yn symlach fyth, gyda'r gorchymyn:
/wb fill
Gan y gallai'r weithred hon o bosibl effeithio ar chwaraewyr ar y gweinydd, sicrhewch eich bod yn cadarnhau:
/wb confirm
Yn gyfan gwbl, cymerodd tua 5000 awr i gynhyrchu byd gyda radiws o 40 o flociau (~2 biliwn o flociau) ar brosesydd Intel® Xeon® Gold 6240. Felly, os ydych am gynhyrchu map mwy o faint ymlaen llaw, byddwch yn ymwybodol bydd y broses hon yn cymryd llawer iawn o amser , a bydd y gweinydd TPS yn cael ei leihau'n ddifrifol. Hefyd, cofiwch y bydd hyd yn oed radiws o 5000 o flociau angen tua 2 GB o ofod disg.
Er gwaethaf y ffaith bod y fersiwn ddiweddaraf o'r ategyn wedi'i ddatblygu ar gyfer fersiwn Minecraft 1.14, canfuwyd yn arbrofol ei fod yn gweithio'n wych ar fersiynau dilynol. Mae rhestr gyflawn o orchmynion gydag esboniadau ar gael
Blociau problem
Mae yna amrywiaeth eang o flociau yn Minecraft. Fodd bynnag, hoffem dynnu sylw darllenwyr at floc o'r fath TNT. Fel y mae'r enw'n awgrymu, mae'r bloc hwn yn ffrwydryn (nodyn y golygydd - mae hon yn eitem gêm o'r byd rhithwir ac nid oes gan yr eitem hon unrhyw beth â ffrwydron go iawn). Mae ei hynodrwydd yn golygu bod grym disgyrchiant yn dechrau gweithredu arno ar hyn o bryd. Mae hyn yn gorfodi'r gweinydd i gyfrifo'r holl gyfesurynnau os yw'r bloc yn dechrau cwympo ar hyn o bryd.
Os oes sawl bloc TNT, yna mae tanio un bloc yn achosi tanio ac actifadu disgyrchiant mewn blociau cyfagos, gan eu gwasgaru i bob cyfeiriad. Mae'r holl fecaneg hardd hon ar ochr y gweinydd yn edrych fel llawer o weithrediadau i gyfrifo llwybr pob bloc, yn ogystal â rhyngweithio â blociau cyfagos. Mae'r dasg yn hynod o ddwys o ran adnoddau, y gall unrhyw un ei gwirio'n hawdd. Cynhyrchu a thanio ciwb o flociau TNT sydd o leiaf 30x30x30 mewn maint. Ac os oeddech chi'n meddwl bod gennych chi gyfrifiadur hapchwarae pwerus, da, roeddech chi'n camgymryd yn fawr 😉
/fill ~ ~ ~ ~30 ~30 ~30 minecraft:tnt
Arweiniodd “arbrawf” tebyg ar weinydd gydag Intel® Xeon® Gold 6240 at gwymp TPS difrifol a llwyth CPU o 80% yn ystod yr amser tanio bloc cyfan. Felly, os yw unrhyw chwaraewr yn gallu gwneud hyn, yna bydd y broblem perfformiad yn effeithio ar yr holl chwaraewyr ar y gweinydd.
Opsiwn anoddach fyth - Grisialau Ymyl. Serch hynny, os yw TNT yn ffrwydro'n ddilyniannol, yna mae'r Edge Crystals yn tanio i gyd ar yr un pryd, a all mewn theori atal gweithrediad y cymhwysiad gweinydd yn llwyr.
Dim ond trwy wahardd y defnydd o'r blociau hyn ym myd y gêm yn llwyr y gellir osgoi'r senario hwn. Er enghraifft, defnyddio'r ategyn
Casgliad
Nid yw rheoli gweinydd gêm yn gywir yn dasg hawdd. Bydd anawsterau a llai o berfformiad yn aros amdanoch bob tro, yn enwedig os na fyddwch yn ystyried y mecaneg gêm eu hunain. Mae'n amhosibl rhagweld popeth, oherwydd weithiau gall chwaraewyr fod yn greadigol iawn wrth geisio gorfodi'r gweinydd i wneud rhywbeth nad oedd wedi'i fwriadu ar ei gyfer. Dim ond cydbwysedd rhesymol rhwng risgiau a chyfyngiadau sefydledig fydd yn caniatáu i'r gweinydd weithredu'n barhaus a pheidio â lleihau ei berfformiad i werthoedd critigol.
Yn ystod cwarantîn, collodd rhai o'n gweithwyr eu hoff swyddfeydd a phenderfynwyd eu hail-greu y tu mewn i Minecraft. Mae gennych hefyd gyfle i ddod i'n gweld heb beryglu'ch iechyd na gwastraffu amser ar y ffordd.
I wneud hyn, rydym yn gwahodd pawb i'n gweinydd minecraft.selectel.ru (fersiwn cleient 1.15.2), lle cafodd y canolfannau data Tsvetochnaya-1 a Tsvetochnaya-2 eu hail-greu. Peidiwch ag anghofio cytuno i lawrlwytho adnoddau ychwanegol, maent yn angenrheidiol ar gyfer arddangos rhai lleoliadau yn gywir.
Mae quests, codau hyrwyddo, wyau Pasg a chyfathrebu dymunol yn aros amdanoch chi.
Ffynhonnell: hab.com