วิธีตั้ง Auto Restart FiveM Server ด้วย txAdmin ตั้งเวลารีสตาร์ตอัตโนมัติ
การตั้ง Auto Restart FiveM Server ด้วย txAdmin ช่วยให้ Server Restart ตามเวลาที่กำหนดโดยอัตโนมัติ โดยไม่ต้องให้ Admin เข้าไปกด Restart เองทุกครั้ง
txAdmin มีระบบ Scheduled Restarts พร้อมระบบแจ้งเตือนผู้เล่นก่อนถึงเวลา Restart และมี Events สำหรับให้ Resource เชื่อมต่อกับระบบ Save, Announcement หรือ Maintenance Workflow เพิ่มเติมได้
โครงสร้างการทำงานโดยทั่วไปคือ
กำหนดเวลา Restart
↓
txAdmin นับเวลาถอยหลัง
↓
แจ้งผู้เล่นล่วงหน้า
↓
Scheduled Restart Event
↓
Server Shutdown
↓
FXServer Start ใหม่
↓
Resources โหลดใหม่
↓
Server Online
เหมาะกับ FiveM RP Server ที่เปิดตลอดวันและต้องการ Restart เมืองเป็นรอบ ๆ อย่างเป็นระบบ
① Auto Restart FiveM Server คืออะไร
Auto Restart คือการกำหนดให้ FXServer ถูก Restart ตามเวลาที่ตั้งไว้โดยอัตโนมัติ
ตัวอย่าง
06:00
12:00
18:00
00:00
เมื่อถึงเวลาที่กำหนด txAdmin จะดำเนินการ Restart ตามระบบ Scheduled Restart
Admin ไม่ต้องมานั่งกด Restart ทุกครั้ง
② txAdmin รองรับ Scheduled Restart ไหม
รองรับ
Scheduled Restarts เป็น Feature หลักของ txAdmin
ระบบยังมี
Warning Announcements
Custom Events
Restart Monitoring
สำหรับช่วยจัดการช่วงก่อนและหลัง Restart
③ ตั้ง Auto Restart ที่ไหน
Login เข้า txAdmin แล้วไปยังหน้า Settings/Restarter ที่เกี่ยวข้องกับการตั้ง Scheduled Restart ตาม Version ของ txAdmin ที่ใช้อยู่
จากนั้นกำหนดเวลา Restart ที่ต้องการ
ก่อน Save ควรตรวจ
Server Time
Timezone
Next Restart
ให้ถูกต้อง
④ ตัวอย่างตั้ง Restart วันละ 2 ครั้ง
เช่น
06:00
18:00
หมายความว่า Server จะมี Scheduled Restart วันละ 2 รอบ
เหมาะกับ Server ที่ไม่ต้องการ Restart ถี่มาก
แต่จำนวนรอบที่เหมาะสมขึ้นอยู่กับ Server จริง
⑤ ตัวอย่าง Restart วันละ 4 ครั้ง
Server RP บางแห่งอาจใช้
00:00
06:00
12:00
18:00
เท่ากับประมาณทุก 6 ชั่วโมง
ข้อดีคือมี Maintenance Cycle ชัดเจน
แต่ไม่ควรคิดว่าทุก FiveM Server ต้อง Restart ทุก 6 ชั่วโมงเสมอ
⑥ ต้อง Restart ทุกกี่ชั่วโมง
ไม่มีค่ามาตรฐานเดียวสำหรับทุก Server
ต้องพิจารณา
จำนวน Player
จำนวน Resources
RAM
CPU
Framework
Database
Memory Leak
Server Stability
Peak Traffic
Server ที่เขียน Resource ดีอาจไม่จำเป็นต้อง Restart บ่อยเท่า Server ที่มี Resources จำนวนมาก
⑦ Restart บ่อยไม่ได้แปลว่า Server ดี
ถ้า Server ต้อง Restart ทุก 1–2 ชั่วโมงเพราะ
RAM เต็ม
Lag
Script ค้าง
CPU สูง
ควรหา Root Cause
ไม่ควรใช้ Auto Restart เป็นวิธีซ่อนปัญหา
ตัวอย่างต้องตรวจ
Resource Memory Leak
Database Query
Entity
Loop
CPU Usage
⑧ ก่อนตั้งเวลาต้องตรวจ Timezone
สำคัญมาก
สมมุติต้องการ Restart เวลา
06:00
แต่ Server OS หรือ Container ใช้ Timezone คนละประเทศ อาจทำให้เวลาที่ Admin คาดกับเวลาจริงไม่ตรงกัน
ดังนั้นตรวจเวลาของ Server และ Next Scheduled Restart ที่ txAdmin แสดงทุกครั้ง
⑨ Server อยู่ไทยควรดูอะไร
ถ้าต้องการใช้เวลาประเทศไทย ควรตรวจว่า Operating System หรือ Environment ของ Server ถูกตั้งให้ตรงกับ
Asia/Bangkok
UTC+7
หรือมี Configuration ที่ทำให้ txAdmin แสดงเวลาที่คุณต้องการอย่างถูกต้อง
อย่าเดาจากเวลา Browser อย่างเดียว
⑩ VPS ต่างประเทศใช้เวลาประเทศไทยได้ไหม
ได้ หาก Server Environment ถูกกำหนด Timezone ให้เหมาะสม
ตำแหน่ง Data Center ไม่ได้บังคับว่า OS ต้องใช้เวลาท้องถิ่นของ Data Center
ตัวอย่าง VPS สิงคโปร์ยังสามารถตั้งระบบเป็น
Asia/Bangkok
ได้ตาม Configuration ของระบบปฏิบัติการ
⑪ หลังตั้ง Schedule ต้องตรวจ Next Restart
อย่าตั้งเวลาแล้วปิดหน้าไปทันที
ตรวจ Dashboard ว่า
Next Restart
ตรงกับเวลาที่ต้องการหรือไม่
นี่เป็นวิธีง่ายที่สุดในการจับปัญหา Timezone ก่อนเกิด Restart ผิดเวลา
⑫ txAdmin แจ้งผู้เล่นก่อน Restart ไหม
แจ้ง
Scheduled Restart Event ปัจจุบันถูก Broadcast ล่วงหน้าที่
30 นาที
15 นาที
10 นาที
5 นาที
4 นาที
3 นาที
2 นาที
1 นาที
ก่อน Scheduled Restart
ช่วยให้ Player เตรียมตัวก่อนเมืองปิด
⑬ ผู้เล่นจะเห็นข้อความอะไร
txAdmin มี Default Scheduled Restart Warning
แนวคิดข้อความคือ
Server จะ Restart ใน X นาที
กรุณาเตรียมออกจาก Server
ข้อความจริงขึ้นอยู่กับ Language/Translation ของ txAdmin
⑭ Warning 30 นาทีมีประโยชน์อะไร
ช่วยให้ Player ที่กำลังทำกิจกรรมยาวรู้ล่วงหน้า เช่น
Roleplay Scene
Heist
Job
Racing
Trade
Vehicle Activity
และมีเวลาจบกิจกรรมก่อนเมือง Restart
⑮ Warning 5 นาทีสำคัญอย่างไร
ช่วงนี้ควรถือว่าใกล้ Maintenance แล้ว
Server อาจกำหนดกฎว่า
งดเริ่มกิจกรรมใหม่
งดซื้อขายขนาดใหญ่
งดเริ่มภารกิจยาว
เพื่อลด Transaction ค้างก่อน Restart
⑯ Warning 1 นาทีควรทำอะไร
ควรให้ Player
หยุด Transaction
ปิด Inventory
จอดรถ
รอระบบ Save
เตรียม Disconnect
และ Resource ที่เกี่ยวข้องสามารถใช้ Event ของ txAdmin เพื่อทำงานเพิ่มเติมได้
⑰ scheduledRestart Event คืออะไร
txAdmin ส่ง Event
txAdmin:events:scheduledRestart
ก่อน Scheduled Restart
Event นี้มีข้อมูล
secondsRemaining
translatedMessage
ทำให้ Developer สามารถสร้างระบบตอบสนองต่อเวลาที่เหลือได้
⑱ secondsRemaining คืออะไร
เป็นจำนวนวินาทีที่เหลือก่อน Restart
ตัวอย่าง
60
หมายถึงเหลือ 1 นาที
Developer สามารถเช็กค่านี้แล้ว Trigger Workflow ที่ต้องการได้
⑲ ตัวอย่างตรวจเหลือ 1 นาที
แนวคิด Lua
AddEventHandler('txAdmin:events:scheduledRestart', function(eventData)
if eventData.secondsRemaining == 60 then
print('Server restart in 1 minute')
end
end)
สามารถต่อยอดไปยังระบบ Save หรือ Announcement ของ Framework ได้
⑳ ใช้ Event นี้ Save Player ได้ไหม
ใช้ประกอบ Workflow ได้
ตัวอย่างแนวคิด
เหลือ 1 นาที
↓
Trigger Save
↓
แจ้งผู้เล่น
↓
Restart
แต่ไม่ควรออกแบบ Database ให้ Save เฉพาะตอน Restart เท่านั้น
ระบบ Player Data ควรมี Auto Save และ Save Mechanism ของตัวเองอยู่แล้ว
㉑ ทำไมไม่ควรพึ่ง Scheduled Event อย่างเดียว
เอกสาร txAdmin เตือนว่าไม่ควรพึ่ง Events เป็นกลไกเดียวในงานที่ต้องการ Consistency
เพราะมีสถานการณ์ที่ Server Resource อาจไม่ได้ทำงานในเวลาที่ Event เกิด
ดังนั้นข้อมูลสำคัญควรถูก Save ตามระบบปกติด้วย
㉒ serverShuttingDown Event คืออะไร
เมื่อ Server กำลังจะ Shutdown txAdmin สามารถ Broadcast
txAdmin:events:serverShuttingDown
Event นี้เกิดได้จาก
Scheduled Restart
Manual Restart
Stop
System Action
จึงครอบคลุมกว้างกว่า Scheduled Restart อย่างเดียว
㉓ serverShuttingDown มีข้อมูลอะไร
ข้อมูลสำคัญ ได้แก่
delay
author
message
โดย delay คือระยะเวลาที่ txAdmin จะรอก่อน Kill Server Process ตาม Event Data ปัจจุบัน
Developer สามารถนำไป Integrate Resource ได้
㉔ Scheduled Restart กับ Manual Restart ต่างกันอย่างไร
Scheduled Restart
ถึงเวลาที่ตั้งไว้
→ txAdmin Restart อัตโนมัติ
Manual Restart
Admin
→ กด Restart
Manual Restart ไม่จำเป็นต้องตรงตาม Schedule
แต่ทั้งสองกรณีสามารถเกี่ยวข้องกับ Server Shutdown Events ได้
㉕ สามารถ Skip Restart ครั้งถัดไปได้ไหม
txAdmin ปัจจุบันมี Concept ของการ Skip Scheduled Restart และมี Event
txAdmin:events:scheduledRestartSkipped
เมื่อ Admin Skip Scheduled Restart
มีประโยชน์กรณี
Event ใหญ่กำลังเล่น
Maintenance เลื่อนเวลา
Server เพิ่ง Restart ไป
Developer กำลังทดสอบระบบ
㉖ Skip ครั้งหนึ่งแปลว่าปิด Schedule ถาวรไหม
ไม่ควรถือว่าเหมือนกัน
การ Skip Next Scheduled Restart คือการข้ามรอบที่กำลังจะมาถึง
ไม่ใช่จำเป็นต้องหมายถึงลบ Schedule ทั้งหมด
หลัง Skip ให้ตรวจ Next Restart อีกครั้งเพื่อให้แน่ใจว่ารอบต่อไปยังถูกต้อง
㉗ scheduledRestartSkipped มีข้อมูลอะไร
Event ปัจจุบันสามารถมีข้อมูล เช่น
secondsRemaining
temporary
author
ช่วยให้ Resource รู้ว่า Scheduled Restart ที่กำลังจะเกิดถูก Skip
เหมาะกับระบบที่มี Maintenance UI ของตัวเอง
㉘ Restart ชั่วคราวนอก Schedule ทำได้ไหม
txAdmin สามารถควบคุม Server Restart ด้วยระบบ Admin ได้อยู่แล้ว
หากต้อง Restart เพิ่มนอกเวลาปกติสามารถใช้ Manual Restart ตามขั้นตอน Maintenance
ไม่จำเป็นต้องเปลี่ยน Schedule ถาวรทุกครั้ง
㉙ ตั้งหลายรอบต่อวันดีไหม
ได้ หากเหมาะกับ Server
ตัวอย่าง
06:00
12:00
18:00
00:00
ข้อดีคือ Player จดจำรอบเมืองได้ง่าย
และ Staff สามารถวาง Maintenance ตามรอบที่แน่นอนได้
㉚ ควรตั้งเวลาตรงช่วงคนเยอะไหม
ถ้าเลือกได้ ควรหลีกเลี่ยง Peak Time
ตัวอย่าง Player สูงสุดช่วง
20:00–23:00
อาจไม่เหมาะกับ Scheduled Restart เวลา
21:00
เว้นแต่ Server Community คุ้นเคยกับ Schedule นี้แล้ว
㉛ เวลา Restart ที่ดีควรดูจากอะไร
ดูข้อมูลจริง เช่น
Concurrent Players
Peak Hours
Staff Availability
Backup Window
Database Maintenance
Resource Update Time
ตั้ง Restart ให้สัมพันธ์กับ Operation ของ Server
ไม่ใช่ Copy เวลา Server อื่นมาใช้ตรง ๆ
㉜ Restart ตอน 00:00 ดีไหม
ใช้ได้ แต่ Server จำนวนมากก็อาจมี
Backup
Cron Job
Database Maintenance
Log Rotation
ช่วงเวลาเดียวกัน
หากทุก Service ทำงานหนักพร้อมกันอาจสร้าง Load Spike
ควรกระจาย Maintenance Job หาก Server มีระบบจำนวนมาก
㉝ Scheduled Restart ช่วย RAM ไหม
เมื่อ FXServer Process Restart RAM ที่ Process ใช้จะถูก Release และ Process ใหม่เริ่มต้นใหม่
จึงมักเห็น Memory Usage ลดลง
แต่หาก RAM เพิ่มขึ้นอย่างรวดเร็วทุก Cycle ต้องตรวจ Resource
ไม่ควรแก้ด้วยการเพิ่มจำนวน Restart อย่างเดียว
㉞ Scheduled Restart ช่วยแก้ Lag ไหม
อาจทำให้ Server State กลับมาสะอาดชั่วคราว
แต่ Lag ที่มาจาก
CPU
Slow Query
Network
Poor Script
Entity Spam
จะกลับมาอีก
ต้องวิเคราะห์ Performance ควบคู่กัน
㉟ Auto Restart เมื่อ Server Crash เหมือน Scheduled Restart ไหม
ไม่เหมือนกัน
Scheduled Restart
เกิดตามเวลาที่กำหนด
Crash/Health Restart
เกิดจาก Server มีปัญหาและระบบ Monitoring พยายาม Recover
จุดประสงค์ต่างกัน
ไม่ควรสับสนว่า Server Crash คือ Scheduled Maintenance
㊱ Server Crash บ่อยแต่ Auto Restart กลับมาได้ ถือว่าจบไหม
ไม่จบ
Auto Restart ช่วย Availability แต่ไม่ได้แก้ Crash
ถ้าเกิด
Start
↓
Crash
↓
Restart
↓
Crash
ให้ตรวจ
Console
Crash Logs
Resource ล่าสุด
Artifact
Database
Server Configuration
㊲ Default Warning ปิดได้ไหม
txAdmin มี Convar
txAdmin-hideDefaultScheduledRestartWarning
ค่า Default คือ
false
หมายความว่า Default Warning จะแสดงตามปกติ
สามารถเปิดการซ่อน Warning เดิมได้เมื่อคุณสร้างระบบ Notification ของตัวเอง
㊳ ตัวอย่างซ่อน Default Warning
หากต้องการใช้ Notification ของ Framework เอง สามารถกำหนดตามระบบ
txAdmin-hideDefaultScheduledRestartWarning
แล้วฟัง Event
txAdmin:events:scheduledRestart
เพื่อแสดง UI ของ Server เอง
ควรทดสอบก่อนใช้ Production
㊴ ทำ Custom Restart Notification ได้ไหม
ได้
ตัวอย่างแนวคิด
txAdmin Event
↓
Custom Resource
↓
NUI Notification
↓
ประกาศภาษาไทย
เช่น
เมืองจะรีสตาร์ตในอีก 5 นาที
กรุณาจบกิจกรรมและเตรียมออกจากเมือง
ทำให้ UI กลมกลืนกับ Theme ของ Server
㊵ Discord แจ้ง Restart ได้ไหม
txAdmin มี Discord Integration และ Scheduled Restart Warning สามารถเชื่อมกับระบบ Notification ที่เกี่ยวข้องได้ตาม Configuration
Server Community อาจใช้ร่วมกับ
Discord Announcement
In-game Announcement
Maintenance Channel
แต่ไม่ควรพึ่ง Discord อย่างเดียว เพราะ Player ที่อยู่ในเกมอาจไม่ได้เปิด Discord
㊶ ก่อน Scheduled Restart ต้อง Backup Database ทุกครั้งไหม
ไม่จำเป็นต้อง Full Backup ทุก Restart
ควรแยก
Player Save
กับ
Database Backup
Player Save ควรเกิดเป็นประจำ
ส่วน Full Database Backup สามารถตั้งตาม Backup Policy เช่นรายวันหรือก่อน Maintenance ใหญ่
㊷ Scheduled Restart กับ Backup ควรจัดลำดับอย่างไร
ตัวอย่าง Workflow
Player Save
↓
Scheduled Restart
↓
Server Online
ส่วน Full Backup อาจทำ
ก่อน Update ใหญ่
หรือ
ตาม Backup Schedule
ไม่ควรทำ Heavy Database Backup ในช่วงเดียวกับ Startup หากทำให้ Server Load สูง
㊸ Update Resource ก่อน Scheduled Restart ดีไหม
เป็นช่วงที่เหมาะในหลายกรณี
ตัวอย่าง
ก่อน Restart
↓
Maintenance
↓
Update Resource
↓
Restart
↓
ทดสอบ
แต่ไม่ควรโยน Update จำนวนมากลง Production โดยไม่มี Test Server หรือ Backup
㊹ Update Artifact ใช้ Scheduled Restart อย่างเดียวพอไหม
ไม่พอ
Artifact Update ต้องจัดการ FXServer Binary
โดยทั่วไปควร
Backup
↓
Stop Server
↓
Update Artifact
↓
Start Server
↓
ตรวจ Console
Scheduled Restart ไม่ได้ Download Artifact ใหม่ให้อัตโนมัติเพียงเพราะถึงเวลารอบเมือง
㊺ Restart แล้ว Resource ไม่ขึ้นทำอย่างไร
เปิด txAdmin Live Console ตรวจทันที
หา
Failed
Error
Missing dependency
Couldn't start
Database
อย่ารอรอบ Auto Restart ถัดไปโดยหวังว่าจะหายเอง
Resource Error จาก Config จะกลับมาเหมือนเดิมทุก Restart
㊻ Restart แล้ว Database ไม่เชื่อม
ตรวจ
Database Service
Connection String
Host
Port
Credentials
Startup Order
ถ้า Database กับ FXServer อยู่เครื่องเดียวกันและ Boot พร้อมกัน อาจต้องจัด Service Dependency/Retry ให้เหมาะสม
ไม่ควรเพิ่ม Restart Schedule เพื่อแก้ปัญหานี้
㊼ หลังตั้ง Auto Restart ควรทดสอบอย่างไร
อย่ารอ Production รอบแรกโดยไม่ตรวจ
ให้ดู
Next Restart
Warning ทำงาน
Server Restart จริง
FXServer กลับมา Online
Resources Start ครบ
Database Connected
Player เข้าได้
จากนั้นจึงถือว่า Schedule ใช้งานได้
㊽ Checklist ตั้ง Auto Restart FiveM
ตรวจให้ครบ
txAdmin ทำงานปกติ
Server Time ถูกต้อง
Timezone ถูกต้อง
Restart Schedule ถูกต้อง
Next Restart ตรงเวลา
Warning เปิดอยู่
Player Save ทำงาน
Database ปกติ
ไม่มี Resource Error
หลัง Restart Server กลับ Online
Resources Start ครบ
Staff รู้เวลารอบเมือง
มี Backup Policy
โดยเฉพาะ Timezone ควรตรวจทุกครั้งหลังย้าย VPS หรือเปลี่ยน Container
㊾ ตัวอย่าง Schedule สำหรับ RP Server
ตัวอย่างที่เข้าใจง่าย
06:00
12:00
18:00
00:00
คือ Restart ทุกประมาณ 6 ชั่วโมง
แต่อาจเปลี่ยนเป็น
06:00
18:00
ถ้า Server เสถียรและต้องการเพียง 2 รอบ
สิ่งสำคัญคือดู Server Data จริง ไม่ใช่จำนวน Restart มากที่สุด
㊿ สรุปวิธีตั้ง Auto Restart FiveM Server ด้วย txAdmin
การตั้ง Auto Restart ผ่าน txAdmin ใช้ระบบ Scheduled Restarts
Workflow ที่ควรใช้คือ
1. Login txAdmin
2. เปิด Settings/Restarter
3. ตรวจ Server Time และ Timezone
4. เพิ่มเวลา Scheduled Restart
5. Save
6. ตรวจ Next Restart
7. ตรวจ Warning
8. เตรียมระบบ Player Save
9. ทดสอบ Restart จริง
10. ตรวจ Console หลัง Server Online
txAdmin ปัจจุบัน Broadcast Warning ก่อน Scheduled Restart ที่
30
15
10
5
4
3
2
1 นาที
และ Resource สามารถรับ Event
txAdmin:events:scheduledRestart
โดยใช้ secondsRemaining เพื่อนำไปทำ Notification หรือ Save Workflow เพิ่มเติม
นอกจากนี้ยังมี
txAdmin:events:serverShuttingDown
สำหรับช่วงที่ Server กำลัง Shutdown และ
txAdmin:events:scheduledRestartSkipped
เมื่อตาราง Restart รอบถัดไปถูก Skip
สำหรับ Production Server comsiam แนะนำให้ตั้งเวลา Restart ให้ Player จำง่ายและหลีกเลี่ยง Peak Time หากทำได้ แต่ไม่ควร Restart ถี่เพียงเพื่อซ่อนปัญหา RAM, Lag หรือ Resource Error
Auto Restart ที่ดีต้องทำงานร่วมกับ
Player Auto Save
Database Reliability
Backup
Monitoring
Console Logs
Maintenance Workflow
ไม่ใช่พึ่ง Restart เพียงอย่างเดียว
เมื่อกำหนด Timezone ให้ถูก ตรวจ Next Restart และทดสอบ Warning/Startup จนครบ ผู้ดูแล FiveM Server ของ comsiam จะสามารถเปิด Server ระยะยาวได้เป็นระบบมากขึ้น และลดความเสี่ยงจากการลืม Restart หรือ Restart เมืองผิดเวลา
Comments
Post a Comment