問題タブ [gevent-socketio]
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 - フラスコ+Gevent-socketioを使用してwerkzeug/カスタムエラーページを機能させる方法
私はフラスコ+Gevent-socketiominiのウェブサイトを持っています。起動されます:
ただし、ビューでエラーが発生すると、次のように出力されます。
werkzeugデバッガーを表示する代わりに。また、私の習慣@app.errorhandler(500)
は呼ばれていません。
これはGevent-socketioを使用したときに発生し、通常のフラスコのWebサイトは正常に機能します。
何がエラーを処理し、デフォルトのフラスコの動作をキャンセルしているのだろうか...
django - WebSocketはdjangoの一般的なミドルウェアでエラーを生成します
私はDjango+gevent-socketio+Haproxyを使用しています。すべてのソケット機能は正常に機能しますが、バックグラウンドで次のようなエラーが発生します。ソケット用のHaproxyのヘッダーには、「status_code」を含まない非常に限定された属性があるため、失敗してエラーメッセージを送信しているようです。status_codeを追加できる手がかりはありますか?おそらく解決策はHaproxy構成にあります。ありがとう!
Gunicornサーバーをバックエンドとして使用しています
django - Redis と django-socketio
私は django-socketio とのチャットを構築し、それで redis を使用しようとしています。
私は非常に単純な event.py を持っています:
チャットは完璧に機能します。
今、私はredisを実装しようとしています:
メッセージは redis チャネルで公開されますが、.listen() を呼び出すと、何も機能しなくなります。.listen() がすべてを「ブロック」しているようです。ctr+C を使用してサーバーをエスケープすることさえできません
どうすればそれを解決できるかについてのアイデアはありますか? ありがとうございました!
編集:
これが私が今持っているものです:
それでもうまくいきません。
redis が gevent (django-socketio で使用) と連携するには、ユーザーがサブスクライブするときに Greenlet を開始する必要があります。したがって、次のようなものを追加する必要があります。
しかし、イベントを使用する必要があることを考えると、django-socketio でそれを行う方法がわかりませんでした
しかし、引数「self」を渡すことはできません。だから私は「self.spawn(self.listener)」を使うことができず、どうすれば違うやり方ができるのかわからない
django - GeventSocketIOWorkerには属性'socket'がありません
gunicornを使用してDjangoアプリケーションを実行する必要があります。私はドキュメントを読んで、私は私がすべきようにすべてを設定したと思いますが、私が実行すると
次のエラーメッセージが表示されます
django_socketioで実行すると、すべてが正常に機能します。本当に重要なことを見逃す必要があります。
ご協力ありがとうございました
socket.io - Socket.IO:サーバー側のクリーンアップに推奨されるパターンは何ですか?
切断時にクリーンアップするだけで十分ですか?明示的な切断を送信する前にブラウザが消えた場合はどうなりますか?
接続にバインドされたリソース(名前空間など)がリークされないようにするためのサーバー側のクリーンアップに推奨されるパターンは何ですか?
(重要な場合は、gevent-socketioを使用します)
python - Flask/gevent.socketio サーバーの python Windows サービスを作成するにはどうすればよいですか?
フラスコ/gevent SocketIOServer があり、サービスとして機能させる必要があります。
ただし、SvcStop から停止する方法がわかりません。実行すると、runserver が強制終了された後にコマンド ライン パラメータのサービス解析が行われるという奇妙な動作が発生します。これは、flask サーバーが実行されていることを意味します。Web ブラウザーからアクセスできますが、Service Manager には「開始されていません」と表示されます。たとえば、コマンド ラインで次のように実行します。
ライブリローダーを削除するという提案により、これが残ったコードです。それでも、同じ問題
def SvcDoRun(self): servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,servicemanager.PYS_SERVICE_STARTED,(self._svc_name_, ''))
python - クラスター環境でのセッション管理
さまざまなサーバーと DB を備えたクラスター環境にサイト (HAProxy -> Varnish -> nginx -> uWSGI -> Pyramid、gevent-socketio、gevent -> Cassandra) を実装する必要があります。使用できる最高のセッション管理手法は何ですか? . gevent-socketio がセッション管理を困難にしていることは理解していますが、Beaker、memchached、またはその他がそれをサポートしているかどうかはわかりません。
セッションを処理するための中央サーバーを備えた memcached (最初は負荷が大きすぎるとは考えていません)
各ノードへのセッションのレプリケーション (Redis または Cassandra はすぐにレプリケーションをサポートできると思います)
Cookieのみのセッション(危険だと思います)
Pyramid によってサポートされ、Cassandra をサポートし、gevent-socketio と連携できるセッション管理ソリューションはクールです。
django - Pythonのソケット
私のdjangoモジュールでsocketioを設定するのを手伝ってください。Windows7 OSを使用しています
ファイル wsgi.py
サンプルコード-from socketio import SocketIOServer
エラー-Unresolved import:SocketIOServer
Python と Django フレームワークは初めてです。
django - Django Gevent の統合
Gevent を Django フレームワークと統合する方法、統合のために Settings.py および wsgi.py ファイルで変更する必要がある設定。
Django から gevent http サーバー (ポート 8000) と gevent Web ソケット サーバー (ポート 9000) を起動します。
socket.io - socketio_manage - 名前空間
gevent socketio_manage、名前空間とは何か、名前空間内のメソッドが呼び出される方法について詳しく説明できる人はいますか?
多くのドキュメントをオンラインで確認しましたが、socketio_manage に関する明確な説明はありませんでした