Vật phẩm rơi trên đất, vật triệu hồi, timer đã xong lẽ ra phải biến mất. Nếu chúng không được dọn mà cứ tích tụ, server chạy càng lâu thì mỗi tick càng nhiều việc.
Vì sao Vật phẩm rơi trên đất, vật triệu hồi, timer đã hết hạn, dữ liệu tổ đội trống không được xóa kịp thời → Dẫn đến Danh sách phải duyệt mỗi tick dài thêm từng ngày → Trên màn hình Ngay sau bảo trì vẫn bình thường, vài ngày sau chỉ server hoặc khu vực đó ngày càng ì
Phụ trách chính Phát triển server (Đội phát triển game)
Việc cần làm (Đội phát triển game)
Ghi số đối tượng theo từng khu vực thành chỉ số để theo dõi xu hướng, đặt tuổi thọ và giới hạn số lượng cho từng loại đối tượng, dọn dẹp định kỳ.
Con số tham khảo
Với server duyệt qua mọi đối tượng một lần mỗi tick, số đối tượng tăng gấp đôi thì phần đó của thời gian tick cũng tăng gấp đôi.
Trên đồ thị
Tăng dần rồi rơi thẳng · Số đối tượng theo từng zone, thời gian tick của server
Chỗ cần xem
Số đối tượng (vật phẩm rơi trên đất, vật triệu hồi, timer) và thời gian tick theo từng zone và server, trong khoảng thời gian dài hơn chu kỳ bảo trì (vài tuần)
Đúng nếu
số đối tượng và thời gian tick bắt đầu thấp sau bảo trì, tăng mỗi ngày rồi rơi thẳng xuống mỗi lần bảo trì hoặc khởi động lại, lặp đi lặp lại, trong khi bộ nhớ vẫn dư
Loại trừ nếu
tick không đổi mà chỉ bộ nhớ tăng liên tục → rò rỉ bộ nhớ
Cách kiểm tra
Cần log và chỉ số của server, client game
Tìm hiểu thêm
Giống rò rỉ bộ nhớ ở chỗ càng chạy lâu càng tệ, nhưng khác ở chỗ bộ nhớ vẫn dư mà chỉ thời gian tick tăng. Nếu đồ thị số đối tượng có dạng răng cưa theo từng chu kỳ bảo trì thì là trường hợp này.
Nguồn
Actor Ticking in Unreal EngineEpic Games Actor và component nếu không được đặt khoảng cách riêng sẽ tick mỗi frame một lần, và có thể tắt tick khi không cần
AActor::SetLifeSpanEpic Games Đặt tuổi thọ (lifespan) cho actor thì actor tự bị hủy khi hết hạn