問題タブ [pyro]

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.

0 投票する
3 に答える
1942 参照

python - Djangoから呼び出された長時間実行プロセスの状態をどのように保存する必要がありますか?

ユーザーがファイルをアップロードできるようにするDjangoアプリケーションに取り組んでいます。これらのファイルをAmazonS3に送信する前に、これらのファイルに対してサーバー側の処理を実行する必要があります。この質問このブログ投稿への回答を読んだ後、これを処理する最善の方法は、ビューハンドラーにPyroリモートオブジェクトのメソッドを呼び出して非同期で処理を実行させ、すぐにHttp200をクライアントに返すことであると判断しました。 。私はこれのプロトタイプを作成しましたが、うまく機能しているようですが、クライアントがアプリケーションをポーリングしてファイルが処理されてS3にアップロードされたかどうかを確認できるように、処理の状態も保存したいと思います。

ポーリングは簡単に処理できますが、プロセス状態を格納する適切な場所がわかりません。Pyroプロセスで書き込み可能で、ポーリングビューで読み取り可能である必要があります。

  • 私は、実際には30〜60秒間しか持続しないはずのデータの列をデータベースに追加することを躊躇しています。
  • Djangoの低レベルキャッシュAPIを使用し、ファイルIDをキーとして使用することを検討しましたが、これが実際にキャッシュフレームワークが設計されているものであるとは思わず、予期しない問題が発生する可能性があるかどうかはわかりません。このルート。
  • 最後に、処理を行うPyroオブジェクトに状態を格納することを検討しましたが、それでも、ビューがPyroオブジェクトから状態をクエリするかどうかを認識できるように、ブール値の「processing_complete」データベース列を追加する必要があるようです。

もちろん、データベースからの状態の分離には、データの整合性に関する懸念もあります(サーバーがダウンし、このすべてのデータがメモリ内にある場合はどうなりますか?)。経験豊富なWebアプリケーション開発者がこの種のステートフル処理をどのように処理するかを聞いています。

0 投票する
1 に答える
3936 参照

python - マルチプロセッシングモジュールとパイロの比較?

コンピューティングクラスターでの並列ジョブの基本的な管理にはpyroを使用します。各計算ノードですべてのコアを使用する責任があるクラスターに移動しました。(以前のクラスターでは、各コアは個別のノードでした。)Pythonマルチプロセッシングモジュールはこれに適しているようです。リモートプロセス通信にも使用できることに気づきました。誰かがリモートプロセス通信に両方のフレームワークを使用したことがあるなら、それらが互いにどのように積み重なっているかを聞いていただければ幸いです。マルチプロセッシングモジュールの明らかな利点は、2.6から組み込まれていることです。それとは別に、どちらが良いかを判断するのは難しいです。

0 投票する
3 に答える
3746 参照

python - Pygame のネットワーク サポート

私は pygame でシンプルなマルチプレイヤー経済ゲームを作っています。これは一定の長さのターンで構成され、最後にデータが中央サーバーに送信されます。データに対していくつかの簡単な計算が行われ、結果がプレイヤーに送り返されます。私の質問は、ネットワーク サポートをどのように実装するかです。私は Twisted と Pyro を調べていましたが、提案やアドバイスをいただければ幸いです。

0 投票する
2 に答える
11643 参照

python - PyRoとRPyCのPythonライブラリの長所と短所は何ですか?

Python用のリモートプロシージャコールエンジンを探していますが、PyRo(Pythonリモートオブジェクト)RPyC(リモートPythonコール)の両方が私が探しているものであることがわかりました。

しかし、私はそれらが互いにどのように比較され、それらの長所と短所は何であるかを知りたいです。

0 投票する
3 に答える
917 参照

python - Python、Pygame、Pyro:ネットワーク経由でサーフェスを送信するには?

私は pygame と pyro を使用して python でプロジェクトに取り組んでいます。データ、関数、クラスなどを簡単に送信できます。ただし、転送中に死ぬことなく、ワイヤを介してサーフェスを送信することはできません。

サーバーはdef __init__、回線を介してアクセスされるクラスのサーフェスを作成します。

サーバーでは、画面は として印刷されSurface(800x800x32 SW)ますが、クライアントによって取得されるとSurface(Dead Display).

ただし、注意すべきことがあります。アクセサー関数を使用して画面を取得すると、表示が消えます。print Player.screen変数を取得するために使用すると、代わりに、画面への Pyro ポインターのように見えるものを取得します: <Pyro.core._RemoteMethod instance at 0x02B7B7B0>. 多分私はこれを逆参照できますか?

おそらく私は太っていますが、誰か洞察を持っていますか? ありがとう。:)

0 投票する
1 に答える
6093 参照

python - Python マルチプロセッシング モジュールを使用して開始されたサブプロセスを切り離す

Python で mutliprocessing モジュールを使用してプロセスを作成したいのですが、サブプロセスを作成したプロセスが終了した後もプロセスが実行され続けるようにします。

subprocess モジュールと Popen を使用して必要な機能を取得できますが、スクリプトとしてではなく、関数としてコードを実行したいと考えています。これを行う理由は、pyro (python リモート オブジェクト) オブジェクトの作成を簡素化するためです。マルチプロセッシングを使用して別のプロセスで Pyro オブジェクト リクエスト ハンドラを開始したいのですが、Pyro オブジェクトをサポートするプロセスが引き続き実行されている間、メイン プロセスを終了させたいです。

0 投票する
2 に答える
1213 参照

python - 2.4でWindows非同期Popenプロセスを強制終了します

プロセス(Pyroサーバー)を開き、開いたプロセスを呼び出して情報を取得するためのテストスクリプトがあります。すべてが完了すると、プロセスを閉じる必要があります。これはすべて、ステージングサーバーでの自動テストの一部です。

Python 2.6では、次のことができます。

残念ながら、私はここでPython 2.4にロックされているため、その関数にアクセスできません。もちろん、スクリプトを終了させるだけで、サーバーは存続します。スクリプトが終了する前にそのプロセスを閉じる/強制終了するにはどうすればよいですか?

0 投票する
1 に答える
1239 参照

python - パイロとパイソン

Python プログラムで PyRo を使用しています。そして、私には問題があります。クラス B: callFromProxy では 0 を出力しますが、callfun では正しい値 = 10 を出力します。なぜですか? 直し方?

0 投票する
1 に答える
849 参照

ant - jython、pyro、ant の組み合わせを使用しているときに IOException エラーを停止する方法は?

だから、このおかしな問題の素晴らしいローダウン:

短いバージョン: 使用しているこのソフトウェアの配布システムを構築しています。基本的に、ビルド アーティファクトを取得し、それを ftp サーバーに保存します。ftp サーバーは、スクリプトを実行してサーバーにパッチを適用する複数のクライアントに渡します。

長いバージョン:

配信サーバー1台

複数のクライアント サーバー

ソフトウェア: jython 2.5.1、ant 1.8.0、pyro 3.10

配布サーバーには、FTP サーバーと PYRO クライアントが実行されています。各クライアント サーバーには PRYO サーバーが実行されています。

PYRO クライアントは、パッチ手順を開始するように指示されると、すべてのクライアント サーバーのリストを含むマシン リストを読み取ります。次に、各 PYRO サーバーに 1 つずつ接続し、パッチ手順を実行します。手順は、getPatch (そのサーバーの最新のパッチを取得する)、StopServer (パッチを適用する必要があるものにアクセスしている、またはアクセスしていないソフトウェアを停止する)、パッチを適用、StartServer です。各プロセスは、いくつかのフォルダー名と他の構成パスを渡す ANT スクリプトを呼び出します。楽しい部分は、パッチを適用するときに発生します。エラーログについては、以下を参照してください。NDA の理由により、フォルダー名を削除する必要がありました。

ここが興味深いところです。手順の各セクションを個別に実行します。つまり、getPatch、StopServer などを一度に 1 つずつ手動で実行します。このバグは発生しません。物理的にマシンに行き、プロセスを実行しても、それは起こりません。4 つのプロセスすべてを順番に呼び出す場合のみ。これは、複数のファイルに対して ANT 置換スクリプトが呼び出される ApplyPatch フェーズ中に発生します。これは、JVM がファイルを一瞬または 2 秒間保持していることと関係があると考えられますが、これは ant のバグ ノートに従ってパッチが適用されていることを意味します。

要するに:

配布サーバー ==> jython ==> pyro 接続 ==> クライアント サーバー ==> jython ==> ant スクリプト

エラーログ:

org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) で invoke(Method.java:597) org.apache.tools.ant.Task.perform(Task.java:348) で.apache.tools.ant.taskdefs.Parallel$TaskRunnable.run(Parallel.java:433) at java.lang.Thread.run(Thread.java:619) 原因: java.io.IOException: Failed to delete <*名前を変更しようとしているときに snip>\bin\rep4698373081723114968.tmp 。org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) at org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 もっと見る 433) at java.lang.Thread.run(Thread.java:619) 原因: java.io.IOException: <*中略>\bin\rep4698373081723114968.tmp の名前を変更しようとして、削除に失敗しました。org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) at org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 もっと見る 433) at java.lang.Thread.run(Thread.java:619) 原因: java.io.IOException: <*中略>\bin\rep4698373081723114968.tmp の名前を変更しようとして、削除に失敗しました。org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) at org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 もっと見る

どんな助けでも大歓迎です。

0 投票する
2 に答える
951 参照

php - ルートディレクトリにwordpressがインストールされているサブディレクトリへのpyrocmsのインストール

しばらくこれにいたので、助けを求めたいと思いました。ルートにあるwordpressの.htaccessファイルは次のとおりです。

基本的に、pyrocmsがインストールされる「community」ディレクトリを無視するように求めています。コミュニティサブディレクトリにある私の.htaccessファイルは次のとおりです。

/ community / installerにアクセスしようとすると404(CI 404)が表示されます

さらに、uri_proticolに別の設定を試してみると、奇妙な結果が得られます。db接続エラーなど。インストーラーのメインページを表示することができましたが、それを超える手順はありません。

何かご意見は?サブディレクトリインストール用にpyrocmsを適切に構成するためのドキュメントが見つかりません。