[英]How to do connection pooling for Google Cloud Bigtable
是否存在任何內置庫或是否需要實現自定義庫?
我試圖在這里檢查,但不確定如何從這里開始: Bigtable connection pool
我已經嘗試了下面的代碼,但不太確定如何從這里取得進展:
import com.google.cloud.bigtable.config.BigtableOptions;
import com.google.cloud.bigtable.config.CredentialOptions;
import com.google.cloud.bigtable.grpc.BigtableSession;
import com.google.cloud.bigtable.grpc.io.ChannelPool;
import com.mahindra.digisense.config.AppConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.GeneralSecurityException;
@Component
public class BigTableConnectionPoolingExample {
@Autowired
private AppConfig.BigTableConfig bigTableConfig;
private void bigTableConnectionPooling() throws IOException, GeneralSecurityException {
CredentialOptions credentialOptions = CredentialOptions.jsonCredentials(new FileInputStream(new File(bigTableConfig.getCredentialsJson())));
BigtableOptions.Builder builder = new BigtableOptions.Builder();
builder.setCredentialOptions(credentialOptions);
ChannelPool.ChannelFactory channelFactory = (ChannelPool.ChannelFactory) BigtableSession.createChannelPool(bigTableConfig.getInstanceId(), builder.build());
ChannelPool channelPool = new ChannelPool(channelFactory,3);
}
}
這是另一個堆棧溢出問題,沒有答案。
正如 Solomon Duskis 所指出的,我們鼓勵新人開始使用google-cloud-java 中慣用的 Bigtable 客戶端。 客戶端適用於生產用途,但我們尚未最終確定客戶端 API,因此我們可能會進行向后不兼容的更改。
如果您使用Cloud Bigtable 客戶端存儲庫中的 HBase 客戶端,則可以選擇調整下方使用的數據通道數量以及每個通道的動態 RPC 數量。 但是我們建議您首先分析您的應用程序,因為您應該能夠獲得良好的性能並使集群飽和,而無需手動調整這些參數的默認值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.