Minecraft 서버 지연 및 낮은 TPS 진단

마인 크래프트는 어떻게 작동하나요?

지연을 일으키는 원인을 이해하는 열쇠는 Minecraft의 작동 방식을 이해하는 것입니다. 마인 크래프트 서버 소프트웨어는 모두 하나의 주요 문제와 비슷한 문제로 작동합니다. 메인 게임 루프에는 멀티 스레딩 또는 타이밍 제한이 없습니다. 서버가 틱에 들어가면 모든 TileEntity 업데이트, 엔티티 업데이트, 블록 업데이트, 이벤트 및 기타 프로세스가 완료 될 때까지 실행됩니다. 이것은 모두 하나의 스레드에서 발생하며 현재 루프가 끝날 때까지 다음 루프를 시작할 수 없습니다. 세계는 업데이트되지 않으며 플레이어는 움직이지 않으며 엔티티는 제자리에 고정됩니다. 이상적으로 각 Ttic은 초당 Tics (TPS)를 유지하기 위해 50ms를 넘지 않아야합니다. 최소한의 문제로 18 TPS에서 55.55ms까지 낮아질 수 있습니다. 이보다 낮 으면 지연이 발생하기 시작합니다.

지연의 전형적인 원인

지연을 일으킬 수있는 많은 것들이 있지만 그 중 일부는 대부분의 서버에서 가장 범인 일 것입니다.

  • 파일 사용법 : 특히 이동, 손상 또는 상호 작용과 같은 이벤트에서 플레이어 파일에서 지속적으로 읽는 플러그인입니다. 몇 가지 예는 플레이어 파일에서 지속적으로 읽을 수있는 일부 PVP 플래그 또는 Glow 플러그인입니다.
  • 데이터베이스로서의 플랫 파일 : 큰 파일을 사용하는 플러그인이있는 경우 파일 저장 방법에 따라 해당 파일을 통해 또는 메모리에서 반복되는 많은 데이터를 추적하는 데 시간이 오래 걸립니다. 많은 플러그인은이 작업을 수행하며 데이터베이스가 부풀어 질 때 처리 시간이 서버에 영향을 미치는 방식에 대해주의를 기울이지 않습니다. 큰 MagicSpell 구성을로드하거나 PEX 및 GroupManager와 같은 적절한 데이터베이스 대신 YAML을 사용하는 권한 시스템을 사용할 때이 점을 많이 알 수 있습니다.
  • 너무 많은 작업 : 플러그인이 너무 많은 엔티티를 생성하거나 이동과 같은 이벤트에서 복잡한 작업을 수행하려고하면 지연이 발생하기 시작합니다. 각 실행에 1ms 미만이 걸리더라도 초당 20k 회 이벤트를 처리 할 때 지수가됩니다. 이를 일으킬 수있는 플러그인은 VoxelSniper 및 WorldEdit와 같은 월드 편집 플러그인입니다. 또는 Anti Cheats 및 World Protections와 같은 보호 플러그인.
  • 너무 많은 청크가로드되었습니다 . 한 청크입니다 16*16*256. 이것은 많이 들리지 않을 수도 있지만 곱하면 청크 당 65,536 블록이 있음을 의미합니다. 각 플레이어는 구성에 따라 200 개 이상의 청크를로드 할 수 있습니다. 13,107,200 블록 이상입니다. 이것은 많은 메모리를 차지합니다. 또한이 중 1 %라도 TileEntities 인 131,072 개의 TileEntities이면 모든 틱을 업데이트해야합니다. Mod는 TileEntities에서 처리 시간이 느리다는 것으로 유명합니다.
  • Cascading WorldGen : 플러그인 또는 mod가 청크 외부에서 구조체를 생성하는 경우입니다. 그러면 다음 청크가로드되고 생성 된 다음 구조가 다음 청크로 오버플로되기 시작하면이를 다시 트리거합니다. 이것은 제작자를 대신하여 잘못된 디자인이며이를 수행하는 모든 플러그인 또는 모드는 즉시 제거해야합니다.
  • 타일 ​​엔티티 : 아래의 LagGoggles 섹션을 참조하십시오 .

대부분의 Minecraft 서버 소프트웨어는 프로파일 링 도구가 포함되어 구축되어 있기 때문에 일반적으로 지연의 원인을 찾는 것은 간단한 절차입니다.

마개 / 용지 마개에 대한 타이밍 보고서

자세한 타이밍 보고서를 얻으려면 다음 명령을 사용할 수 있습니다.

/timings on

몇 분 정도 기다렸다가 타이밍이 실행되는 동안 지연 될 수 있습니다. 잠시 후 보고서를 생성하십시오.

/timings paste

이렇게하면보고있는 모든 데이터를 쉽게 탐색 할 수있는 옵션이 포함 된 보고서를 멋지게 분류 한 웹 사이트 링크가 제공됩니다. Spigot 's timing wiki 에서 이것들을 읽는 방법에 대해 더 배울 수 있습니다 .

정크 데이터가 다음 판독 값을 방해하지 않게하려면 타이밍을 끄고 타이밍을 사용하면 틱에 시간이 추가됩니다.

/timings off

스폰지 타이밍 보고서

자세한 타이밍 보고서를 얻으려면 다음 명령을 사용할 수 있습니다.

/sponge timings on

몇 분 정도 기다렸다가 타이밍이 실행되는 동안 지연 될 수 있습니다. 잠시 후 보고서를 생성하십시오.

/sponge timings report

이렇게하면보고있는 모든 데이터를 쉽게 탐색 할 수있는 옵션이 포함 된 보고서를 멋지게 분류 한 웹 사이트 링크가 제공됩니다. Sponge의 타이밍 시스템은 Spigot을 기반으로하기 때문에 Spigot의 타이밍 위키 에서이를 읽는 방법에 대해 자세히 배울 수 있습니다 .

정크 데이터가 다음 판독 값을 방해하지 않게하려면 타이밍을 끄고 타이밍을 사용하면 틱에 시간이 추가됩니다.

/sponge timings off

타이밍을 재설정 할 수도 있습니다.

/sponge timings reset

지연을 줄이기위한 단계

  • 스크립트 파일에 적절한 인수를 사용하여 Minecraft를 시작하십시오. 적절한 Java 인수에 대한 자세한 내용은 여기를 참조하십시오.
  • 플랫 파일 대신 적절한 데이터베이스를 사용하는 LuckPerms 또는 권한 관리자를 사용하십시오.
  • 청크 로더를 함께 사용하지 마십시오
  • 계단식 세계 생성을 유발하는 모든 것을 제거하십시오
  • 안티 치트 플러그인이 지나치게 열악하지 않도록 제한
  • 플레이어의 시야 거리 제한 server.properties
  • 정해진 시간이 지나면 적대적인 몹 제거
  • Java에서 누수를 정리하려면 매일 서버를 다시 시작하십시오.
  • 서버를 다시로드하지 마십시오. 이로 인해 누출 및 기타 문제가 발생합니다.
  • WorldEdit 및 VoxelSniper와 같은 FastAsync 버전의 플러그인 사용
  • 새로운 덩어리가 끊임없이 생성되지 않도록 세계의 크기를 제한하십시오
  • 사용하는 플러그인의 양을 제한하십시오. 모든 플러그인이 제대로 구축 된 것은 아니며 더 많은 문제가 발생할수록

래그 고글

수정 된 서버에서 지연의 큰 부분은 타일 엔터티에서 비롯됩니다. 이들은 블록의 기능 및 이벤트를 처리하는 데 사용되는 블록에 대해 작성된 엔티티입니다. 시간이 너무 오래 걸리거나 너무 많으면 전체 서버 TPS를 중단시키는 시간당 시간이 늘어날 수 있습니다. 이러한 문제를 시각화하는 방법은 LagGoggles라는 모드를 사용하는 것입니다. CurseForce 에서이 모드를 다운로드 할 수 있습니다 .



Leave a Comment

Windows Server에 Garrys Mod를 설치하는 방법

Windows Server에 Garrys Mod를 설치하는 방법

소개이 기사에서는 Windows Server 2012에서 Garrys Mod 서버를 다운로드하고 설치하는 방법에 대해 설명합니다.이 안내서는 깊이있게 작성되었습니다.

Ubuntu 14 64 비트에서 Teamspeak 3 서버 만들기

Ubuntu 14 64 비트에서 Teamspeak 3 서버 만들기

개요 개발 팀과 대규모 공동 작업 프로젝트를 진행하든 최신 롤 플레잉 게임에서 보스를 죽이든 상관 없습니다.

우분투에서 왼쪽 4 데드 2 서버를 설정하는 방법

우분투에서 왼쪽 4 데드 2 서버를 설정하는 방법

이 튜토리얼에서는 우분투에서 Left 4 Dead 2 서버를 설정하는 방법을 배웁니다. 이 안내서는 Ubuntu 서버 15.10에서 테스트되었습니다. 전제 조건 업데이트

CentOS 7에 JC2-MP (Just Cause 2) 서버를 설치하는 방법

CentOS 7에 JC2-MP (Just Cause 2) 서버를 설치하는 방법

이 튜토리얼에서는 Just Cause 2 멀티 플레이어 서버를 설정하는 방법을 배웁니다. 전제 조건 시작하기 전에 시스템이 완전히 업데이트되었는지 확인하십시오

반격 : 아치 리눅스에서 CSGO (Global Offensive) 서버 설정

반격 : 아치 리눅스에서 CSGO (Global Offensive) 서버 설정

이 튜토리얼은 Arch Linux에서 Counter-Strike : Global Offensive 서버를 설정하는 방법을 설명합니다. 이 학습서는 표준 사용으로 로그인했다고 가정합니다.

CentOS 7에 Starbound Server를 설치하는 방법

CentOS 7에 Starbound Server를 설치하는 방법

다른 시스템을 사용하십니까? 이 튜토리얼에서는 CentOS 7에서 Starbound 서버를 설정하는 방법을 설명하겠습니다. 전제 조건이 게임을 소유해야합니다

CentOS 6에서 SA-MP San Andreas 멀티 플레이어 서버 설정

CentOS 6에서 SA-MP San Andreas 멀티 플레이어 서버 설정

다른 Vultr 튜토리얼에 오신 것을 환영합니다. 여기에서는 SAMP 서버를 설치하고 실행하는 방법에 대해 설명합니다. 이 안내서는 CentOS 6 용으로 작성된 것입니다. 전제 조건

CentOS 7에 PufferPanel (무료 Minecraft 제어판)을 설치하는 방법

CentOS 7에 PufferPanel (무료 Minecraft 제어판)을 설치하는 방법

소개이 자습서에서는 Vultr VPS에 PufferPanel을 설치하십시오. PufferPanel은 사용자를 관리하기위한 무료 오픈 소스 제어판입니다.

Linux에서 TShock이있는 Terraria 서버

Linux에서 TShock이있는 Terraria 서버

Terraria는 채굴, 구축 및 싸움을 기반으로하는 MMORPG입니다. 어떤 사람들은 Minecraft의 2D 버전을 말하지만 Terraria에 대한 정의는 아닙니다.

Ubuntu 14에서 서버를 죽일 7 일 설정

Ubuntu 14에서 서버를 죽일 7 일 설정

이 안내서에서는 Ubuntu에서 7 일 다이 서버 (7D2D)를 직접 설정하는 방법에 대해 설명합니다. 이 게임은 아직 초기 단계에 있으며

Ubuntu 14.04 x64에서 Ragnarok 온라인 서버 설정

Ubuntu 14.04 x64에서 Ragnarok 온라인 서버 설정

이 기사에서는 Ubuntu 14.04 x64에서 Ragnarok 온라인 서버를 설정합니다. 루트 또는 슈퍼 유저 권한이있는 사용자로 로그인 할 수 있습니다. 그것

CentOS 6에 Unturned 2.2.5를 설치하는 방법

CentOS 6에 Unturned 2.2.5를 설치하는 방법

이 안내서에서는 CentOS 6을 실행하는 Vultr VPS에서 Unturned 2.2.5 서버를 설정하는 방법에 대해 설명합니다. 참고 :이 버전은 Unturned의 편집 버전으로 Unturned

카운터 스트라이크 설정 : 데비안 소스

카운터 스트라이크 설정 : 데비안 소스

이 가이드에서는 데비안 7에서 카운터 스트라이크 : 소스 게임 서버를 설정합니다.이 명령은 데비안 7에서 테스트되었지만 작동해야합니다.

Ubuntu 16.10에서 Tekkit Classic 서버를 설정하는 방법

Ubuntu 16.10에서 Tekkit Classic 서버를 설정하는 방법

다른 시스템을 사용하십니까? Tekkit Classic은 무엇입니까? Tekkit Classic은 모두가 알고 사랑하는 게임을위한 모드 팩입니다. 마인 크래프트. 그것은 ver의 일부를 포함

CentOS 6에서 Minecraft PE 서버 설정

CentOS 6에서 Minecraft PE 서버 설정

이 기사에서는 CentOS 6에서 Minecraft Pocket Edition 서버를 설정하는 방법을 설명합니다. Minecraft PE 서버 설정은 매우 간단합니다. 먼저 설치

Ubuntu 16.04 64 비트에 Teamspeak 3 서버를 설치하는 방법

Ubuntu 16.04 64 비트에 Teamspeak 3 서버를 설치하는 방법

다른 시스템을 사용하십니까? 불일치 / 스카이프를 사용하는 데 어려움이 있습니까? 서버를 완전히 제어하지 못하는 데 지치셨습니까? 아니면 부족 때문에 o

CentOS 7에 ARKSE (ARK Survival Evolved)를 설치하는 방법

CentOS 7에 ARKSE (ARK Survival Evolved)를 설치하는 방법

이 학습서에서는 CentOS 7에서 ARK Survival 서버를 설정하는 방법을 학습합니다. 전제 조건 ARK에는 많은 양의 메모리가 필요합니다. 나는 V를 사용하는 것이 좋습니다

Windows에 Counter-Strike : Global Offensive Server를 설치하는 방법

Windows에 Counter-Strike : Global Offensive Server를 설치하는 방법

소개이 가이드에서는 Windows에 Counter-Strike : Global Offensive 서버를 설치하는 방법을 배웁니다. 전제 조건 시작하기 전에 youl

Ubuntu 16.04에 Unturned 2.2.5를 설치하는 방법

Ubuntu 16.04에 Unturned 2.2.5를 설치하는 방법

다른 시스템을 사용하십니까? 소개이 안내서에서는 Ubuntu 16.04를 실행하는 Vultr VPS에서 Unturned 2.2.5 서버를 설정하는 방법에 대해 설명합니다. 참고 : Thi

Windows에 Reflex 서버 설치

Windows에 Reflex 서버 설치

소개 Reflex는 Turbo Pixel Studios의 경쟁이 치열한 Arena FPS입니다. 이 튜토리얼에서는 자체 Reflex 서버를 설정하는 방법을 보여줍니다.

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

저널링 파일 시스템이란 무엇이며 어떻게 작동합니까?

저널링 파일 시스템이란 무엇이며 어떻게 작동합니까?

우리 컴퓨터는 모든 데이터를 저널링 파일 시스템이라고 하는 체계적인 방식으로 저장합니다. 검색을 누르는 즉시 컴퓨터에서 파일을 검색하고 표시할 수 있는 효율적인 방법입니다.https://wethegeek.com/?p=94116&preview=true

기술적 특이점: 인류 문명의 먼 미래?

기술적 특이점: 인류 문명의 먼 미래?

과학이 빠른 속도로 발전하고 우리의 많은 노력을 인수함에 따라 설명할 수 없는 특이점에 처할 위험도 높아집니다. 특이점이 우리에게 무엇을 의미할 수 있는지 읽어보십시오.

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

2021년 의료 분야에서 인공 지능의 영향

2021년 의료 분야에서 인공 지능의 영향

의료 분야의 AI는 지난 수십 년 동안 큰 도약을 했습니다. 따라서 의료 분야에서 AI의 미래는 여전히 나날이 성장하고 있습니다.