問題タブ [orbited]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ActiveMQ : Stomp で Django Auth を使用する
私は電力監視に取り組んでおり、承認されたユーザーのみにライブ電力データを送信したいと考えています。一部のユーザーは自宅に電力センサーを設置することを選択し、他のユーザーはそれらのセンサーを見ています。各センサーはサンプルをTwistedバックエンドに送信します。目標は、このバックエンドがデータをブラウザーで実行されている Javascript に転送することです。
データを転送するための私の現在のソリューションは、Orbitedサーバーと MorbidQ のインスタンスです( MorbidQ は Stomp サーバーです)。システム内の各建物 (例はこちら) には、更新用の独自のチャネルがあります。ねじれたバックエンドは、MorbidQ チャネルを介して誰でも見ている人にデータをブロードキャストしますが、誰でも見ることができます。私のブログに、センサーからサイトへのデータ フローに関するエントリがあります。
多くの建物では、特定の建物内のライブ データを表示できるのは 2 人のユーザーのみである必要があります。可能であればDjango Authを使用したいと思います。そうでない場合は、何らかの回避策を使用したいと思います。
ユーザーごとにこれらのチャネルを保護する最も簡単な方法は何ですか? Django Auth を使用できますか? MorbidQ の代わりに RabbitMQ または ActiveMQ を使用する必要がありますか? このソリューションを安全に保つために、どのような手段を講じることができますか?
コーディングに関しては、C++ と Python に最も自信があります。
ありがとう!
django - orbitでdjangoミドルウェアを使用する必要があるフレームワークは?
クイック Google 検索で見た Django 軌道統合メソッドには、「request.user」などの Django 抽象化が含まれていないようです。"request.user" は特に重要です。なぜなら、セッション処理を再実装するつもりはない(間違っている可能性もある) からです (これは、悪いセキュリティ バグを引き起こす可能性があるように思えます)。
または、別のサーバーを使用する必要がありますか? 私は、安定した成熟した人気のあるソフトウェアを使用することを好みます。これは、維持および改善されます。Orbit と Django は資格があるようです。
php - Orbited、STOMP、およびMorbidQを使用した認証
私はOrbitedを使用して、PHPベースのWebサイトでCometチャットシステムを構築しています。ただし、現在、すべてのユーザーが任意のチャネルにサブスクライブまたは投稿できます。
私が探しているのは、ブラウザーにOrbitedサーバーから直接更新をリッスンさせ、他のすべてのアクション(サブスクライブ、送信)を、ソケットを介してOrbitedと通信するPHP認証レイヤーで処理させることです。これを行う方法はありますか、それともより堅牢なメッセージングキューが必要ですか?
php - PHP を Orbited に接続する
Web で良い彗星を検索し、私の最良の選択肢は何かを尋ねた後、私はOrbitedを選択しました。問題は、Comet に関する優れたドキュメントが必要な場合に見つからないことです。Orbited をインストールしましたが、問題なく動作しているようです。
基本的に、データベースを常にチェックして、新しいデータがあるかどうかを確認したいと考えています。存在する場合は、それをクライアントにプッシュしてホームページを更新したいのですが、データベースを常にチェックし、新しい情報を Orbited にプッシュしてからクライアントにプッシュする方法を説明する適切で明確なドキュメントが見つかりません。皆さんはそれを実装しましたか?
また、Orbited は何人のユーザーを処理できますか?
何か案は?
comet - JSONPロングポーリングは常に読み込まれます
JSONPを使用してロングポーリングを実行していますが、Firefoxが継続的に「読み込み中」スピナーをポップアップ表示して、ページの読み込みが完了していないように見せています。これを抑制する方法はありますか?
Orbitedチームにはこれを抑制するためのハックがあると言われていますが、Orbited.jsコードを見ると、それらが何であるかがわかりません。どんな助けでも大歓迎です。
javascript - トランスポートに Web ソケットを使用する JavaScript SSH クライアントを作成することは可能ですか?
オービット Web ソケットのようなものをトランスポート層として使用して、純粋な JavaScript で基本的な SSH クライアントを作成することは可能でしょうか? このような例は見当たりませんが、あると便利なようです。
orbited - 周回例外データはUnicodeであってはなりません
orbitedを使用していますが、本番モードでOrbitedをオンにすると、画面に次のエラーが表示されます。
-- <exception caught here> ---
File "/usr/lib/python2.6/dist-packages/twisted/web/server.py", line 150, in process
self.render(resrc)
File "/usr/lib/python2.6/dist-packages/twisted/web/server.py", line 157, in render
body = resrc.render(self)
File "/usr/local/lib/python2.6/dist-packages/orbited-0.7.10-py2.6.egg/orbited/transports/base.py", line 21, in render
self.conn.transportOpened(self)
File "/usr/local/lib/python2.6/dist-packages/orbited-0.7.10-py2.6.egg/orbited/cometsession.py", line 322, in transportOpened
self.cometTransport.flush()
File "/usr/local/lib/python2.6/dist-packages/orbited-0.7.10-py2.6.egg/orbited/transports/base.py", line 45, in flush
self.write(self.packets)
File "/usr/local/lib/python2.6/dist-packages/orbited-0.7.10-py2.6.egg/orbited/transports/htmlfile.py", line 42, in write
self.request.write(payload);
File "/usr/lib/python2.6/dist-packages/twisted/web/http.py", line 862, in write
self.transport.write(data)
File "/usr/lib/python2.6/dist-packages/twisted/internet/tcp.py", line 420, in write
abstract.FileDescriptor.write(self, bytes)
File "/usr/lib/python2.6/dist-packages/twisted/internet/abstract.py", line 170, in write
raise TypeError("Data must not be unicode")
exceptions.TypeError: Data must not be unicode
何が問題なのか、私にはまったくわかりません。誰かが私を正しい方向に向けることができますか?
django - 高性能でスケーラブルな Comet アプリケーションの開発
まあ、タイトルがほとんどを物語っています。できればもっと何かになるチャットアプリケーションを開発しようとしています.
主要なオプションとして Redis を使用した Tornado を調べました。Tornado は Comet サーバーであり、Redis でメッセージを取得するためのロング ポーリングに最適です。永続的なデータ ストアとしても使用するつもりです。気の利いたサブパブ機能を備えたメッセージキューとして。
しかし、Django、RabbitMQ、MongoDB、Orbited についても良いことを聞いています。JavaScript は私にとって大きな問題ではないので、Orbited の JavaScript サポートはあまり役に立ちません。
本当は、自分で選んだ道を進んで進んでいきたいのですが、計画に大きな欠陥がある場合は、何ヶ月も無駄にしていることに気付く前に、親切な人に指摘してもらいたいと思いますこれについて。
python - メッセージ キューを介したユーザー ベースの通知用の Comet
Comet (AJAX Push) を使用して個々のユーザーに通知を送信するアプリケーションを構築しようとしています。ほとんどの通知のタイムアウトはかなり短くなります。
RabbitMQ を実行しているので、AMQP を介してメッセージを送信するのが最も簡単です。Comet サーバーとキュー サーバーの両方が簡単に機能するように、個々のユーザーに対処する最善の方法は何かを考えています。
Carrotを Orbited、Tornadoなどで使用するなど、多くのソリューションを検討しました 。
comet サーバーがすべてのユーザーに対して 1 つのコンシューマー (キューを使用) を登録する場合、これらのコンシューマーはタイムアウト付きで保持するか、使用するたびに破棄する必要があります。どちらのソリューションもあまり有望ではないようです。Tornado/Carrot では、次のようなことが可能になると思います。
または、comet サーバーはキューのコンシューマーを 1 つだけ持つことができ、ユーザーが接続して使用するまで着信通知をキャッシュできる独自の軽量メッセージ キューを実装する必要があります。これは memcached が適しているように思えますが、私は経験がありません。
ここで最善のアプローチは何でしょうか?