کدهای راه اندازی سرور Minecraft و بهینه سازی رم (پرچم های آیکار)
مهم نیست که چقدر رم در سرورهای Minecraft دارید، اگر منطق پاکسازی حافظه جاوا (Garbage Collection) به درستی پیکربندی نشده باشد، سرور هر چند دقیقه یک بار یخ زدن ناگهانی (Spike Lag) را تجربه می کند. شما سرور خود را راه اندازی می کنیدstart.batیاbaslat.batبهینه سازی فایل این انجمادها را بطور اساسی حل می کند. مشهور جهان پرچم های آیکار شما می توانید کد اولیه درست را با پارامترها در این راهنما پیدا کنید.
مرحله 1: مضرات کد اولیه سازی نادرست
اکثر صاحبان سرور فقط سرور خود را اجرا می کنندjava -Xmx8G -Xms8G -jar server.jarبا دستور شروع می شود. این کد به طور کامل جاوا را آزاد می کند. جاوا حافظه را پر می کند و سپس کل سرور را برای یک ثانیه متوقف می کند تا آن را پاک کند (تاخیر GC). بازیکنان این را به عنوان "به عقب انداختن یا گیر کردن" احساس می کنند.
مرحله 2: بهینه سازی کدهای راه اندازی Aikar
سرور شما start.bat روی فایل کلیک راست کنید، آن را ویرایش کنید، همه کدهای موجود در آن را حذف کنید و کدهای به روز شده زیر را با توجه به مقدار RAM که به سرور خود اختصاص داده اید، قرار دهید:
برای سرورهایی که 8 گیگابایت رم را اختصاص می دهند:
@echo off java -Xmx8G -Xms8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8m -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapProfilingPercent=45 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar server.jar nogui pause
توجه: اگر قصد دارید 12 گیگابایت رم به سرور خود بدهید، کد را در ابتدا قرار دهید-Xmx8G -Xms8Gمناطق-Xmx12G -Xms12Gباید آن را به تغییر دهید. همچنینserver.jarبخشی را که می گوید با نام فایل jar اصلی خود (مثلاً: paper.jar) همگام کنید.
مرحله 3: مزایای کد
- فعال سازی G1GC: پایدارترین ماژول جمع آوری زباله جاوا و سازگار با Minecraft را فعال می کند.
- پاک کردن حافظه فوری: وقتی سرور بیکار است، رم را به قطعات کوچک در پس زمینه تمیز می کند و از یخ زدن سرور جلوگیری می کند.
- اولویت پردازنده: این اجازه می دهد تا جاوا از هسته های پردازنده به طور متعادل استفاده کند.
این مقاله به طور ویژه برای PvPServer تهیه شده است.