Performans İnce Ayarları

Uyarı

These docs were written for SpongeAPI 7 and are likely out of date. If you feel like you can help update them, please submit a PR!

Sponge, yoğun yüklemeler için bile bir lag-free sunucunusu çalıştırmanıza yardımcı olmak için çeşitli performans artırma ve düzeltme seçeneklerini sağlar.

Not

Biz her sunucunun performansını arttırmaya çalışırken, performans kazançları sizin kurulumunuza bağlıdır. Lütfen, sizin Sponge sunucunuzu en iyi hale getirmek için yapılandırmış olduğunuzdan emin olmak için birkaç test yapınız!

Varlık Aktivasyon Menzili

This setting will alter the loading behavior of entities around players. Lowering the value will only load close entities, while raising it will also load entities that are far away from the player. Lower this to improve your server’s performance, especially with high entity and player counts. To disable activation range for a specific entity set its value to 0.

Tüyo

Aksiyon aralığını * mob * başına belirtmek mümkündür.  `` Auto-populate`` parametresini `` true`` olarak ayarlayabilirsiniz ve Sponge daha sonra tüm mevcut mobları aktivasyon aralığı listesine ekler, liste doldurulduktan sonra devre dışı bırakılması önerilir. Oyuna yeni moblar eklerseniz, prosedürü tekrar etmeniz yeterlidir ve bu yeni moblar da aşağıdaki listeye eklenecektir.

entity-activation-range {
    # If enabled, newly discovered entities will be added to this config with a default value.
    auto-populate=false
    # Default activation ranges used for all entities unless overridden.
    defaults {
        ambient=32
        aquatic=32
        creature=32
        misc=16
        monster=32
    }
}

Asenkron Aydınlatma

Bu ayar performansı artırmak için ışık kontrollerini ayrı bir bölümde sürdürür.

optimizations {
    # Runs lighting updates async.
    async-lighting {
        # If enabled, runs lighting updates async.
        enabled=true
        # The amount of threads to dedicate for async lighting updates. (Default: 2)
        num-threads=2
    }
}

Önbellek sahipleri

Bu ayar, dolaştırılabilir varlıkların sahiplerinin UUID’ini veri gözlemcisinden sabit dosyaları kaydetmek üzere önbelleğe almaktadır.

optimizations {
    # Caches tameable entities owners to avoid constant lookups against data watchers. If mods cause issue, disable.
    cache-tameable-owners=true
}

Damla Önceden Birleştirir

Bu ayar, daha sonra yumurtlama sonrası birleştirilen fazla varlıkları üretmekten kaçınmak için öğe damlalarını ön işleme koyar ve potansiyel olarak birleştirecektir.

optimizations {
    # If enabled, block item drops are pre-processed to avoid
    # having to spawn extra entities that will be merged post spawning.
    # Usually, Sponge is smart enough to determine when to attempt an item pre-merge
    # and when not to, however, in certain cases, some mods rely on items not being
    # pre-merged and actually spawned, in which case, the items will flow right through
    # without being merged.
    drops-pre-merge=true
}

Panda Redstone

Alternatif bir Redstone güncelleme algoritması, Redstone değiştiğinde daha az blok güncellemesine neden olacaktır.

optimizations {
    # If enabled, uses Panda4494's Redstone implementation which improves performance.
    # See https://bugs.mojang.com/browse/MC-11193 for more information.
    # Note: This optimization has a few issues which is explained in the bug report. We are not responsible for any issues this may cause.
    panda-redstone=false
}

Otomatik Kaydetme Aralığı Ayarı

Vanilla Minecraft, tüm parçalara her 900t tic (45 saniye) tasarruf etmeyi seçer. Bu aralığı yükseltmek veya azaltmak isterseniz, sunucuların “global.conf” dosyasının içinden değiştirin:

world {
    # The auto-save tick interval used when saving global player data.
    # Set to 0 to disable. (Default: 900) Note: 20 ticks is equivalent to 1 second.
    auto-player-save-interval=900

    # The auto-save tick interval used to save all loaded chunks in a world.
    # Set to 0 to disable. (Default: 900) Note: 20 ticks is equivalent to 1 second.
    auto-save-interval=900
}

Bu aralığı azaltmak, sunucunuzun CPU ve depolama alanındaki yükü artıracaktır, ancak sunucu kilitlenirse veya güç kesilirse oluşabilecek veri kaybını azaltacaktır. Bunun aksine, otomatik kaydetme aralığını artırmak için, donanım yükünü azaltır, yalnız sunucu hatası durumunda kaybedilebilecek oyun içi ilerleme miktarını kayıp edecektir.

Gerçek Zamanlı

Bunu etkinleştirmek, tıklama oranı düşük olduğunda oyuncularınızın deneyimini iyileştirecektir, performansı malesef artırmaz. Sınırlı sayıda varlık, karo birimi ve dünya saati, güncellemesi yapmak için işaretler yerine gerçek zaman kullanılmaktadır.

modules {
    # Use real (wall) time instead of ticks as much as possible
    realtime=false
}

Buna bir örnekte yavru hayvanlar. Normalde, yetişkin olmaları için 20 dakika gerekir. Ancak, eğer sunucuda gecikme varsa, her haycan daha az veri alacak ve büyümek için gereken süre uzayacaktır. Bu ayar, bazı mantıkları veri sayısı yerine geçen gerçek duvar-saati süresini kullanacak şekilde günceller. Aynı zamanda blok kırma için de geçerlidir, “Bloklar birden çok kırılma yaşamayacaktır”.

Deny chunk requests

Uyarı

This is an experimental setting for performance gain, we recommend to not enable it when you have mods on the server and to disable it if you experience any issues regarding the loading of tileentities.

world {
    # If enabled, any request for a chunk not currently loaded will be denied (exceptions apply for things like world gen and player movement).
    # Note: As this is an experimental setting for performance gain, if you encounter any issues then we recommend disabling it.
    deny-chunk-requests=false
}

When this option is enabled, mods requesting areas to be loaded to perform various tasks will be denied. Only players and specific world generation calls will be allowed to load new chunks.