問題タブ [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.
python - Pyro: サーバーからクライアントにクラスを渡し、クライアント側でそのクラスのインスタンスをインスタンス化することは可能ですか?
高レベルの概要:ファイルと何らかの関数をserver.py
含むクラスがあり、両方ともサーバーに保存されています。また、リモートで実行され、pyro を使用してサーバーに接続する もあります。サーバーからクライアントにクラスを渡し、クライアント側で関数を実行できる方法はありますか?WorkTask.py
execute
client.py
WorkTask
WorkTask.execute()
macos - PyRO 4 - 登録されたオブジェクトを見つけようとするとルックアップが失敗します
私はこの問題と約 1 週間戦っていますが、解決策を見つけるためにどこを見ればよいかわかりません。
タイトルが示すように、pyro オブジェクトの登録に成功するとすぐに、それを操作するために NS でそれを見つけようとしますが、ルックアップは失敗します。
状況をより明確にするために、コードの簡略版を投稿します。
Server は PyRO NS が起動するクラスです:
TextAnalyzer クラスは、ファイルに関する統計を行うために使用するクラスです。
接続クラスは、NS、sftp、および ssh 接続でオブジェクトを見つけるのに役立つすべてのメソッドを提供し、実行中のオブジェクトの PID を見つけます...
だから、基本的に、これは私がやっていることです。
問題は、NS で find_obj() メソッド (Connection クラスに含まれる) 内でリモート オブジェクトを見つけようとしているときにルックアップが失敗することですが、リモート オブジェクトが正常に登録されたことは確かです。
与えられたエラーは、Pyro4.errors.NamingError からの「不明な名前」です。
なぜ機能しないのか、まったくわかりません...
その他の仕様: PyRO 4 と Python 3.4 を使用して、Mac OS X Mavericks で実行しています。
返信ありがとうございます。
python - Pyro のグローバル オブジェクト
関数を RPC 経由でエクスポートしたいと考えています。したがって、Python には Pyro4 を使用します。これはこれまでのところ機能します。ここで、RPC サーバーに属するデータに対してもその関数を機能させたいと考えています。これは可能ですか?もしそうなら、どのように?
listIwantToWorkWith にアクセスするには myrpcstuff.myrpcFunction() に何を書く必要がありますか、またはリストをグローバルにマークする必要がありますか?
nameservers - Pyro.Naming.NameServerStarter ドキュメント
Pyro.Naming.NameServerStarter.start() を使用したいのですが、ドキュメントが見つかりません。'pyro-ns' よりも優れています。また、Pyro モジュールを更新したばかりなので、なぜ y が Pyro4 モジュールを取得できないのかわかりません。Pyro モジュールしか到達できないので、Pyro4.naming.startNS() を試すことさえできません。
python - クラス定義とともにPythonオブジェクトをシリアライズする
Python を使用して RPC 呼び出しを行う方法を理解しようとしています。クラスを定義し、そのクラスのインスタンスを作成するメソッドを公開する愚かなサーバーがあります。
のインスタンスを取得したいクライアントGreeter
:
問題は、ユーザー定義オブジェクトのインスタンスを返すことを許可するフレームワーク、またはオブジェクトの属性を持つ dict のみを返すフレームワーク (たとえば、Pyro4) を見つけられなかったことです。
以前は Java RMI を使用していました。この場合、必要に応じて、クライアントがコンパイル済みのクラスをダウンロードできるサーバー上のコードベースを指定できます。Pythonにこのようなものはありますか?クライアントがクラスの完全に機能するインスタンスを持つことができるように、オブジェクトをクラスのバイトコードと一緒にシリアル化できるフレームワークでしょうか?
python - Pyro & WSGI ラズベリーパイ
私は現在、作業中のロボットを制御できる Web アプリケーションに取り組んでいます。何らかの理由で、Pyro を正しく動作させることができません。すべてが機能しているように見えますが (エラーはありません)、Web ページのボタンをクリックしても「サーバー」のメソッドが呼び出されません。
ここに私の「サーバーコード」があります:
出力が表示されるため、Robot() クラスがセットアップされていることはわかっていますが、他のメソッドはどれも出力を書き込んでいません。
Webページが呼び出す「クライアントコード」は次のとおりです。
robot が URI に設定されており、parameters 変数に正しい情報が含まれていることは既に確認済みです。そして、コードは必要に応じて「if」ステートメントに流れています。しかし、Robot() クラスでセットアップが呼び出された後は、どのメソッドも呼び出されません。誰にもアイデアはありますか?
python-3.x - Pyro4、受信: 十分なデータがありません
Pyro4 を使用してサーバー上で関数を実行しようとしています。コードを見てください: =========================Client================ ======
===========================サーバー===================== ====
========================ネーミングサーバー=======================
================================================== =========
エラーが発生しました: " Pyro4.errors.ConnectionClosedError: received: not enough data ". 以下の完全なスタック トレースを見てください。
メソッド(関数)に渡された関数をサーバーに実行させたい。
PS: Windows7、Python 3.4.1
同様の質問 ( How to send a function to a remote Pyro object ) を見つけましたが、うまくいきませんでした。コールバック デコレーター @pyro4.callback を使用しようとしましたが、公式の例 ( https://github.com/delmic/Pyro4/tree/master/examples/callback : server2.py, client2.py) でさえ機能しませんでした (python を使用) 3.4 および python 2.7) => メッセージのみ:「サーバー: クライアントへのコールバック 1 を実行しています」が表示され、何も起こりません。
ありがとう