我正在使用最新版本的CouchbaseNetClient NuGet软件包2.7.4连接Couchbase 4.6.3企业版(在我的笔记本电脑中的docker上运行)。 C#代码:
var config = new ClientConfiguration
{
// assign one or more Couchbase Server URIs available for bootstrap
Servers = new List<Uri>
{
new Uri("http://192.168.99.100:8091/")
},
BucketConfigs = new Dictionary<string, BucketConfiguration> {
{"memcachetest", new BucketConfiguration {
PoolConfiguration = new PoolConfiguration {
MaxSize = 6,
MinSize = 4,
SendTimeout = 12000
},
Port = 8091,
DefaultOperationLifespan = 123,
Password = "",
Username = "",
BucketName = "memcachetest"
}}},
UseSsl = false,
};
ClusterHelper.Initialize(config);
此代码对于普通存储桶(下面的示例存储桶)工作正常,但我无法连接到Memcached(memcachetest)存储桶。
在打开存储桶时,以下行会引发各种异常。
private readonly IBucket _bucket = ClusterHelper.GetBucket("memcachetest", "");
我尝试使用/不使用密码。从过去的两天开始,到现在我都感到头疼!任何帮助!!
答案 0 :(得分:3)
Memcached存储桶不支持CCCP。客户端将首先尝试CCCP,然后在CCCP失败时移至HTTP流传输-这将被记录,并且可能是您偶然发现的内容。由于它是一个AggregateException,因此似乎还有其他原因导致其失败-您必须为此原因研究每个异常。请注意,您可以通过将ConfigurationProviders设置为HttpStreaming来跳过针对Memcached存储桶的CCCP:
ClientConfiguration.ConfigurationProviders = ServerConfigurationProviders.HttpStreaming;