我开了一个Sponge神奇宝贝服务器
服务器人数40人 50人的时候就会跑出这个
复制代码严重的化每10分钟大概会出现个5次
这是我的timings https://timings.aikar.co/?id=1e7 ... b46b6f0c619#timings
服务器配备
CPU: 2x Intel Xeon
RAM: ECC RAM 32GB
JAVA Flag :
复制代码这是我的sponge配置
复制代码我已经询问过很多人,始终无法解决,希望有高手能指点
服务器人数40人 50人的时候就会跑出这个
- Can't keep up! Did the system time change, or is the server overloaded? Running 17865ms behind, skipping 357 tick(s)
这是我的timings https://timings.aikar.co/?id=1e7 ... b46b6f0c619#timings
服务器配备
CPU: 2x Intel Xeon
RAM: ECC RAM 32GB
JAVA Flag :
- -Xmx30G -Xms25G -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:MaxGCPauseMillis=100 -XX:+DisableExplicitGC -XX:TargetSurvivorRatio=90 -XX:G1MaxNewSizePercent=60 -XX:G1NewSizePercent=35 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=50 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -jar
- # 1.0
- #
- # # If you need help with the configuration or have any questions related to Sponge,
- # # join us at the IRC or drop by our forums and leave a post.
- #
- # # IRC: #sponge @ irc.esper.net ( https://webchat.esper.net/?channel=sponge )
- # # Forums: https://forums.spongepowered.org/
- #
- sponge {
- # Stopgap measures for dealing with broken mods
- broken-mods {
- # A list of mod ids that have broken network handlers (they interact with the game from a Netty handler thread).
- # All network handlers from a forcibly scheduled to run on the main thread.
- # Note that this setting should be considered a last resort, and should only be used as a stopgap measure while waiting for a mod to properly fix the issue.
- broken-network-handler-mods=null
- }
- bungeecord {
- # If 'true', allows BungeeCord to forward IP address, UUID, and Game Profile to this server.
- ip-forwarding=false
- }
- cause-tracker {
- # If set to 'true', when a mod or plugin attempts to spawn an entity
- # off the main server thread, Sponge will automatically
- # capture said entity to spawn it properly on the main
- # server thread. The catch to this is that some mods are
- # not considering the consequences of spawning an entity
- # off the server thread, and are unaware of potential race
- # conditions they may cause. If this is set to false,
- # Sponge will politely ignore the entity being spawned,
- # and emit a warning about said spawn anyways.
- capture-async-spawning-entities=true
- # If 'true', more thorough debugging for PhaseStates
- # such that a StackTrace is created every time a PhaseState
- # switches, allowing for more fine grained troubleshooting
- # in the cases of runaway phase states. Note that this is
- # not extremely performant and may have some associated costs
- # with generating the stack traces constantly.
- generate-stacktrace-per-phase=false
- # The maximum number of times to recursively process transactions in a single phase.
- # Some mods may interact badly with Sponge's block capturing system, causing Sponge to
- # end up capturing block transactions every time it tries to process an existing batch.
- # Due to the recursive nature of the depth-first processing that Sponge uses to handle block transactions,
- # this can result in a stack overflow, which causes us to lose all infomration about the original cause of the issue.
- # To prevent a stack overflow, Sponge tracks the current processing depth, and aborts processing when it exceeds
- # this threshold.
- # The default value should almost always work properly - it's unlikely you'll ever have to change it.
- max-block-processing-depth=100
- # If verbose is not enabled, this restricts the amount of
- # runaway phase state printouts, usually happens on a server
- # where a PhaseState is not completing. Although rare, it should
- # never happen, but when it does, sometimes it can continuously print
- # more and more. This attempts to placate that while a fix can be worked on
- # to resolve the runaway. If verbose is enabled, they will always print.
- maximum-printed-runaway-counts=3
- # If 'true', the phase tracker will print out when there are too many phases
- # being entered, usually considered as an issue of phase re-entrance and
- # indicates an unexpected issue of tracking phases not to complete.
- # If this is not reported yet, please report to Sponge. If it has been
- # reported, you may disable this.
- verbose=true
- # If 'true', the phase tracker will dump extra information about the current phases
- # when certain non-PhaseTracker related exceptions occur. This is usually not necessary, as the information
- # in the exception itself can normally be used to determine the cause of the issue
- verbose-errors=false
- }
- commands {
- # Command aliases will resolve conflicts when multiple plugins request a specific command,
- # Correct syntax is <unqualified command>=<plugin name> e.g. "sethome=homeplugin"
- aliases {
- help=command-utils
- info=nucleus
- }
- # Patches the specified commands to respect the world of the sender instead of applying the
- # changes on the all worlds.
- multi-world-patches {
- defaultgamemode=true
- difficulty=true
- gamerule=true
- seed=true
- setdefaultspawnpoint=true
- time=true
- toggledownfall=true
- weather=true
- worldborder=true
- }
- }
- debug {
- # Detect and prevent parts of PlayerChunkMap being called off the main thread.
- # This may decrease sever preformance, so you should only enable it when debugging a specific issue.
- concurrent-chunk-map-checks=false
- # Detect and prevent certain attempts to use entities concurrently.
- # WARNING: May drastically decrease server performance. Only set this to 'true' to debug a pre-existing issue.
- concurrent-entity-checks=false
- # Dump chunks in the event of a deadlock
- dump-chunks-on-deadlock=false
- # Dump the heap in the event of a deadlock
- dump-heap-on-deadlock=false
- # Dump the server thread on deadlock warning
- dump-threads-on-warn=false
- # If 'true', Java's thread contention monitoring for thread dumps is enabled.
- thread-contention-monitoring=false
- }
- entity {
- # Number of colliding entities in one spot before logging a warning. Set to 0 to disable
- collision-warn-size=200
- # Number of entities in one dimension before logging a warning. Set to 0 to disable
- count-warn-size=0
- # Number of ticks before a painting is respawned on clients when their art is changed
- entity-painting-respawn-delay=2
- # Number of ticks before the fake player entry of a human is removed from the tab list (range of 0 to 100 ticks).
- human-player-list-remove-delay=10
- # Controls the time in ticks for when an item despawns.
- item-despawn-rate=1200
- # The upper bounded range where living entities farther from a player will likely despawn
- living-hard-despawn-range=64
- # The amount of seconds before a living entity between the soft and hard despawn ranges from a player to be considered for despawning
- living-soft-despawn-minimum-life=30
- # The lower bounded range where living entities near a player may potentially despawn
- living-soft-despawn-range=32
- # Maximum size of an entity's bounding box before removing it. Set to 0 to disable
- max-bounding-box-size=1000
- # Square of the maximum speed of an entity before removing it. Set to 0 to disable
- max-speed=100
- }
- entity-activation-range {
- # If 'true', 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=8
- aquatic=8
- creature=8
- misc=8
- monster=8
- }
- # Per-mod overrides. Refer to the minecraft default mod for example.
- mods {
- minecraft {
- defaults {
- creature=8
- misc=8
- monster=8
- }
- # If 'false', entity activation rules for this mod will be ignored and always tick.
- enabled=true
- entities {
- "armor_stand"=8
- arrow=8
- blaze=8
- boat=8
- "cave_spider"=8
- "chest_minecart"=8
- chicken=8
- cow=8
- "elder_guardian"=8
- "eye_of_ender_signal"=8
- fishinghook=8
- "hopper_minecart"=8
- horse=8
- item=8
- "item_frame"=8
- llama=8
- minecart=8
- ocelot=8
- painting=8
- parrot=8
- pig=8
- "polar_bear"=8
- shulker=8
- silverfish=8
- snowman=8
- spider=8
- villager=8
- "villager_golem"=8
- witch=8
- wolf=8
- "xp_orb"=8
- "zombie_villager"=8
- }
- }
- pixelmon {
- defaults {
- creature=8
- misc=8
- }
- # If 'false', entity activation rules for this mod will be ignored and always tick.
- enabled=true
- entities {
- chattingnpc=8
- entitychairmount=8
- hook=8
- nursejoy=8
- pixelmon=10
- pixelmonpainting=8
- relearner=8
- shopkeeper=8
- statue=8
- trader=8
- trainer=8
- tutor=8
- }
- }
- }
- }
- entity-collisions {
- # If 'true', newly discovered entities/blocks will be added to this config with a default value.
- auto-populate=false
- # Default maximum collisions used for all entities/blocks unless overridden.
- defaults {
- blocks=8
- entities=8
- }
- # Maximum amount of entities any given entity or block can collide with. This improves
- # performance when there are more than 8 entities on top of each other such as a 1x1
- # spawn pen. Set to 0 to disable.
- max-entities-within-aabb=8
- # Per-mod overrides. Refer to the minecraft default mod for example.
- mods {
- botania {
- blocks {}
- # Default maximum collisions used for all entities/blocks unless overridden.
- defaults {}
- # If 'false', entity collision rules for this mod will be ignored.
- enabled=true
- entities {
- botaniacorporeaspark=-1
- botaniaspark=-1
- }
- }
- minecraft {
- blocks {
- "detector_rail"=1
- "heavy_weighted_pressure_plate"=150
- "light_weighted_pressure_plate"=15
- "mob_spawner"=-1
- "stone_pressure_plate"=1
- "wooden_button"=1
- "wooden_pressure_plate"=1
- }
- # Default maximum collisions used for all entities/blocks unless overridden.
- defaults {}
- # If 'false', entity collision rules for this mod will be ignored.
- enabled=true
- entities {
- thrownpotion=-1
- }
- }
- }
- }
- exploits {
- # Enables filtering invalid entities when a chunk is being saved
- # such that the entity that does not "belong" in the saving
- # chunk will not be saved, and forced an update to the world's
- # tracked entity lists for chunks.
- # See https://github.com/PaperMC/Paper/blob/fd1bd5223a461b6d98280bb8f2d67280a30dd24a/Spigot-Server-Patches/0311-Prevent-Saving-Bad-entities-to-chunks.patch
- filter-invalid-entities-on-chunk-save=true
- # Enables focing a chunk load when an entity position
- # is set. Usually due to teleportation, vehicle movement
- # etc. can a position lead an entity to no longer exist
- # within it's currently marked and tracked chunk. This will
- # enable that chunk for the position is loaded. Part of several
- # exploits.See https://github.com/PaperMC/Paper/blob/fd1bd5223a461b6d98280bb8f2d67280a30dd24a/Spigot-Server-Patches/0335-Ensure-chunks-are-always-loaded-on-hard-position-set.patch
- load-chunk-on-position-set=true
- # Enables forcing chunks to save when an entity is added
- # or removed from said chunk. This is a partial fix for
- # some exploits using vehicles.See https://github.com/PaperMC/Paper/blob/fd1bd5223a461b6d98280bb8f2d67280a30dd24a/Spigot-Server-Patches/0306-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch
- mark-chunks-as-dirty-on-entity-list-modification=true
- # Prevents an exploit in which the client sends a packet with the
- # itemstack name exceeding the string limit.
- prevent-creative-itemstack-name-exploit=true
- # Enables forcing updates to the player's location on vehicle movement.
- # This is partially required to update the server's understanding of
- # where the player exists, and allows chunk loading issues to be avoided
- # with laggy connections and/or hack clients.See https://github.com/PaperMC/Paper/blob/fd1bd5223a461b6d98280bb8f2d67280a30dd24a/Spigot-Server-Patches/0378-Sync-Player-Position-to-Vehicles.patch
- sync-player-positions-for-vehicle-movement=true
- # Enables forcing a chunk-tracking refresh on entity movement.
- # This enables a guarantee that the entity is tracked in the
- # proper chunk when moving.https://github.com/PaperMC/Paper/blob/fd1bd5223a461b6d98280bb8f2d67280a30dd24a/Spigot-Server-Patches/0315-Always-process-chunk-registration-after-moving.patch
- update-tracked-chunk-on-entity-move=true
- }
- general {
- # The directory for Sponge plugin configurations, relative to the
- # execution root or specified as an absolute path.
- # Note that the default: "${CANONICAL_GAME_DIR}/config"
- # is going to use the "plugins" directory in the root game directory.
- # If you wish for plugin configs to reside within a child of the configuration
- # directory, change the value to, for example, "${CANONICAL_CONFIG_DIR}/sponge/plugins".
- # Note: It is not recommended to set this to "${CANONICAL_CONFIG_DIR}/sponge", as there is
- # a possibility that plugin configurations can conflict the Sponge core configurations.
- #
- config-dir="${CANONICAL_GAME_DIR}/config"
- # Disable warning messages to server admins
- disable-warnings=false
- # If 'true', sleeping between chunk saves will be enabled, beware of memory issues.
- file-io-thread-sleep=false
- # Additional directory to search for plugins, relative to the
- # execution root or specified as an absolute path.
- # Note that the default: "${CANONICAL_MODS_DIR}/plugins"
- # is going to search for a plugins folder in the mods directory.
- # If you wish for the plugins folder to reside in the root game
- # directory, change the value to "${CANONICAL_GAME_DIR}/plugins".
- plugins-dir="${CANONICAL_MODS_DIR}/plugins"
- }
- ip-sets {}
- logging {
- # Log when blocks are broken
- block-break=false
- # Log when blocks are modified
- block-modify=false
- # Log when blocks are placed
- block-place=false
- # Log when blocks are populated in a chunk
- block-populate=false
- # Log when blocks are placed by players and tracked
- block-tracking=false
- # Log when chunks are queued to be unloaded by the chunk garbage collector.
- chunk-gc-queue-unload=false
- # Log when chunks are loaded
- chunk-load=false
- # Log when chunks are unloaded
- chunk-unload=false
- # Whether to log entity collision/count checks
- entity-collision-checks=false
- # Log when living entities are destroyed
- entity-death=false
- # Log when living entities are despawned
- entity-despawn=false
- # Log when living entities are spawned
- entity-spawn=false
- # Whether to log entity removals due to speed
- entity-speed-removal=false
- # Log when server receives exploited packet with itemstack name exceeding string limit.
- exploit-itemstack-name-overflow=false
- # Log when player attempts to respawn invisible to surrounding players.
- exploit-respawn-invisibility=false
- # Log when server receives exploited packet to update a sign containing commands from player with no permission.
- exploit-sign-command-updates=false
- # Add stack traces to dev logging
- log-stacktraces=false
- # Log when a world auto-saves its chunk data. Note: This may be spammy depending on the auto-save-interval configured for world.
- world-auto-save=false
- }
- metrics {
- # Determines whether plugins that are newly added are allowed to perform
- # data/metric collection by default. Plugins detected by Sponge will be added to the "plugin-permissions" section with this value.
- #
- # Set to true to enable metric gathering by default, false otherwise.
- default-permission=false
- # Provides (or revokes) permission for metric gathering on a per plugin basis.
- # Entries should be in the format "plugin-id=<true|false>".
- #
- # Deleting an entry from this list will reset it to the default specified in
- # "default-permission"
- plugin-permissions {
- agp=false
- blockcommand=false
- byte-items=false
- carrotshop=false
- chatshow=false
- command-utils=false
- commandblockingmanager=false
- commanditems=false
- customspec=false
- customtexturespec=false
- daycare=false
- economylite=false
- entity-particles=false
- fastasyncworldedit=false
- gogyms=false
- griefprevention=false
- gts=false
- "gwm_crates"=false
- "gwm_library"=false
- haxpokebank=false
- holograms=false
- impactor=false
- inspector=false
- kt-skript=false
- luckperms=false
- mmcprefix=false
- mmcrestrict=false
- modbanner=false
- multicurrency=false
- nucleus=false
- nucleus-gluon=false
- pixelautomessages=false
- pixelgenocide=false
- pixelmoneconomybridge=false
- pixelmoney=false
- placeholderapi=false
- pokebuffs=false
- pokecatchlog=false
- poketextures=false
- safetrade=false
- serverlistplus=false
- signeditor=false
- spark=false
- statues=false
- statusprotocol=false
- sts=false
- tabblocker=false
- tabmanager=false
- teslacore=false
- teslacrate=false
- teslalibs=false
- virtualchest=false
- virtualtool=false
- wondertrade=false
- worldedit=false
- xppokedex=false
- zpixelmonplaceholders=false
- }
- }
- modules {
- # Enables experimental fixes for broken mods
- broken-mod=false
- bungeecord=false
- entity-activation-range=true
- entity-collisions=true
- # Controls whether any exploit patches are applied.
- # If there are issues with any specific exploits, please
- # test in the exploit category first, before disabling all
- # exploits with this toggle.
- exploits=true
- # Allows configuring Vanilla movement and speed checks
- movement-checks=false
- optimizations=true
- # Use real (wall) time instead of ticks as much as possible
- realtime=true
- # Controls block range and tick rate of tileentities.
- # Use with caution as this can break intended functionality.
- tileentity-activation=true
- timings=true
- tracking=true
- }
- movement-checks {
- # Controls whether the 'player/entity moved wrongly!' check will be enforced
- moved-wrongly=false
- # Controls whether the 'player moved too quickly!' check will be enforced
- player-moved-too-quickly=false
- # Controls whether the 'vehicle of player moved too quickly!' check will be enforced
- player-vehicle-moved-too-quickly=false
- }
- optimizations {
- # Runs lighting updates asynchronously.
- async-lighting {
- # If 'true', lighting updates are run asynchronously.
- enabled=true
- # The amount of threads to dedicate for asynchronous lighting updates. (Default: 2)
- num-threads=2
- }
- # Caches tameable entities owners to avoid constant lookups against data watchers. If mods
- # cause issues, disable this.
- cache-tameable-owners=true
- # If 'true', 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=false
- # If 'true', provides a fix for possible leaks through
- # Minecraft's enchantment helper code that can leak
- # entity and world references without much interaction
- # Forge native (so when running SpongeForge implementation)
- # has a similar patch, but Sponge's patch works a little harder
- # at it, but Vanilla (SpongeVanilla implementation) does NOT
- # have any of the patch, leading to the recommendation that this
- # patch is enabled "for sure" when using SpongeVanilla implementation.
- # See https://bugs.mojang.com/browse/MC-128547 for more information.
- #
- enchantment-helper-leak-fix=true
- # If 'true', allows for Sponge to make better assumptinos on single threaded
- # operations with relation to various checks for server threaded operations.
- # This is default to true due to Sponge being able to precisely inject when
- # the server thread is available. This should make an already fast operation
- # much faster for better thread checks to ensure stability of sponge's systems.
- faster-thread-checks=true
- # If 'true', re-writes the incredibly inefficient Vanilla Map code.
- # This yields enormous performance enhancements when using many maps, but has a tiny chance of breaking mods that invasively modify Vanilla.It is strongly reccomended to keep this on, unless explicitly advised otherwise by a Sponge developer
- map-optimization=true
- # If 'true', 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 are explained in the bug report.
- panda-redstone=true
- # Handles structures that are saved to disk. Certain structures can take up large amounts
- # of disk space for very large maps and the data for these structures is only needed while the
- # world around them is generating. Disabling saving of these structures can save disk space and
- # time during saves if your world is already fully generated.
- # Warning: disabling structure saving will break the vanilla locate command.
- structure-saving {
- # If 'true', newly discovered structures will be added to this config with a default value.
- auto-populate=false
- enabled=false
- # Per-mod overrides. Refer to the minecraft default mod for example.
- mods {
- minecraft {
- # If 'false', this mod will never save its structures.
- enabled=true
- structures {
- mineshaft=false
- }
- }
- }
- }
- }
- player-block-tracker {
- # Block IDs that will be blacklisted for player block placement tracking.
- block-blacklist=null
- # If 'true', adds player tracking support for block positions.
- # Note: This should only be disabled if you do not care who caused a block to change.
- enabled=true
- }
- # Used to control spawn limits around players.
- # Note: The radius uses the lower value of mob spawn range and server's view distance.
- spawner {
- # The number of ambients the spawner can potentially spawn around a player.
- spawn-limit-ambient=15
- # The number of animals the spawner can potentially spawn around a player.
- spawn-limit-animal=15
- # The number of aquatics the spawner can potentially spawn around a player.
- spawn-limit-aquatic=5
- # The number of monsters the spawner can potentially spawn around a player.
- spawn-limit-monster=70
- # The ambient spawning tick rate. Default: 400
- tick-rate-ambient=400
- # The animal spawning tick rate. Default: 400
- tick-rate-animal=400
- # The aquatic spawning tick rate. Default: 400
- tick-rate-aquatic=400
- # The monster spawning tick rate. Default: 1
- tick-rate-monster=1
- }
- # Configuration options related to the Sql service, including connection aliases etc
- sql {
- # Aliases for SQL connections, in the format jdbc:protocol://[username[:password]@]host/database
- aliases {}
- }
- # Blocks to blacklist for safe teleportation.
- teleport-helper {
- # If 'true', this blacklist will always be respected, otherwise, plugins can choose whether
- # or not to respect it.
- force-blacklist=false
- # Block IDs that are listed here will not be selected by Sponge's safe teleport routine as
- # a safe block for players to warp into.
- # You should only list blocks here that are incorrectly selected, solid blocks that prevent
- # movement are automatically excluded.
- unsafe-body-block-ids=null
- # Block IDs that are listed here will not be selected by Sponge's safe
- # teleport routine as a safe floor block.
- unsafe-floor-block-ids=null
- }
- tileentity-activation {
- # If 'true', newly discovered tileentities will be added to this config with default settings.
- auto-populate=true
- # Default activation block range used for all tileentities unless overridden.
- default-block-range=32
- # Default tick rate used for all tileentities unless overridden.
- default-tick-rate=1
- # Per-mod overrides. Refer to the minecraft default mod for example.
- mods {
- ironchest {
- block-range {
- "ironchest.crystal"=8
- "ironchest.diamond"=8
- "ironchest.dirtchest9000"=8
- "ironchest.gold"=8
- "ironchest.iron"=8
- "ironchest.obsidian"=8
- "ironchest.silver"=8
- "ironshulkerbox.crystal"=8
- "ironshulkerbox.diamond"=8
- "ironshulkerbox.gold"=8
- "ironshulkerbox.iron"=8
- "ironshulkerbox.obsidian"=8
- }
- # If 'false', tileentity activation rules for this mod will be ignored and always tick.
- enabled=true
- tick-rate {
- "ironchest.crystal"=1
- "ironchest.diamond"=1
- "ironchest.dirtchest9000"=1
- "ironchest.gold"=1
- "ironchest.iron"=1
- "ironchest.obsidian"=1
- "ironchest.silver"=1
- "ironshulkerbox.crystal"=1
- "ironshulkerbox.diamond"=1
- "ironshulkerbox.gold"=1
- "ironshulkerbox.iron"=1
- "ironshulkerbox.obsidian"=1
- }
- }
- minecraft {
- block-range {
- beacon=16
- "brewing_stand"=8
- chest=8
- "daylight_detector"=8
- "enchanting_table"=8
- "end_gateway"=8
- "ender_chest"=8
- furnace=8
- hopper=8
- "mob_spawner"=8
- piston=8
- "shulker_box"=8
- skull=8
- }
- # If 'false', tileentity activation rules for this mod will be ignored and always tick.
- enabled=true
- tick-rate {
- beacon=1
- "brewing_stand"=1
- chest=1
- "daylight_detector"=1
- "enchanting_table"=1
- "end_gateway"=1
- "ender_chest"=1
- furnace=1
- hopper=1
- "mob_spawner"=1
- piston=1
- "shulker_box"=1
- skull=1
- }
- }
- morefurnaces {
- block-range {
- "cubex2 diamond furnace"=20
- "cubex2 gold furnace"=20
- "cubex2 iron furnace"=20
- "cubex2 netherrack furnace"=20
- "cubex2 obsidian furnace"=20
- }
- # If 'false', tileentity activation rules for this mod will be ignored and always tick.
- enabled=true
- tick-rate {
- "cubex2 diamond furnace"=1
- "cubex2 gold furnace"=1
- "cubex2 iron furnace"=1
- "cubex2 netherrack furnace"=1
- "cubex2 obsidian furnace"=1
- }
- }
- pixelmon {
- block-range {
- "pixelmon:bell"=8
- "pixelmon:berry_tree"=8
- "pixelmon:cloning_machine"=8
- "pixelmon:evolution_rock"=8
- "pixelmon:fossil_cleaner"=8
- "pixelmon:fossil_machine"=8
- "pixelmon:gracidea"=8
- "pixelmon:healer"=8
- "pixelmon:mechanical_anvil"=8
- "pixelmon:pixelmon_spawner"=8
- "pixelmon:plate_holder"=8
- "pixelmon:ranch_block"=8
- "pixelmon:timespace_shrine"=8
- "pixelmon:trade_machine"=8
- }
- # If 'false', tileentity activation rules for this mod will be ignored and always tick.
- enabled=true
- tick-rate {
- "pixelmon:bell"=1
- "pixelmon:berry_tree"=1
- "pixelmon:cloning_machine"=1
- "pixelmon:evolution_rock"=1
- "pixelmon:fossil_cleaner"=1
- "pixelmon:fossil_machine"=1
- "pixelmon:gracidea"=1
- "pixelmon:healer"=1
- "pixelmon:mechanical_anvil"=1
- "pixelmon:pixelmon_spawner"=1
- "pixelmon:plate_holder"=1
- "pixelmon:ranch_block"=1
- "pixelmon:timespace_shrine"=1
- "pixelmon:trade_machine"=1
- }
- }
- sereneseasons {
- block-range {
- "season_sensor"=8
- }
- # If 'false', tileentity activation rules for this mod will be ignored and always tick.
- enabled=true
- tick-rate {
- "season_sensor"=1
- }
- }
- }
- }
- timings {
- enabled=true
- hidden-config-entries=[
- "sponge.sql"
- ]
- history-interval=2000
- history-length=18000
- server-name-privacy=false
- verbose=true
- }
- world {
- # The auto-save tick interval used when saving global player data. (Default: 900)
- # Note: 20 ticks is equivalent to 1 second. Set to 0 to disable.
- 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
- # The number of newly loaded chunks before triggering a forced cleanup.
- # Note: When triggered, the loaded chunk threshold will reset and start incrementing.
- # Disabled by default.
- chunk-gc-load-threshold=3000
- # The tick interval used to cleanup all inactive chunks that have leaked in a world.
- # Set to 0 to disable which restores vanilla handling. (Default: 600)
- chunk-gc-tick-interval=900
- # The number of seconds to delay a chunk unload once marked inactive. (Default: 15)
- # Note: This gets reset if the chunk becomes active again.
- chunk-unload-delay=100
- # If 'true', any request for a chunk not currently loaded will be denied (exceptions apply
- # for things like world gen and player movement).
- # Warning: As this is an experimental setting for performance gain, if you encounter any issues
- # then we recommend disabling it.
- deny-chunk-requests=false
- # Lava behaves like vanilla water when source block is removed
- flowing-lava-decay=false
- # The amount of GameProfile requests to make against Mojang's session server. (Default: 1)
- # Note: Mojang accepts a maximum of 600 requests every 10 minutes from a single IP address.
- # If you are running multiple servers behind the same IP, it is recommended to raise the 'gameprofile-task-interval' setting
- # in order to compensate for the amount requests being sent.
- # Finally, if set to 0 or less, the default batch size will be used.
- # For more information visit http://wiki.vg/Mojang_API
- gameprofile-lookup-batch-size=1
- # The interval, in seconds, used by the GameProfileQueryTask to process queued GameProfile requests. (Default: 4)
- # Note: This setting should be raised if you experience the following error:
- # "The client has sent too many requests within a certain amount of time".
- # Finally, if set to 0 or less, the default interval will be used.
- gameprofile-lookup-task-interval=4
- # If 'true', this world will generate its spawn the moment its loaded.
- generate-spawn-on-load=false
- # Vanilla water source behavior - is infinite
- infinite-water-source=false
- # The list of uuid's that should never perform a lookup against Mojang's session server.
- # Note: If you are using SpongeForge, make sure to enter any mod fake player's UUID to this list.
- invalid-lookup-uuids=[
- "00000000-0000-0000-0000-000000000000",
- "0d0c4ca0-4ff1-11e4-916c-0800200c9a66",
- "41c82c87-7afb-4024-ba57-13d2c99cae77"
- ]
- # The defined merge radius for Item entities such that when two items are
- # within the defined radius of each other, they will attempt to merge. Usually,
- # the default radius is set to 0.5 in Vanilla, however, for performance reasons
- # 2.5 is generally acceptable.
- # Note: Increasing the radius higher will likely cause performance degradation
- # with larger amount of items as they attempt to merge and search nearby
- # areas for more items. Setting to a negative value is not supported!
- item-merge-radius=2.5
- # If 'true', this worlds spawn will remain loaded with no players.
- keep-spawn-loaded=true
- # If 'true', natural leaf decay is allowed.
- leaf-decay=true
- # If 'true', this world will load on startup.
- load-on-startup=true
- # The maximum number of queued unloaded chunks that will be unloaded in a single tick.
- # Note: With the chunk gc enabled, this setting only applies to the ticks
- # where the gc runs (controlled by 'chunk-gc-tick-interval')
- # Note: If the maximum unloads is too low, too many chunks may remain
- # loaded on the world and increases the chance for a drop in tps. (Default: 100)
- max-chunk-unloads-per-tick=100
- # Specifies the radius (in chunks) of where creatures will spawn.
- # This value is capped to the current view distance setting in server.properties
- mob-spawn-range=4
- # A list of all detected portal agents used in this world.
- # In order to override, change the target world name to any other valid world.
- # Note: If world is not found, it will fallback to default.
- portal-agents {
- "minecraft:default_the_end"=DIM1
- "minecraft:default_the_nether"=DIM-1
- }
- # If 'true', this world will allow PVP combat.
- pvp-enabled=true
- # Override world distance per world/dimension
- # The value must be greater than or equal to 3 and less than or equal to 32
- # The server-wide view distance will be used when the value is -1.
- view-distance=-1
- # If 'true', natural formation of ice and snow in supported biomes will be allowed.
- weather-ice-and-snow=true
- # If 'true', thunderstorms will be initiated in supported biomes.
- weather-thunder=true
- # If 'true', this world will be registered.
- world-enabled=true
- }
- }
我以前也遇到了这个问题,这个问题似乎真的是无解的,因为即使sponge端有一定的多线程优化,还是无法充分利用整个服务器的性能
因为服务端会有一个主线程负责实体、红石、方块等重要事件的计算,而从安全的角度考虑,难以对此进行多核优化,甚至有可能优化之后还不如单线程。因此sponge端对单核性能的要求仍然是非常非常高的。
我遇到这个问题的时候提高了服务器的配置,对服务端文件作出了一定的优化,再有就是更新forge和sponge内核的版本,都有了一定的效果。
不过跑图仍然是一个非常卡的行为,我现在还在寻找解决的手段。
另外,比较好奇楼主的CPU具体型号是什么?
因为服务端会有一个主线程负责实体、红石、方块等重要事件的计算,而从安全的角度考虑,难以对此进行多核优化,甚至有可能优化之后还不如单线程。因此sponge端对单核性能的要求仍然是非常非常高的。
我遇到这个问题的时候提高了服务器的配置,对服务端文件作出了一定的优化,再有就是更新forge和sponge内核的版本,都有了一定的效果。
不过跑图仍然是一个非常卡的行为,我现在还在寻找解决的手段。
另外,比较好奇楼主的CPU具体型号是什么?
本帖最后由 dragon0126 于 2018-10-23 23:14 编辑
服务商只有公布规格没提供型号给我 ,规格是2x Intel Xeon 型号我就不知道了
服务商只有公布规格没提供型号给我 ,规格是2x Intel Xeon 型号我就不知道了
dragon0126 发表于 2018-10-23 23:13
服务商只有公布规格没提供型号给我 ,规格是2x Intel Xeon 型号我就不知道了
服务商只提供了2x Intel xeon这点信息, 应该并不是什么好机器。我看了看timings报告,里面有一行“cpu:24”,那就是说这是24个线程,也就是十二个核心。再考虑到是两颗CPU,而且服务商并不希望你知道具体型号,那很可能就是x5600系列CPU,或者是E5-2620/E5-2620V2。
x5600系列CPU已经是接近十年前的产品,性能已经非常落后,尤其是Minecraft服务端最需要的单线程性能严重不足。拿这种处理器来开服,肯定是无法承载太多玩家的。如果再有玩家跑图,会导致卡顿更加严重。E5V1和V2的单核性能也是比较低下的,虽然会比x5600稍高一点,但是本身主频也低,无济于事。这种服务器哪怕核再多内存再大,也是diao用没有的
这种情况,有可能是被无良服务商坑了,因为这种服务器是相当廉价的,而性能也是和价格一样低……
因为我没了解过神奇宝贝服务器,所以也没法从服务端配置文件的角度提多少建议了。
换服务商是个可行的方案,但是价格也是个问题。我自己做过很多测试,同样的服务端在老机器上和在新机器上的表现大不相同,CPU占用率甚至可能相差几倍之多。这方面我也没彻底研究明白,就不说太多了,怕误导别人。
另外提醒一下,自己回复自己的帖子会有手动置顶的嫌疑,被举报的话可能会被禁言的。
冻土 发表于 2018-10-23 23:37
服务商只提供了2x Intel xeon这点信息, 应该并不是什么好机器。我看了看timings报告,里面有一行“cpu:2 ...
我改用别的服务器了, 虽然没有那么频繁, TPS却降低了, 我找了几个玩家来帮我测试, 这是我的timings : https://timings.aikar.co/?id=f49a4db4884d4ad0932bf33e5e5cbd8e
服务器规格: CPU: Intel Xeon CPU E3-1245 v5 3.50GHz
RAM: 30GB
系统: windows server 2016
sponge 配置跟 Java Flag 都不变
区块加载延迟,无解
dragon0126 发表于 2018-10-25 22:31
我改用别的服务器了, 虽然没有那么频繁, TPS却降低了, 我找了几个玩家来帮我测试, 这是我的timings : http ...
醒醒吧
我开bukkit的,去spone后硬生生被卡**ukkit了
个人认为并不是sponge卡
就算是原版,跑跑图也掉tps
dragon0126 发表于 2018-10-25 22:31
我改用别的服务器了, 虽然没有那么频繁, TPS却降低了, 我找了几个玩家来帮我测试, 这是我的timings : http ...
感觉是跑图卡顿的可能性大一些,不妨试试这个:
http://www.mcbbs.net/thread-725682-1-1.html
用这个插件设定边界,并预加载边界内的地图,可以有效减少跑图卡顿。记得要安装projectcore作为前置