In Minecraft-tsjinner oanmeitsje en ynstelle

In Minecraft-tsjinner oanmeitsje en ynstelle

Minecraft is ien fan 'e populêrste online spultsjes hjoed. Yn minder as trije jier (de earste offisjele release fûn plak yn 'e hjerst fan 2011), hy krige miljoenen fans oer de hiele wrâld.

De spultsje-ûntwikkelders rjochtsje har bewust op 'e bêste foarbylden fan tweintich jier lyn, doe't in protte spultsjes, neffens hjoeddeistige noarmen, primityf wiene yn termen fan grafiken en ûnfolslein yn termen fan brûkberens, mar tagelyk wiene se wirklik spannend.

Lykas alle sânbox-spultsjes biedt Minecraft de brûker enoarme kânsen foar kreativiteit - dit is yn feite it wichtichste geheim fan syn populariteit.

Servers foar multiplayer-spultsjes wurde organisearre troch de spilers sels en har mienskippen. Tsjintwurdich wurkje der tsientûzenen spultsje-tsjinners op it ynternet (sjoch bygelyks de list hjir).

D'r binne in protte fans fan dit spultsje ûnder ús kliïnten, en se hiere apparatuer fan ús datasintra foar gamingprojekten. Yn dit artikel sille wy prate oer hokker technyske punten jo moatte betelje omtinken oan by it kiezen fan in tsjinner foar
Minecraft.

Kies in platfoarm

Minecraft omfettet de folgjende arsjitektoanyske eleminten:

  1. tsjinner - in programma wêrmei spilers ynteraksje mei elkoar oer it netwurk;
  2. client - in programma foar ferbining mei de tsjinner, ynstallearre op de spiler syn kompjûter;
  3. plugins - tafoegings oan 'e tsjinner dy't nije funksjes tafoegje of âlde útwreidzje;
  4. mods binne tafoegings oan 'e spielwrâld (nije blokken, items, funksjes).

D'r binne in protte serverplatfoarms foar Minecraft. De meast foarkommende en populêre binne Vanilla en Bukkit.

vanille Dit is it offisjele platfoarm fan 'e spultsje-ûntwikkelders. It wurdt ferspraat yn sawol grafyske as konsole ferzjes. In nije ferzje fan Vanilla komt altyd tagelyk út as in nije ferzje fan Minecraft.

It neidiel fan Vanilla is it oermjittich ûnthâldferbrûk (sawat 50 MB per spiler). In oar wichtich nadeel is it gebrek oan plugins.

bukkit waard makke troch in groep fan entûsjasters dy't besocht de offisjele Minecraft-tsjinner te ferbetterjen. De poging blykte frij suksesfol te wêzen: Bukkit is folle breder yn funksjonaliteit dan Vanilla, benammen troch de stipe fan ferskate mods en plugins. Tagelyk verbruikt it minder ûnthâld per spiler - likernôch 5-10 MB.

De neidielen fan Bukkit binne dat it tefolle RAM nimt by it rinnen. Dêrneist, hoe langer de tsjinner rint, hoe mear ûnthâld it fereasket (sels as der in pear spilers). By it kiezen fan Bukkit as tsjinner, moatte jo der rekken mei hâlde dat syn nije ferzjes, as regel, flaters befetsje; De stabile ferzje ferskynt normaal sawat 2-3 wiken nei't de offisjele ferzje fan Minecraft is frijlitten.

Dêrneist hawwe oare platfoarms koartlyn opdien populariteit (Bygelyks, Spout, MCPC en MCPC +), mar se hawwe beheinde komptabiliteit mei Vanilla en Bukkit en ekstreem beheinde stipe foar mods (Bygelyks, foar Spout kinne jo allinnich skriuwe mods út it begjin). As se brûkt wurde, dan allinich foar eksperiminten.

Om in spultsje tsjinner te organisearjen, advisearje wy it Bukkit-platfoarm te brûken, om't it it meast fleksibel is; Derneist binne d'r in protte ferskillende mods en plugins foar. De stabile wurking fan in Minecraft-tsjinner hinget foar in grut part ôf fan 'e juste kar fan hardwareplatfoarm. Lit ús beskôgje dit probleem yn mear detail.

Hardware easken

Sawol de Minecraft-tsjinner as kliïnt binne heul easken op systeemboarnen.
By it kiezen fan in hardwareplatfoarm, moatte jo der rekken mei hâlde dat in multi-core-prosessor net folle foardiel sil leverje: de Minecraft-tsjinnerkearn kin mar ien berekkeningsdraad brûke. De twadde kearn soe lykwols nuttich wêze: guon plugins wurde útfierd yn aparte threads, en Java ferbrûkt ek in protte boarnen ...

Dêrom, foar in Minecraft-tsjinner is it better om in prosessor te kiezen dy't hegere single-core prestaasjes hat. In machtiger dual-core processor sil de foarkar wêze foar in multi-core processor dy't minder krêftich is. Op spesjalisearre foarums is it oan te rieden om processors te brûken mei in klokfrekwinsje fan op syn minst 3 GHz.

Foar normaal funksjonearjen fan 'e Minecraft-tsjinner is in grutte hoemannichte RAM nedich. Bukkit nimt likernôch 1GB fan RAM; Dêrneist, foar eltse spiler, lykas sein hjirboppe, wurdt tawiisd út 5 oan 10 MB. Plugins en mods ferbrûke ek nochal in soad ûnthâld. Foar in tsjinner mei 30 - 50 spilers, dêrom, do silst nedich op syn minst 4 GB RAM.

Yn Minecraft is in protte (bygelyks it laden fan deselde plugins) ôfhinklik fan de snelheid fan it bestânsysteem. Dêrom is it better om in server te kiezen mei in SSD-skiif. Spindle skiven binne wierskynlik net geskikt fanwegen de lege willekeurige lêssnelheid.

De snelheid fan jo ynternetferbining is ek fan grut belang. Foar in spultsje fan 40-50 minsken is in kanaal fan 10 Mb/s genôch. Foar dyjingen dy't lykwols in grutter minecraft-projekt plannen, ynklusyf in webside, foarum en dynamyske kaart, is it heul winsklik om in kanaal te hawwen mei mear bânbreedte.

Hokker spesifike konfiguraasje is it bêste om te kiezen? Fan konfiguraasjes biede wy Wy riede oan dat jo omtinken jaan oan it folgjende:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 RUR / moanne;
  • Intel Core 2 Quad Q8300 2.5GHz, 6GB RAM, 2x500GB SATA, 3500 rub / moanne. - wy brûke dizze konfiguraasje foar ús MineCraft-testserver, wêrop jo no kinne spielje (hoe dit te dwaan is hjirûnder skreaun);
  • Intel Core i3-2120 3.3GHz, 8GB RAM, 2x500GB SATA, 3500 RUR / moanne.

Dizze konfiguraasjes binne frij geskikt foar it meitsjen fan in Minecraft-tsjinner foar 30-40 spilers. Guon neidiel is it gebrek oan SSD-skiven, mar wy jouwe in oar wichtich foardiel: in garandearre 100 Mb / s-kanaal sûnder beheiningen of ferhâldingen. By it bestellen fan alle boppesteande konfiguraasjes is d'r gjin opsetfergoeding.

Wy hawwe ek mear produktive, mar tagelyk, fansels, djoerdere servers (by it bestellen fan dizze konfiguraasjes wurdt de ynstallaasjefergoeding ek net yn rekken brocht):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 rub / moanne;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3x1TB SATA, 9000 rub / moanne.

Wy advisearje ek omtinken te jaan oan it nije budzjetmodel mei in SSD-stasjon basearre op de Intel Atom C2758-prosessor: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 roebel / moanne, ynstallaasjebetelling - 3000 roebel.

Ynstallearje en útfiere fan de Bukkit-tsjinner op OC Ubuntu

Foardat jo de server ynstallearje, litte wy in nije brûker meitsje en it tafoegje oan 'e sudo-groep:

$ sudo useradd -m -s /bin/bash <brûkersnamme> $ sudo adduser <brûkersnamme> sudo

Folgjende sille wy it wachtwurd ynstelle wêrunder de oanmakke brûker sil ferbine mei de tsjinner:

$ sudo passwd <brûkersnamme>

Litte wy opnij ferbine mei de tsjinner ûnder in nij akkount en begjinne de ynstallaasje.
Minecraft is skreaun yn Java, dus de Java Runtime Environment moat ynstalleare wurde op 'e tsjinner.

Litte wy de list mei beskikbere pakketten bywurkje:

$ sudo apt-get update

Fier dan it folgjende kommando út:

$ sudo apt-get install standert-jdk

Om Bukkit te ynstallearjen en út te fieren, is it ek oan te rieden om in terminalmultiplexer te ynstallearjen - bygelyks skerm (jo kinne ek oare terminalmultiplexers brûke - sjoch ús in resinsje):

$ sudo apt-get ynstallaasje skerm

Skerm sil nedich wêze as wy ferbine mei it spultsje tsjinner fia ssh. Mei har help kinne jo de Minecraft-tsjinner yn in apart terminalfinster útfiere, en sels nei it sluten fan de ssh-client sil de tsjinner wurkje.

Litte wy in map meitsje wêryn de serverbestannen sille wurde opslein:

$ mkdir bukkit $ cd bukkit

Dêrnei geane wy ​​nei Bukkit offisjele webside download side. Yn 'e rjochter boppeste diel fan' e side kinne jo in keppeling sjen nei de lêste oanbefellende build fan 'e tsjinner. Wy riede oan om it te downloaden:

$ wget <recommended version link>

Litte wy no skerm útfiere:

$sudo skerm

en fier it folgjende kommando út:

$ java -Xmx1024M -jar craftbukkit.jar -o falsk

Lit ús útlizze wat de brûkte parameters betsjutte:

  • Xmx1024M - maksimum bedrach fan RAM per tsjinner;
  • jar craftbukkit.jar - kaai foar de tsjinner;
  • o falsk - jout tagong ta de tsjinner fan piraat kliïnten.

De tsjinner sil begjinne.
Jo kinne de tsjinner stopje troch it stopkommando yn te typen yn 'e konsole.

Server opset en konfiguraasje

Server ynstellings wurde opslein yn de server.properties konfiguraasje triem. It befettet de folgjende parameters:

  • generator-ynstellings - stelt it sjabloan yn foar it generearjen fan in superflat wrâld;
  • tastean-neder - bepaalt de mooglikheid om te ferhúzjen nei de legere wrâld. Standert is dizze ynstelling ynsteld op wier. As ynsteld op falsk, dan wurde alle spilers út de Nederlannen ferpleatst nei de normale;
  • nivo-namme - de namme fan 'e map mei kaartbestannen dy't sille wurde brûkt tidens it spultsje. De map leit yn deselde map wêr't de serverbestannen lizze. As der gjin sa'n map is, makket de tsjinner automatysk in nije wrâld en pleatst it yn in map mei deselde namme;
  • enable-query - as ynsteld op wier, aktivearret it GameSpy4-protokol om nei de tsjinner te harkjen;
  • tastean-flight - tastean flechten om 'e Minecraft wrâld. De standertwearde is falsk (flechten binne ferbean);
  • server-port - jout de poarte oan dy't brûkt wurde sil troch de spieltsjinner. De standert haven foar Minecraft is 25565. It is net oan te rieden om de wearde fan dizze parameter te feroarjen;
  • nivo-type - bepaalt it type fan 'e wrâld (DEFAUT / FLAT / LARGEBIOMES);
  • enable-rcon - lit tagong op ôfstân ta de tsjinner konsole. Standert is it útskeakele (falsk);
  • nivo-seed - ynfiergegevens foar de nivogenerator. Om willekeurige wrâlden oan te meitsjen, moat dit fjild leech wurde litten;
  • force-gamemode - stelt de standert spultsje modus foar spilers dy't ferbine mei de tsjinner;
  • server-ip - jout it IP-adres oan dat sil wurde brûkt troch spilers om te ferbinen mei de tsjinner;
  • max-build-height - jout de maksimale hichte fan in gebou op de tsjinner. De wearde moat in mearfâld fan 16 wêze (64, 96, 256, ensfh.);
  • spawn-npcs - lit (as ynsteld op wier) of ferbiedt (as ynsteld op falsk) it ferskinen fan NPC's yn doarpen;
  • white-list - ynskeakelje of útskeakelje it brûken fan in wite list fan spilers op de tsjinner. As ynsteld op wier, sil de behearder in wite list meitsje kinne troch der mei de spiler bynammen oan ta te foegjen. As de wearde falsk is, dan kin elke brûker dy't syn IP-adres en poarte kent tagong krije ta de tsjinner;
  • spawn-dieren - lit automatysk spawning fan freonlike mobs mooglik meitsje as ynsteld op wier);
  • snooper-ynskeakele - lit de tsjinner statistiken en gegevens nei ûntwikkelders stjoere;
  • hardcore - stelt Hardcore modus yn op 'e tsjinner;
  • texture-pac - tekstuertriem dat sil wurde brûkt as de spiler ferbynt mei de tsjinner. De wearde fan dizze parameter is de namme fan it zip-argyf mei tekstueren, dat wurdt opslein yn deselde map as de tsjinner;
  • online-modus - makket it mooglik om te kontrolearjen fan premium akkounts fan brûkers dy't ferbine mei de tsjinner. As dizze parameter is ynsteld op wier, allinne premium account holders kinne tagong ta de tsjinner. As accountferifikaasje is útskeakele (ynsteld op falsk), dan kinne alle brûkers tagong krije ta de tsjinner (ynklusyf bygelyks spilers dy't har bynamme fake hawwe), wat ekstra feiligensrisiko's skept. As it kontrolearjen is útskeakele, kinne jo Minecraft spielje oer in lokaal netwurk, sûnder tagong ta it ynternet;
  • pvp - tastean of ferbiedt spilers te fjochtsjen mei elkoar. As dizze parameter is wier, dan spilers kinne ferneatigje inoar. As ynsteld op falsk, spilers kinne net omgean direkte skea oan elkoar;
  • muoite - stelt it swierrichheidsnivo fan it spul yn. Kin wearden nimme fan 0 (maklikste) oant 3 (dreechste);
  • gamemode - jout oan hokker spultsje modus sil ynsteld wurde foar spilers dy't de tsjinner ynfiere. Kin nimme de folgjende wearden: 0 - Survival, 1-Creative, 2-Aventoer;
  • spiler-idle-timeout - tiid fan ynaktiviteit (yn minuten), wêrnei't spilers automatysk loskeppele wurde fan 'e tsjinner;
  • max-spilers - it maksimum tastien oantal spilers op de tsjinner (fan 0 oan 999);
  • spawn-monsters - lit (as ynsteld op wier) it spawn fan fijannige mobs;
  • generearje-struktueren - makket it mooglik (wier) / útskeakelje (false) de generaasje fan struktueren (skatten, festingen, doarpen);
  • view-ôfstân - past de straal fan bywurke brokken oan dy't nei de spiler stjoerd wurde; kin wearden nimme fan 3 oant 15.

Minecraft tsjinner logs wurde skreaun nei de server.log triem. It wurdt opslein yn deselde map as de tsjinner triemmen. It log wurdt hieltyd grutter yn grutte, nimt hieltyd mear skiifromte yn. Jo kinne it wurk fan it logmeganisme streamline mei de saneamde logrotaasje. Foar rotaasje wurdt in spesjale helpmiddel brûkt - logrotate. It beheint it oantal yngongen yn it log nei in bepaalde limyt.

Jo kinne logrotaasje konfigurearje sadat alle yngongen wurde wiske sa gau as it logbestân in bepaalde grutte berikt. Jo kinne ek in perioade ynstelle wêrnei't alle âlde yngongen wurde beskôge irrelevant en wiske.

Basis rotaasje ynstellings binne te finen yn de /etc/logrotate.conf triem; Derneist kinne jo yndividuele ynstellings meitsje foar elke applikaasje. Triemmen mei yndividuele ynstellings wurde opslein yn de map /etc/logrotate.d.

Litte wy in tekstbestân /etc/logrotate.d/craftbukkit oanmeitsje en de folgjende parameters dêryn ynfiere:

/home/craftbukkit/server.log { draaie 2 wyklikse kompresje missingok notifempty }

Litte wy nei har betsjuttingen yn mear detail sjen:

  • de rotate parameter spesifisearret it oantal rotaasjes foar it wiskjen fan de triem;
  • wykliks jout oan dat de rotaasje wykliks wurdt útfierd (jo kinne ek oare parameters ynstelle: moanliks - moanliks en deistich - deistich);
  • compress jout oan dat argivearre logs moatte wurde komprimearre (de omkearde opsje is nocompress);
  • missingok jout oan dat as der gjin logtriem is, jo moatte trochgean mei wurkjen en gjin flaterberjochten werjaan;
  • notifempty spesifisearret om it logbestân net te ferpleatsen as it leech is.

Jo kinne mear lêze oer ynstellings foar logrotaasje hjir.

Optimalisearring Tips

Litte wy fuortendaliks in reservearje meitsje dat dizze seksje tips sil jaan dy't allinich relatearre binne oan it optimalisearjen fan de spieltsjinner. Kwestje fan fine-tuning en optimalisearjen fan de tsjinner dêr't Minecraft is ynstallearre binne in apart ûnderwerp dat is bûten it berik fan dit artikel; ynteressearre lêzers kinne maklik fine de ynformaasje dy't se nedich hawwe op it ynternet.

Ien fan 'e meast foarkommende problemen dy't ûntsteane by it spyljen fan Minecraft is de saneamde lags - situaasjes as it programma net op 'e tiid reagearret op brûkersynput. Se kinne wurde feroarsake troch problemen op sawol de client kant en de server kant. Hjirûnder sille wy oanbefellings jaan dy't sille helpe om de kâns te ferminderjen dat problemen op 'e serverkant foarkomme.

Kontrolearje regelmjittich ûnthâldferbrûk fan 'e tsjinner en plugins

Unthâldferbrûk kin kontrolearre wurde mei spesjale bestjoerlike plugins - bygelyks, LagMeter.

Bliuw op 'e hichte foar plugin-updates

Yn 'e regel stribje ûntwikkelders fan nije plugins om de lading te ferminderjen mei elke nije ferzje.

Besykje net in protte plugins te brûken mei ferlykbere funksjonaliteit

Grutte plugins (bgl. Essentials, AdminCMD, CommandBook) befetsje faak de funksjonaliteit fan in protte lytsere plugins. Bygelyks, deselde Essential befettet de funksjes fan de iConomy, uHome, OpenInv, VanishNoPacket, Kit plugins. Lytse plugins, wêrfan de funksjonaliteit folslein bedekt is troch de funksjonaliteit fan ien grutte, kinne yn 'e measte gefallen fuortsmiten wurde om de tsjinner net te oerladen.

Beheine de kaart en lade it sels

As jo ​​de kaart net beheine, sil de lading op 'e tsjinner signifikant tanimme. Jo kinne de kaart beheine mei in plugin WorldBorder. Om dit te dwaan, moatte jo dizze plugin útfiere en it kommando / wb 200 útfiere, en dan de kaart tekenje mei it kommando / wb fill.

Tekening sil fansels in protte tiid nimme, mar it is better om it ien kear te dwaan, de tsjinner te sluten foar technysk wurk. As eltse spiler tekenet de kaart, de tsjinner sil wurkje stadich.

Ferfange swiere plugins mei flugger en minder boarne-yntinsive

Net alle plugins foar Minecraft kinne suksesfol wurde neamd: se befetsje faak in protte ûnnedige en net nedige funksjes, en soms ferbrûke se ek in protte ûnthâld. It is better om mislearre plugins te ferfangen troch alternative (d'r binne nochal in protte). Bygelyks, it LWC-plugin kin ferfongen wurde troch Wgfix + MachineGuard, en de DynMap-plugin mei Minecraft Overviewer.

Wiskje altyd de drop of ynstallearje in plugin om de drop automatysk te ferwiderjen

Drops yn spultsjes binne items dy't falle út as in mob stjert of guon blokken wurde ferneatige. It opslaan en ferwurkjen fan drops nimt in protte systeemboarnen yn.

Om de tsjinner flugger te wurkjen, is it oan te rieden om de drop te wiskjen. Dit wurdt it bêste dien mei spesjale plugins - bygelyks NoLagg of McClean.

Brûk gjin anty-cheats

Saneamde anty-cheats wurde faak ynstalleare op spielservers - programma's dy't besykjen blokkearje om it spultsje op ûnearlike manieren te beynfloedzjen.

D'r binne ek anty-cheats foar Minecraft. Elke anty-cheat is altyd in ekstra lading op 'e tsjinner. It is better om beskerming te ynstallearjen foar de launcher (dy't lykwols gjin absolute garânsje foar feiligens leveret en maklik brutsen is - mar dit is in ûnderwerp foar in aparte diskusje) en foar de kliïnt.

Yn stee fan in konklúzje

Alle ynstruksjes en oanbefellings blike folle effektiver te wêzen as se wurde stipe troch spesifike foarbylden. Op grûn fan de ynstallaasje-ynstruksjes hjirboppe hawwe wy ús eigen Minecraft-tsjinner makke en wat nijsgjirrige dingen op 'e kaart setten.

Hjir is wat wy krigen:

  • Bukkit-tsjinner - stabile oanrikkemandearre ferzje 1.6.4;
  • Statistiken plugin - om statistiken te sammeljen oer spilers;
  • WorldBorder-plugin - om de kaart te tekenjen en te beheinen;
  • WorldGuard-plugin (+WorldEdit as ôfhinklikens) - om guon gebieten te beskermjen.

Wy noegje elkenien út om derop te spyljen: om te ferbinen, foegje in nije tsjinner ta en fier it adres yn mncrft.slc.tl.

Wy sille bliid wêze as jo jo eigen ûnderfining diele mei it ynstallearjen, konfigurearjen en optimalisearjen fan MineCraft-tsjinners yn 'e kommentaren en fertel ús hokker mods en plugins jo ynteressearre binne en wêrom.

Cool nijs: Fan 1 augustus ôf is de ynstallaasjefergoeding foar tawijde tsjinners mei fêste konfiguraasje mei 50% fermindere. No de ienmalige opset betelling is mar 3000 roebel.

Lêzers dy't hjir gjin opmerkings kinne efterlitte wurde útnoege om ús te besykjen by blog.

Boarne: www.habr.com

Add a comment