2017-09-20 5 views
0

セロリと各プロセスで2つのプロセスを許可しました API要求を呼び出すための要件が​​あります。 これは同時に呼び出すべきではありません。 APIサーバーは同時要求をブロックします。 その機能が1つのプロセスで実行されている場合、その機能をロックできますか?並列処理から関数をロックする方法

def getlocaionadress(geocode): 
    address = get_address_from_db(geocode) 
    if not address: 
     address = fetchaddress(geocode) 

def fetchaddress(geocode): 
    address = sent_api_request(geocode) 
    return address 

fetchaddress関数がすでに1つのプロセスで呼び出されている場合は、ロックする必要があります。 これをどうすれば実現できますか? 複数のプロセスで実行されているAPI要求の並列呼び出しを回避する代替メカニズムはありますか。 私はセロリを使用しています。== 3.1.14、python 2.7

答えて

0

Lockで調整することができます。

wrapロックのある機能decoratorの機能がわからないと言っていますか?

関連する問題