Toplu RPC isteklerini gerçekleştirin.
Bu op, tek bir RPC isteğini veya bir grup isteği eşzamansız olarak gerçekleştirir. RPC istekleri üç ana parametreyle tanımlanır:
- "adres" (isteğin ana bilgisayar+bağlantı noktası veya BNS adresi) - "yöntem" (isteğin RPC yöntemi adı) - "istek" (RPC istek bağımsız değişkeninin serileştirilmiş protokol dizesi veya dize vektörü) .
Örneğin, localhost:2345 bağlantı noktasında çalışan bir RPC hizmetiniz varsa ve arabirimi aşağıdaki protokol bildirimiyle yapılandırılmışsa:
service MyService {
rpc MyMethod(MyRequestProto) returns (MyResponseProto) {
};
}
address = "localhost:2345"
method = "MyService/MyMethod"
Örneğin, tek, boş bir `MyRequestProto` göndermek için bu işlemi `request = ""` ile çağırın. 5 paralel boş istek göndermek için bu işlemi `request = ["", "", "", "", ""]` ile çağırın.
Daha genel olarak, "encode_proto" işlemi kullanılarak normal toplu tensörlerden "MyRequestProto" serileştirilmiş protolardan oluşan bir toplu oluşturulabilir ve "decode_proto" işlemi kullanılarak "MyResponseProto" serileştirilmiş proto yanıtı toplu tensörlere dönüştürülebilir.
NOT Serileştirilmiş protokol dizeleriyle çalışmak, bellekteki gerçek protokol nesnelerinin örneğini oluşturmaktan daha hızlıdır; dolayısıyla, bu iş akışı için özel çekirdekler yazmaya kıyasla herhangi bir performans düşüşü beklenmez.
Bağlantı başarısız olursa veya uzaktaki çalışan bir hata durumu döndürürse, operasyon bu istisnayı yerel olarak yeniden gündeme getirir.
Grafikte RPC hatalarını manuel olarak işlemeyi tercih ediyorsanız 'TryRpc' işlemine bakın.
İç İçe Sınıflar
sınıf | Rpc.Seçenekleri | Rpc için isteğe bağlı özellikler |
Sabitler
Sicim | OP_NAME | Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı |
Genel Yöntemler
Çıkış < TString > | Çıkış olarak () Tensörün sembolik tutamacını döndürür. |
statik RPC | |
statik Rpc.Seçenekler | failFast (Boolean failFast) |
statik Rpc.Seçenekler | protokol (Dize protokolü) |
Çıkış < TString > | cevap () 'İstek' ile aynı şekil. |
statik Rpc.Seçenekler | timeoutInMs (Uzun timeoutInMs) |
Kalıtsal Yöntemler
Sabitler
genel statik son Dize OP_NAME
Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı
Genel Yöntemler
genel Çıkış < TString > asOutput ()
Tensörün sembolik tutamacını döndürür.
TensorFlow işlemlerinin girdileri, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girişin hesaplanmasını temsil eden sembolik bir tanıtıcı elde etmek için kullanılır.
public static Rpc create ( Kapsam kapsamı, İşlenen < TString > adresi, İşlenen < TString > yöntemi, İşlenen < TString > istek, Seçenekler... seçenekler)
Yeni bir Rpc işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.
Parametreler
kapsam | mevcut kapsam |
---|---|
adres | '0-D' veya '1-D'. RPC sunucusunun adresi (yani ana bilgisayar_adı:bağlantı noktası). Bu tensörün 1'den fazla öğesi varsa birden çok paralel rpc isteği gönderilir. Bu argüman 'yöntem' ve 'istek' ile yayınlanır. |
yöntem | '0-D' veya '1-D'. RPC sunucusundaki yöntem adresi. Bu tensörün 1'den fazla öğesi varsa birden çok paralel rpc isteği gönderilir. Bu argüman 'adres' ve 'istek' ile yayınlanır. |
rica etmek | '0-D' veya '1-D'. Serileştirilmiş protokol dizeleri: rpc isteği bağımsız değişkeni. Bu tensörün 1'den fazla öğesi varsa birden çok paralel rpc isteği gönderilir. Bu argüman 'adres' ve 'yöntem' ile yayınlanır. |
seçenekler | isteğe bağlı nitelik değerlerini taşır |
İade
- yeni bir Rpc örneği
genel statik Rpc.Options failFast (Boolean failFast)
Parametreler
başarısızHızlı | "boolean". "Doğru" ise (varsayılan), bağlantı başarısızlıkları (yani sunucunun hemen yanıt vermemesi) bir RPC hatasına neden olur. |
---|
genel statik Rpc.Options protokolü (Dize protokolü)
Parametreler
protokol | Kullanılacak RPC protokolü. Boş dize, varsayılan protokolün kullanılması anlamına gelir. Seçenekler 'grpc'yi içerir. |
---|
genel Çıkış < TString > yanıt ()
'İstek' ile aynı şekil. Serileştirilmiş protokol dizeleri: rpc yanıtları.
genel statik Rpc.Options timeoutInMs (Uzun timeoutInMs)
Parametreler
zaman aşımıInMs | 'int'. '0' (varsayılan) ise, çekirdek RPC isteğini çalıştırır ve yalnızca RPC son tarihi geçtiğinde veya oturum zaman aşımına uğradığında zaman aşımına uğrar. Bu değer "0"dan büyükse, RPC'nin "timeout_in_ms"den uzun sürmesi durumunda operasyon bir istisna oluşturacaktır. |
---|