• Trong thời gian này, bạn không thể tạo bài mới, đăng comment, hay tạo tài nguyên mới để diễn đàn dọn dẹp nội dung.
    Diễn đàn sẽ sớm mở trở lại, chi tiết hãy theo dõi tại Discord
ZenCraft

Hỏi đáp Hỏi về TPS và một số vấn đề liên quan

  • Người tạo chủ đề Người tạo chủ đề ZenCraft
  • Ngày gửi Ngày gửi

ZenCraft

DEVELOPER
*Tôi đã đọc khá nhiều bài trên spigot về cái này nhưng... không hiểu.

Sau đây là một vài thắc mắc:
1. TPS là gì? Mang ý nghĩa gì với server?
2. Cách TPS bị giảm bởi plugin bất kì?
3. Nếu là 1 dev/coder thì làm sao để biết plugin mình code có làm giảm TPS không và cách fix?
4. Xem TPS của server ở đâu?

Mong được giải đáp ạ! ~ [-o<
Xin cảm ơn.


---------------------------------------------------------------------
Edit 1: thêm câu hỏi 4
 
*Tôi đã đọc khá nhiều bài trên spigot về cái này nhưng... không hiểu.

1. TPS là gì? Mang ý nghĩa gì với server?
2. Cách TPS bị giảm bởi plugin bất kì?
3. Nếu là 1 dev/coder thì làm sao để biết plugin mình code có làm giảm TPS không và cách fix?
4. Xem TPS của server ở đâu?

Đọc nhiều bài của spigot nhưng bạn không hiểu, ít nhất thì bạn cũng phải biết đc câu số 4

Vậy là bạn có đọc không mà hiểu?
 
1. TPS là viết tắt của Tick Per Second, Minecraft chạy trên chu kì tối đa 20 tick. Mỗi tick có chu kì ổn định ở 50ms. TPS càng cao nghĩa là chu kì hay thời gian xử lý 1 tick thấp thì càng mượt và ngược lại

2. Plugin có kĩ thuật tối ưu kém có thể gây lag, ví dụ chạy các task lớn ở luồng chính của server, tạo nhiều entity, iterate, collection không hiệu quả, gây ra memory leak...

3. Sử dụng spark hoặc Timings để tìm nguồn gây lag trong plugin, cách fix hoặc giảm thiểu thì không thể nói hết được, tuy nhiên cần nhớ: Cần xử lý cái gì nặng không liên quan đến bukkit (truy xuất database, tính toán phức tạp, gửi request..) thì cần thực hiện ở luồng ngoài (Asynchronous).
Nếu làm việc với các entity như armorstand thì hãy hạn chế spawn nó ra, hãy gửi packet lên client nếu có thể. Tuy nhiên đây là kĩ thuật phức tạp, yêu cầu hiểu rõ về network protocol của game. Có thể dùng API ngoài vì nhiều API có hỗ trợ packet level

4. /tps và /mspt

 
Cái này chỉ là những thứ cơ bản nhất trong muôn vàn kiến thức khác về backend của server. Nên dành thời gian tìm hiểu và nắm rõ
 
Nội dung tương tự Xem nhiều nhất Xem thêm

Thống kê nội dung

Tạo
ZenCraft,
Trả lời lần cuối từ
CursedKiwi,
Trả lời
3
Lượt xem
2,023
Quay lại
Trên cùng