spark(마인크래프트)
spark는 마인크래프트 서버와 클라이언트의 성능을 측정하는 프로파일러이다. 어떤 작업이 시간을 쓰는지, 메모리를 무엇이 차지하는지, 가비지 컬렉션이 얼마나 자주 일어나는지를 확인할 수 있다.[1]
| 최신 버전 | spark.lucko.me 참고 |
|---|---|
| 지원 MC | Paper 1.21 이상에 내장. 그 외에는 별도 설치 |
| Java | 서버 코어와 동일 |
| 서버 코어 | Paper, Purpur, Spigot, Fabric, Forge 계열 |
| 선행 플러그인 | 없음 |
| 확인일 | 2026-08-06 |
Paper는 1.21부터 spark를 내장하고 있어 별도 설치 없이 /spark 명령을 사용할 수 있다. 서버가 느려졌을 때 원인을 추측하지 않고 확인하는 거의 유일한 수단이므로, 설정을 바꾸기 전에 먼저 측정하는 것이 원칙이다.
주요 명령
| 명령 | 용도 |
|---|---|
/spark tps |
TPS와 CPU 사용률 확인 |
/spark health |
TPS·CPU·메모리·디스크를 한 번에 보는 상태 보고서 |
/spark profiler start |
프로파일링 시작 |
/spark profiler stop |
측정 종료 후 결과 링크 출력 |
/spark tickmonitor |
기준 시간을 넘는 틱을 감시 |
/spark gc |
가비지 컬렉션 이력 확인 |
/spark heapsummary |
힙 메모리를 차지하는 객체 종류 요약 |
/spark ping |
이용자 지연 시간 확인 |
권한 노드는 spark 또는 기능별로 spark.profiler, spark.tps, spark.healthreport 등이 있다.[1]
프로파일링 절차
- 문제가 재현되는 시간대에
/spark profiler start를 실행한다. - 증상이 나타나는 동안 측정을 유지한다. 짧게 끝내면 원인 구간이 잡히지 않는다.
/spark profiler stop으로 결과 링크를 받는다.- 웹 뷰어에서 호출 트리를 펼쳐 시간을 많이 쓰는 항목을 찾는다.
--timeout 옵션으로 측정 시간을 미리 지정할 수 있고, --alloc을 붙이면 메모리 할당을 기준으로 측정한다.
결과 해석
- 플러그인 패키지 이름이 상위에 보이면 그 플러그인을 우선 검토한다.
- 게임 자체의 청크·엔티티 관련 항목이 크면 설정 조정이 필요하다.
- GC 항목이 크면 가비지 컬렉터 설정을 검토한다.
/spark gc로 이력을 함께 본다. - 전체적으로 고르게 분산되어 있으면 단일 원인이 아니라 하드웨어 한계일 수 있다.
측정값이 정상인데 이용자가 지연을 느낀다면 서버 성능이 아니라 네트워크 문제일 수 있다. ReadTimeoutException 문서를 참고한다.
같이 보기
각주
- ↑ 1.0 1.1 Command Usage, spark. 2026년 8월 6일 확인.