Skip to content
블로그로 돌아가기
PicoLimbo: 경량 Minecraft 서버 설정하기

PicoLimbo: 경량 Minecraft 서버 설정하기

Alexandru Maftei
Alexandru Maftei
@ice
Updated
4 조회수
TL;DR:PicoLimbo는 1.7.2부터 26.2까지 모든 버전을 지원하는 Rust로 작성된 가벼운 Minecraft 림보 서버입니다. 최소한의 리소스 사용량과 내장 프록시 지원이 필요한 네트워크에 완벽합니다.
🔗 오픈소스 Minecraft 프로젝트

Quozul/PicoLimbo

Minecraft 버전 1.7.2부터 26.2까지 지원하는 Rust로 작성된 경량 Minecraft 서버입니다.

⭐ 480 stars💻 Rust📄 MIT
GitHub에서 보기 ↗

대부분의 Minecraft 서버는 플레이어가 대기하거나 자리를 비울 때 리소스를 낭비합니다. PicoLimbo는 Rust로 작성된 매우 가벼운 림보 서버로 이 문제를 해결합니다 - 플레이어가 하드웨어를 소모하지 않고 서버를 변경할 때 대기할 수 있는 전용 공간입니다. 유휴 시간에 거의 CPU를 사용하지 않으며 10MB 미만의 RAM에서 전체 서버를 실행합니다.

림보 서버란 정확히 무엇인가요?

PicoLimbo를 알아보기 전에, "림보"가 무엇인지 명확히 해봅시다. Minecraft 네트워크에서 림보 서버는 가벼운 대기 영역입니다 - 플레이어를 위한 대기실이라고 생각하면 됩니다. 누군가 프록시(Velocity 또는 BungeeCord 같은)에 로그인했지만 아직 메인 서버에 참여하지 않았을 때 여기에 도착합니다. 또는 여러 게임 모드가 있는 대규모 네트워크를 운영 중이라면, 플레이어를 올바른 목적지로 보내기 전에 준비 영역으로 림보를 사용합니다.

중요한 점은 림보가 멋질 필요가 없다는 것입니다. 플레이어는 건축하거나, 몹과 싸우거나, 지형을 탐험하지 않습니다. 그냥 앉아있을 뿐입니다. 아마도 채팅중, 친구를 기다리는 중. 그렇다면 모든 오버헤드를 가진 완전한 Minecraft 서버를 실행할 이유가 있을까요?

바로 여기서 PicoLimbo가 등장합니다.


PicoLimbo가 눈에 띄는 이유

이 사용 사례에 실제로 중요한 기능에 대해 이야기해봅시다. 먼저, CPU 사용량은 얼마나 가벼운지 거의 놀라울 수준입니다. 대부분의 전통적인 Minecraft 서버는 아무것도 일어나지 않아도 유휴 상태에서 10-20% CPU를 사용합니다. PicoLimbo는 유휴 상태일 때 0%입니다 - 과장하지 않습니다. Keep-alive 패킷을 보내거나 로그인을 처리할 필요가 있을 때만 깨어납니다. 자체 호스팅을 하고 전기료를 내고 있다면 이것이 정말 명백합니다.

메모리 사용량도 마찬가지로 인상적입니다. README에는 10MB 미만의 RAM에서 수백 명의 플레이어를 처리할 수 있다고 나와 있습니다. 제공된 벤치마크를 봤을 때, 그 주장은 확인됩니다.

이제 흥미로워지는 부분입니다: 버전 지원. PicoLimbo는 1.7.2부터 26.2까지의 Minecraft를 기본적으로 지원합니다. 그것은 20년분의 클라이언트 버전이며, ViaVersion이나 다른 번역 레이어가 필요하지 않습니다. 모든 버전이 그냥 작동합니다. 플레이어가 이전 클라이언트나 최신 릴리스에 있을 수 있는 네트워크를 운영 중이라면, 호환성 문제에 대해 걱정할 필요가 없습니다.

스킨 지원이 내장되어 있어서 플레이어가 서로를 올바르게 볼 수 있습니다. 내장 프록시 지원은 모든 주요 시스템을 다룹니다: Velocity, BungeeCord, 그리고 BungeeGuard 인증. 바퀴를 다시 발명하지 않습니다 - 실제로 사용할 통합을 구현할 뿐입니다.


실행하기

설정에 따라 PicoLimbo를 배포하는 여러 가지 방법이 있습니다.

Docker는 컨테이너에 익숙하다면 가장 쉽습니다:

bash
docker run --rm -p "25565:25565" ghcr.io/quozul/picolimbo:latest

이것은 최신 이미지를 가져와 기본 Minecraft 포트에서 서버를 시작합니다. 완료. 지속성을 원하면 구성 파일을 위해 볼륨을 마운트해야 하지만, 기본 명령은 한 줄짜리입니다.

독립 실행형 바이너리는 Docker가 당신의 방식이 아닌 경우 당신의 선택입니다. GitHub 릴리스 페이지로 가서 당신의 OS(Linux x86_64, ARM, macOS)에 대한 바이너리를 받으세요. 압축을 해제하고, TOML 파일을 구성하고, 실행하세요. 구성은 간단한 TOML입니다 - 중첩된 배열이 있는 부풀려진 XML이나 JSON이 아닙니다.

Java 래퍼는 Velocity 또는 BungeeCord 내부에서 PicoLimbo를 플러그인으로 실행하거나 일반 JAR 파일로 실행하려는 사람들을 위해 존재합니다. 이것은 소스에서 컴파일하는 대신 미리 빌드된 버전을 원할 경우 Modrinth에서 사용할 수 있습니다.

Pterodactyl 사용자는 저장소에 공식 이미지를 받으므로, 해당 패널을 사용 중이면 깔끔하게 통합됩니다.

구성은 상황이 좋아지는 곳입니다. 일부 프로젝트와 달리 PicoLimbo는 500줄짜리 구성 파일을 쏟아내지 않습니다. 환영 메시지를 설정하고, 스폰 차원을 구성하고, 서버 목록용 MOTD를 조정하고, 프록시 인증 설정을 정의할 수 있는 TOML 파일을 얻습니다. 문서도 상당히 견고하므로 기본값을 소스에서 역분석할 필요가 없습니다.


중요한 기능

순수한 성능을 넘어, PicoLimbo는 또 다른 무엇을 제공할까요?

스키매틱 월드 지원은 스키매틱 파일에서 사용자 지정 월드를 로드하고 스폰 위치를 설정할 수 있습니다. 이것은 실험적으로 표시되어 있으며 1.16 이상에서만 작동하지만, 림보가 검은색 void 대신 멋져 보이게 하려면 WorldEdit에서 스키매틱을 만들고 그것을 떨어뜨릴 수 있습니다. 솔직히 말해서, 이것은 림보 미학이 중요한 경쟁 네트워크에 좋은 터치입니다.

스킨 렌더링은 플레이어가 림보에서 실제로 서로를 볼 수 있음을 의미합니다. 작은 세부사항이지만, 플레이어 경험에 중요합니다. 아무도 기본 Steve를 보고 싶지 않습니다.

프록시 포워딩은 견고합니다. Velocity의 최신 포워딩(안전한 방식), BungeeCord 레거시 포워딩(이전 인프라가 있는 경우), 그리고 스푸핑을 방지하기 위한 BungeeGuard 인증을 지원합니다. 프록시 뒤에 네트워크를 실행 중이면 PicoLimbo는 문제를 일으키지 않습니다 - 당신이 가진 것과 함께 작동합니다.


이것을 사용해야 하는 사람

솔직히 말해봅시다: PicoLimbo는 모두를 위한 것이 아닙니다.

PicoLimbo.png
PicoLimbo.png

플레이어가 직접 머무르는 바닐라 생존 서버를 운영 중이라면 청크 로딩과 Minecraft가 제공하는 모든 것을 포함한 실제 서버가 필요합니다. PicoLimbo는 도움이 되지 않습니다.

하지만 여러 서버 또는 게임 모드가 있는 네트워크를 운영하고 있다면 PicoLimbo는 훌륭합니다. 플레이어가 다음 목적지를 선택할 때까지 착지 영역으로 사용합니다. 토너먼트나 준비 영역이 필요한 게임이 있는 경쟁 서버를 운영 중이라면, 완벽합니다. 유휴 트래픽이 높고 서버 비용이 증가하고 있다면, 이것은 아마도 절반 이상 줄일 수 있습니다.

프록시 네트워크가 주요 사용 사례이지만, 일부는 플레이어가 활발히 플레이하지 않는 동안 "연결된" 상태를 유지해야 하는 네트워크를 위해 전용 AFK 서버를 실행합니다. PicoLimbo의 자원 효율성은 이것을 대규모로 실행 가능하게 합니다.


잠재적 문제 및 팁

완벽한 것은 없으므로, 주의할 사항은 다음과 같습니다.

플레이어 제한은 실제입니다. 최소한의 RAM에서 이론적으로 수백 명의 플레이어를 처리할 수 있지만, 실제 제한은 하드웨어, 네트워크 대역폭, 플레이어가 얼마나 자주 참여하고 떠나는지에 따라 달라집니다. 보수적으로 시작하여 필요에 따라 확장하세요. 부하 테스트 중에 서버 로그를 확인하여 병목 지점을 파악하세요.

구성은 강력하지만 주의가 필요합니다. 프록시 설정을 잘못 구성하면(특히 인증 포워딩), 플레이어가 올바르게 연결되지 않거나 잘못된 플레이어로 표시될 수 있습니다. BungeeGuard 또는 Velocity 포워딩을 설정할 때 문서를 주의 깊게 읽으세요.

스키매틱 월드는 실험적입니다. 기능이 작동하지만, 이를 그렇게 취급하세요. 프로덕션에서 실행 중이라면 배포하기 전에 스키매틱을 철저히 테스트하세요.

최신 릴리스는 Minecraft 업데이트를 안정적으로 따라갑니다. v1.13.1 릴리스 노트는 최근 버전의 blocks.json 매핑에 대한 수정 사항을 언급하므로 유지 관리자는 새로운 릴리스를 활발히 따라가고 있습니다.


고려할 가치가 있는 대안

PicoLimbo가 당신의 필요에 맞지 않으면 확인할 가치가 있는 다른 옵션이 있습니다.

Velocity 자체는 림보 기능을 처리할 수 있지만 더 무겁고 전용 경량 서버가 아닌 프록시로 설계되었습니다. 이미 Velocity를 사용 중이라면, 별도의 서비스를 실행하는 대신 거기서 림보를 처리할 수 있습니다.

PicoLimbo가 대부분의 네트워크에서 이기는 이유는 단순히 전문화입니다. 한 가지를 하고 거의 낭비 없이 그것을 합니다.


실용적인 핵심 요약

당신의 사용 사례와 일치한다면 PicoLimbo는 인상적입니다. 성능은 진정으로 눈에 띄고, 버전 지원은 광범위하며, 구성은 상쾌합니다. 네트워크를 관리하고 플레이어를 위한 가벼운 착지 영역이 필요하다면 테스트할 가치가 있습니다. GitHub 프로젝트는 480개의 별을 가지고 있고, 활동적인 Discord 커뮤니티가 있으며, 견고한 문서가 있습니다 - 따라서 당신은 죽은 프로젝트에 베팅하지 않습니다.

네트워크 전체에서 화이트리스트 관리를 위해 여러 서버를 처리하는 경우 Minecraft Whitelist Creator를 확인하세요. 그리고 스키매틱 월드 설정을 위해 특정 블록을 찾아야 한다면, Minecraft Block Search 도구가 시간을 절약할 수 있습니다.

About the author
Alexandru Maftei
Alexandru MafteiLead Writer

Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.

Share with your friends!