配列の方が高速であることは間違いありません。これは、サポートを計画しているユーザーの数と、スケーリングをどのように計画しているかによって異なります。誰でも「ゲーム」を作成できる「サービス」を作成しようとしていて、プラットフォームで数十万の「ゲーム」をサポートすることを計画している場合は、Web 層とバズをスケーリングする必要がある場合があるため、Redis を使用してください。ある Web サーバーが別の Web サーバーに表示されません。
ただし、一度に 1 つのゲームをサポートするためにこれを 1 回限りのこととして行う場合、おそらく友人が Wi-Fi 経由でラップトップに接続している場合でも (ただし、インターネット経由の小さな Heroku サーバーでも問題なく動作します)、私は. d 配列を使用します。外部 DB (Redis と同じくらい速いものでも) と通信すると、複雑さが増します。Node.js はイベント化され、シングルスレッドであるため、競合状態について心配する必要はありません。あなたは書くことができます
var firstPresser;
socket.on('press', function (presser) {
if (!firstPresser) {
firstPresser = presser;
// return "You pressed first"
} else {
// return "You didn't press first"
}
});
私の擬似コードを許してください。私は特にsocket.ioに精通していませんが、あなたは要点を理解していると思います.