Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Membase Node.IsAlive=False?_C#_Membase_Enyim - Fatal编程技术网

C# Membase Node.IsAlive=False?

C# Membase Node.IsAlive=False?,c#,membase,enyim,C#,Membase,Enyim,我们的QA环境中有2台web服务器和1台应用服务器。每个 它们承载一个Membase服务。 为了简单起见,让我们调用web服务器:web01和web02。二者都 正在运行IIS 要访问Membase,我们使用.Net客户端: 我们在这里遇到的问题是web01可以访问Membase, 在任何时候都可以设置并获取没有任何问题的值。 然而,web02似乎无法从我们的web应用程序访问Membase 我们编写了一个测试控制台应用程序,并从web02服务器上运行它 工作很好 我们甚至尝试远程登录web02

我们的QA环境中有2台web服务器和1台应用服务器。每个 它们承载一个Membase服务。 为了简单起见,让我们调用web服务器:web01和web02。二者都 正在运行IIS

要访问Membase,我们使用.Net客户端:

我们在这里遇到的问题是web01可以访问Membase, 在任何时候都可以设置并获取没有任何问题的值。 然而,web02似乎无法从我们的web应用程序访问Membase

我们编写了一个测试控制台应用程序,并从web02服务器上运行它 工作很好

我们甚至尝试远程登录web02中的url和端口 配置成功了

Membase配置值在machine.config中定义 文件我们比较了web01和web02 w之间的machine.config文件/ WinMerge和它们是一样的

然后,我使用反射和 以下是我们在Web02上获得的信息:

==========================================

Setting Value: 1337047585
On the Key: testPageKey_287945569
"Setting NOT successful!!"

*Membase Client dump:*

bucketName: OurBucketName
bucketPassword: ThisIsAPassword

poolUrls count: 3
Url_0: http://web01:8091/pools/OurBucketName
Url_1: http://web02:8091/pools/OurBucketName
Url_2: http://app01:8091/pools/OurBucketName

Node: 69.147.125.66:11210 is alive: False
Node: 69.147.125.67:11210 is alive: False
Node: 69.147.125.68:11210 is alive: False
==========================================

Setting Value: 1337047585
On the Key: testPageKey_287945569
"Setting NOT successful!!"

*Membase Client dump:*

bucketName: OurBucketName
bucketPassword: ThisIsAPassword

poolUrls count: 3
Url_0: http://web01:8091/pools/OurBucketName
Url_1: http://web02:8091/pools/OurBucketName
Url_2: http://app01:8091/pools/OurBucketName

Node: 69.147.125.66:11210 is alive: False
Node: 69.147.125.67:11210 is alive: False
Node: 69.147.125.68:11210 is alive: False
请注意最后3行如何提到节点IsAlive=False。。。这 这让我非常困惑,因为web01说所有的节点都是活动的并且 Membase管理控制台也是如此。 同样,从我们的测试应用程序,从任何地方运行,包括web02,我们可以在QA Membase集群中成功地设置和获取值

有人遇到过这个问题吗?或者你知道我们在哪里吗 你应该想办法解决这个问题吗


谢谢。

找到了问题。它与服务器上的.Net安装相关。并不是所有人都安装了所需的.NET3.5SP1。要使Enyim库正常工作,您需要SP1


请参阅:

找到问题。它与服务器上的.Net安装相关。并不是所有人都安装了所需的.NET3.5SP1。要使Enyim库正常工作,您需要SP1


请参阅:

此问题仍未解决,但Membase Google group上的问题仍有一些后续行动:此问题仍未解决,但Membase Google group上的问题仍有一些后续行动: