Spark: 프로파일러 보고서 읽는 방법
Spark 보고서의 구조를 분석해요. 호출 트리, 시간 점유율, 원인 찾기, 그리고 전형적인 부하 패턴을 다뤄요.
업데이트 2026년 8월 13일
프로필 캡처 — Spark. 결과를 이해하는 방법은 다음과 같아요.
링크를 열면 보이는 것
백분율이 표시된 호출 트리예요. 맨 위에는 서버의 메인 스레드가 있고, 그 아래에는 그 작업이 무엇으로 구성되어 있는지 나와요.
익숙한 이름, 즉 플러그인, 모드 또는 바닐라 시스템이 나올 때까지 가장 굵은 가지를 따라 위에서 아래로 읽어야 해요.
대표적인 패턴
| 점유율이 높은 가지 | 의미 |
|---|---|
net.minecraft.world.entity | 엔티티가 너무 많음 — 몹 |
Villager, Brain, GoalSelector | 주민과 길찾기 — 마을 |
ChunkMap, ServerChunkCache, ChunkGenerate | 청크 생성 — 사전 생성 |
HopperBlockEntity | 호퍼 — 농장 |
RedstoneTorch, TickNextTick | 레드스톤 — 레드스톤 렉 |
| 플러그인 이름 | 플러그인 — 플러그인이 서버를 망가뜨림 |
GC, SafepointBlocker | 가비지 컬렉션 — GC |
백분율은 오해를 부를 수 있어요
보고서의 100%는 유휴 시간을 포함한 전체 실행 시간이에요. 점유율뿐만 아니라 틱당 절대 시간도 보고 MSPT와 비교해 보세요 — TPS.
좌표
엔티티와 블록의 경우 Spark가 위치를 표시해요. 이는 어디를 살펴봐야 하는지 알려주는 주소와 같아요. 보통 그곳에서 특정 플레이어의 농장을 찾을 수 있어요.
메모리
/spark heapsummary는 힙이 무엇으로 채워져 있는지 보여줘요. 두 스냅샷 사이에 한 플러그인의 객체 수가 늘어난다면 누수예요 — 메모리.
Minecraft 호스팅오프라인일 때도 서버가 실행돼요서버 만들기
