我正在使用 node.js、express 和 nowjs 构建网站/应用程序。用户登录我的网站后,他们可以使用箭头键移动精灵(除了其他服务)。第 i 个用户的精灵的位置保持在服务器端。
user[i] = { x : 0; y : 0 }
箭头按键被发送到服务器以更新精灵位置。
E.g. user[5].x += 5.
我不希望两个用户共享相同的位置(“冲突”)。因此,当服务器接收到按键时,服务器端函数会检查结果坐标是否等于“用户”数组中的某些坐标,如果是则忽略移动。
问题:当两个用户选择同时移动到坐标上时,我该如何处理?如果我理解正确,服务器端函数将同时被调用,并且两个用户最终将在相同的坐标上,因为在检查时,没有人拥有那组坐标吗?
或者,我是否安全,因为如果 2 个客户端同时调用一个服务器端函数(例如使用 nowjs),一个函数总是会一个接一个地被处理?