멀티스레드로 구동되는 마인크래프트 패브릭 서버, 바닐라 메커니즘 완벽 유지
This is a Minecraft Fabric server running multithreaded. Full Vanilla mechanics.
핵심 요약
멀티스레딩을 지원하면서도 바닐라 메커니즘을 그대로 유지하는 마인크래프트 패브릭 서버 프로젝트 'Fabrolia' 소개.
- 멀티스레딩 구현 — 기존 싱글 스레드 방식의 한계를 극복하고 서버 성능을 대폭 향상함
- 바닐라 호환성 — 기존 서버 소프트웨어와 달리 게임 메커니즘을 변경하지 않고 그대로 유지함
- Fabrolia 프로젝트 — 패브릭 기반으로 지역별 스레드 분할을 통해 고성능 서버 환경을 제공함
- 개발 단계 — 현재 알파 버전으로 모드 호환성 문제가 발생할 수 있는 초기 개발 단계임
안녕!
배경 설명을 좀 하자면, 바닐라 마인크래프트 서버는 대부분 싱글 스레드로 돌아가서 성능 제한이 존나 심하기로 유명함. 지금까지 해결책이라고는 서버 규모를 작게 유지하거나, 렉을 감수하거나, 아니면 핵심 메커니즘을 건드려서 성능을 올리는 서버 소프트웨어를 쓰는 것뿐이었는데, 이러면 바닐라 특유의 동작들이 죄다 망가지는 문제가 있었지. 그런 프로젝트 중 하나를 포크한 Folia도 똑같이 메커니즘을 박살 내는 건 마찬가지고.
그동안은 Fabric 기반 서버가 바닐라의 표준이었어. Lithium 같은 성능 모드를 쓰면 바닐라 서버 jar 파일보다 성능이 좀 나아지긴 하지만, 근본적인 한계는 명확했거든.
내 서버는 한동안 Fabrolia를 돌리고 있어. 이건 서로 다른 영역을 각기 다른 스레드에서 처리하게 해줘서, 예전엔 상상도 못 했던 성능을 뽑아내. 스크린샷에 나온 성능은 렌더 거리랑 시뮬레이션 거리를 둘 다 8로 설정했을 때 찍은 거야. 서버가 부하가 심한 구역이랑 농장들을 여러 개 동시에 돌리고 있는데도 이 정도라고.
관심 있으면 여기 확인해 봐:
https://github.com/DUzzL/fabrolia
Opus 5.5 고맙다 <3
참고: 이 프로젝트는 아직 개발 중인 게 많아(WIP). 가끔 다른 모드랑 충돌해서 튕길 수도 있음. 예전보다는 훨씬 나아졌지만, 완벽하고 문제없는 경험을 기대하진 마. 어쨌든 알파 버전이니까.


