xin chào mọi người mình đang làm một project nhỏ với socketio, đấy
là game bóng bàn. mình không biết kiến trúc nào cho đúng. mình có nghĩ
ra một vài kiịch bản như sau:
kịch bản 1:
2 client liên tục nhận vị trí của 2 cây vợt tự tính toán vị trí của qủa
bóng, server chỉ chịu trách nhiệm thông báo vị trí của 2 cây vợt cho 2
client.
ưu điểm: server hầu như k phải làm gì
nhược điểm: có thể phát sinh vấn đề tính toán sai lệch gữa 2 client dẫn đến lỗi
kịch bản 2:
-client gửi 2 vị trí của cả 2 vợt, bóng, sân, lên server
-server tính toán và trả lại frame tiếp theo cho client
ưu điểm: đảm bảo sự đồng bộ của 2 client, không phụ thuộc các yếu tố khách quan bên client
nhược điểm: server tính toán nhiều, sợ không đảm bảo tốc độ và thời gian thực vì cũng phải 20 đến 50 frame một giây.
mn cho mình hỏi là một game online thường có kiến trúc như thế nào để tối ưu ạ, ngoài 2 cách trên có cáchs nào tốt hơn không. hank all