러스트 서버 최적화: 렉의 원인과 해결 방법
빠른 답: 서버 콘솔에 serverinfo를 입력하면 서버의 Framerate와 EntityCount가 나옵니다. Rust 서버는 돌려야 할 것이 늘어나면 느려집니다. 월드에 건물과 아이템이 많아지고, 맵이 커서 스폰이 많아지고, NPC와 플러그인이 있을 때예요. 아래 설정이 각각을 조절합니다. 틱레이트 설정은 기본값으로 두세요.
서버 상태 확인하기
섹션 제목: “서버 상태 확인하기”| 명령어 | 보여 주는 것 |
|---|---|
serverinfo | Framerate, EntityCount(월드의 모든 것), Players, Memory, NetworkIn과 NetworkOut, Uptime. |
server.fps | 서버의 프레임레이트만. |
서버 콘솔에서, RCON으로, 또는 관리자로서 F1 콘솔에서 입력하세요. Crucible Local Server에서는 서버가 Live일 때 빠른 보기의 프레임레이트 타일이 같은 숫자를 보여 줍니다.
렉이 생기는 동안 프레임레이트를 지켜보세요. 떨어진다면 서버가 자기 일에 허덕이는 것이고 이 페이지의 나머지가 해당됩니다. 일정하게 유지된다면 대신 네트워크나 플레이어 자신의 PC를 살펴보세요.
프레임레이트 상한
섹션 제목: “프레임레이트 상한”fps.limit은 서버가 초당 돌릴 최대 프레임 수입니다(Rust는 240이라고 보고합니다). 낮추면 같은 PC에서 돌아가는 두 번째 서버 같은 다른 것들을 위해 CPU가 비워집니다. 이미 상한보다 낮게 돌아가는 서버에는 아무 효과가 없어요.
틱레이트: 건드리지 마세요
섹션 제목: “틱레이트: 건드리지 마세요”| 설정 | 기본값 | 하는 일 |
|---|---|---|
server.tickrate | 10 | 서버가 RCON, Rust+, 연결 확인을 초당 몇 번 처리하는지입니다. 게임이 더 부드럽게 돌아가게 하지는 않아요. |
player.tickrate_sv | 16 | 서버가 각 플레이어를 초당 몇 번 갱신하는지입니다. Rust는 16에서 128까지 허용하고, 한 단계 올릴 때마다 접속한 모든 플레이어에 대한 작업이 늘어납니다. |
엔티티 수
섹션 제목: “엔티티 수”건축 블록, 설치물, 떨어진 아이템, 시체, 동물, 통은 모두 엔티티이고, 서버는 그 하나하나를 추적하고 저장합니다. 와이프 기간 동안 플레이어가 건설하면서 수가 늘어나요.
| 설정 또는 명령어 | 기본값 | 하는 일 |
|---|---|---|
server.itemdespawn | 300 | 떨어진 아이템이 사라지기 전에 땅에 놓여 있는 기본 시간(초)입니다. 일부 아이템은 더 오래 남습니다. |
server.corpsedespawn | 300 | 시체가 남아 있는 시간(초). |
entity.countby <steamid> | 한 플레이어가 설치한 모든 것의 수를 셉니다. | |
entity.deleteby <steamid> | 한 플레이어가 설치한 모든 것을 파괴합니다. 되돌릴 수 없습니다. |
부식은 아무도 관리하지 않는 건물을 닳게 하고, 버려진 기지를 맵에서 치워 주는 것이기도 합니다. decay.scale 0이면 아무것도 부식되지 않아서 모든 기지가 와이프까지 남고 엔티티 수는 늘기만 해요. 긴 와이프 기간에는 부식을 켜 두세요. 설정은 부식 끄는 방법에 있습니다.
맵 크기와 스폰
섹션 제목: “맵 크기와 스폰”Rust는 면적을 기준으로 광석 노드, 식물, 줍는 아이템, 동물로 맵을 채웁니다. 스폰 종류마다 밀도가 있고, Rust는 그것이 들어갈 수 있는 땅 전체에서 그 밀도를 맞추려고 해요. 맵이 크면 모든 것이 더 많이 들어가고, 서버가 돌려야 할 것도 늘어납니다. Rust는 일부 스폰 종류를 4000 m 맵의 면적에서 제한합니다. 크기를 고르는 방법은 Rust 맵 크기에 있습니다.
| 설정 | 기본값 | 하는 일 |
|---|---|---|
spawn.max_density | 1 | 맵이 담는 모든 스폰 종류의 양을 조절합니다. 0.5는 절반입니다. |
spawn.min_density | 0.5 | 플레이어 수를 따르는 스폰 종류는 빈 서버에서 여기서 시작해서 서버가 차면 spawn.max_density까지 올라갑니다. |
spawn.tick_populations | 60 | 스폰 라운드 사이의 시간(초). 숫자가 높을수록 맵이 더 느리게 다시 채워집니다. |
NPC
섹션 제목: “NPC”| 설정 | 하는 일 |
|---|---|
ai.npc_enable false | 모뉴먼트와 정크파일에 과학자가 스폰되지 않고, Rust가 모뉴먼트 내비메시를 만들지 않아서 서버가 더 빨리 시작합니다. 동물은 여전히 스폰됩니다. |
aimanager.nav_disable true | Rust가 내비메시를 전혀 만들지 않아서 서버가 훨씬 빨리 시작하지만, NPC와 동물이 움직이지 못합니다. 건설이나 테스트 서버 전용입니다. |
둘 다 server.cfg나 시작 줄에 넣어서, 서버가 시작되는 순간부터 적용되게 하세요. Rust server.cfg 예시를 참고하세요.
플러그인
섹션 제목: “플러그인”모든 플러그인은 서버에서 자기 코드를 실행하고, 느린 플러그인 하나가 모두의 프레임레이트를 끌어내릴 수 있습니다. Oxide의 o.plugins나 Carbon의 c.plugins가 불러온 것을 나열해요. 느린 것을 찾으려면 플러그인을 oxide/plugins나 carbon/plugins 폴더에서 하나씩 빼고, 재시작하고, 프레임레이트를 지켜보세요. Crucible Local Server에서는 플러그인을 모드 탭에서 관리합니다. 모드와 플러그인을 참고하세요.
세이브
섹션 제목: “세이브”server.saveinterval(600)은 월드가 저장되는 주기(초)이고, 저장할 때마다 월드의 모든 엔티티를 기록합니다. 엔티티가 많은 월드는 저장하는 데 더 오래 걸리므로 아주 낮게 설정하지 마세요.
재시작
섹션 제목: “재시작”예약 재시작은 오래 돌아가는 서버를 깨끗하게 새로 시작해 줍니다. Crucible Local Server는 매일 일정에 맞춰 재시작하고 서버가 꺼져 있는 동안 Rust 업데이트를 설치할 수 있습니다. 서버 자동 재시작을 참고하세요.
Crucible Local Server에서
섹션 제목: “Crucible Local Server에서”설정 탭의 성능 설정입니다.
- **AI 내비메시 건너뛰기 (더 빠른 부팅)**는 위의
aimanager.nav_disable입니다. 훨씬 빠른 시작과 움직이지 않는 NPC와 동물을 얻습니다. - 높은 우선순위는 다른 앱이 돌아가고 있을 때 서버에 CPU를 더 줍니다.
- **CPU 코어 (고급)**는 서버를 나열한 코어(예:
0-7)에 고정합니다. 비워 두면 모든 코어를 씁니다.
동시에 실행하는 서버 하나하나가 실제 RAM과 CPU를 쓰기 때문에 여러 서버를 동시에 실행 허용이 기본으로 꺼져 있습니다. 서버 설정을 참고하세요.
관련 문서
섹션 제목: “관련 문서”- 이 페이지의 모든 설정과 기본값이 있는 Rust 서버 변수
- Rust 관리자 명령어
- 최대 플레이어 수 바꾸는 방법
- 커스텀 Rust 맵 호스팅하는 방법
