1

ユーザーがオンラインかどうかを確認し、オンライン ユーザーのリストを表示する最も簡単な方法は何ですか?

私が考えることができる唯一の方法は、最後のアクションのタイムスタンプを更新する定期的なポーリングサーバーであり、最後のタイムスタンプが xx 以上前の場合、ユーザーはオフラインと見なされます。しかし、それはあまりにも効率的な解決策とは思えません。

4

3 に答える 3

6

Authlogicはデフォルトでこれを行うことができ、非常に強力な優れた認証システムです。現在の認証システムをそれに移行することをお勧めします (システムがどのようにカスタマイズされているかにもよりますが、数日かかるかもしれません)。

アプリケーションを Authlogic に移行できない (または単に移行したくない) 場合は、上記のリンクからソース コードを確認し、ここでサンプル プロジェクトを確認してください。

于 2009-09-14T23:15:46.627 に答える
1

データベース セッション ストアを使用している場合は、セッション時間を確認できる可能性があります。updated_at が一定の時間を超えた場合、ユーザーがアクティブではなくなったと想定します。ただし、これも問題になる可能性があります。

正直なところ、何らかの定期的なサーバー ポーリングを行わずにアクティブなユーザー数を知るのは、やや難しいシナリオです。あなたの考えは悪いものではありません。

于 2009-09-14T23:07:28.707 に答える
0

アクティブなレコード セッション ストアを使用してオンライン ユーザーを一覧表示できます。こちらの github アプリを参照してくださいhttps://github.com/mohanraj-ramanujam/online-users

于 2013-07-15T05:17:50.377 に答える