게임 운영 Part 2: 서버 점검 메시지¶
서버 점검 기간에 서버에 접속하는 유저들에게 서버 점검 중임을 자동으로 알려주고, 클라이언트로부터 오는 다른 패킷들은 모두 무시하게 하는 기능입니다.
서버 점검 메시지 설정¶
(방법1) MANIFEST.json 을 이용한 static 한 방식¶
아래와 같이 설정하고 서버를 재시작하면 됩니다.
MANIFEST.json 설정¶
MANIFEST.json 에 다음과 같이 MaintenanceService
섹션을 추가합니다.
1 2 3 4 5 6 7 8 9 | {
"dependency": {
...
"MaintenanceService": {
"under_maintenance": true,
"maintenance_data_path": "/path/to/maintenance.json"
}
}
}
|
Note
위의 예에서 /path/to/mintenance.json
은 maintenance.json 파일의 경로를 의미합니다.
maintenance.json 설정¶
아래와 같이 date_start
, date_end
, messages
가 입력된 json 파일을 작성합니다.
1 2 3 4 5 | {
"date_start": "2015/09/23 04:00", // start time
"date_end": "2015/09/23 08:00", // end time
"messages": "The state of being maintained." // message for the client.
}
|
Important
maintenance.json 에는 date_start
date_end
messages
외에 다른 항목을 추가할 수 없습니다.
(방법2) 서버 실행 중에 설정하는 dynamic 한 방식¶
서버를 재시작하지 않고도 서버 점검 상태 변경 및 메시지를 변경하려면 다음과 같이 콤포넌트에서 제공하는 API 를 이용하여 변경하면 됩니다.
-
PUT
/v1/maintenance/update
¶ - Request JSON Object
date_start (string) – (required) “2015/09/23 04:00” 형태
date_end (string) – (required) “2015/09/23 08:00” 형태
messages (string) – (required) 클라이언트에게 전송될 메시지
under_maintenance (bool) – (optional) 해당 기능을 끄거나 켤 때 사용 가능
- Status Codes
200 OK – 성공
400 Bad Request – 실패. request body 가 json 이 아니거나 field type 이 다른 경우
Note
API service 의 port 에 대해서는 서버 관리 Part 1: RESTful APIs 추가 를 참조하세요.
서버 점검 메시지 클라이언트 코드¶
클라이언트 예제는 배포된 Client Plugin의 테스터 코드를 참고해주세요. 보다 자세한 내용은 플러그인의 서버 점검 메시지 를 참고하세요.