2011-06-05 10 views
0

私はSudsと解析するのに2分以上かかるwsdlを持っています。私は短命のプロセスでクライアントオブジェクトを使いたいので、これは長すぎます。私はクライアントオブジェクトを静的リソースとして永続化して、毎回クライアントを作成するオーバーヘッドを避けたいと思います。いくつかの人々がクライアントオブジェクトを実行中のプロセスに格納するためにある種のsingletonパターンを提案しましたが、短命のプロセスが必要です。私はまた、whyの動的に作成されたクラスについての説明がうまくいきませんので、解決策があれば投稿するだけです。Pythonで動的クラスインスタンスをシリアル化するにはどうすればいいですか?

from suds.client import Client 

url = 'http://mssoapinterop.org/asmx/simple.asmx?WSDL' 
client = Client(url) 
print client 

酸洗が動作しないので、アドレス・ロケーションを使用してメモリからクライアントオブジェクトの正確なバイトをつかむバイナリBLOBとして格納し、後で戻ってメモリにロードするためにいくつかの方法があります?たぶんctypesを使用していますか?

答えて

0

あなたはsudsライブラリに固有の質問をしていますか?特定のライブラリに関連しない一般的なPythonの質問に質問を抽象化することができれば役に立ちます。

HTTP呼び出しからの戻り値を含むクライアント呼び出しの出力のデータのみに興味があるとします。返されたデータを動的ではない独自のクラス形式に変換してから、それを漬けてください。

とにかく問題があると思われるTCP接続の状態をシリアル化しようとしている場合は、

おそらくあなたは明確にすることができます。

+4

特定の図書館に関する質問をするOPに間違っているのは何ですか? –

+0

SudsはSOAPライブラリです。ほとんどのSOAPライブラリは、オブジェクトをxmlとの間で変換するために使用されるファイルにスタブクラスを書き込みます。 Sudsはメタクラスを使用してSOAPクライアントを構築するため、各プロセスのwsdlを解析する必要があります。 – tponthieux

+0

@Josh - これがpythonの質問かsudsの質問かどうかを明確にするだけです。私は泡については何もしませんが、多分Pythonのみの質問に答えることができます。 - 歓声 –

関連する問題