私は最近、ipcontroller/ipengineクラスタリングプログラムをラップするためにHTTPサーバーフロンティアを開発したいと考えています。サーバーは、BaseHTTPServerから派生した単純なものです。サーバーがHTTP Get要求を受け取ると、そのdo_GETメソッドはいくつかのmec.execute()メソッドを呼び出してジョブを終了します。ここにコードサンプルがあります。IPython並列コンピューティングにおける同期の問題
do_GET
{
b = parameter
mec.scatter("a", b)
mec.execute("c=fun(a)")
d = mec.gather("c")
write d
}
文mec.execute( "c = fun(a)")で同期の問題が発生しますか?私の推測から、値 "fun(a)"を持つ変数 "c"が各ipengieで作成されます。 2つのスレッドが異なるパラメータと同時にdo_Getメソッドを呼び出す場合、それぞれのipengineの "c"の値はどのようになりますか。