Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.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# 4.0 是否有Redis rdb工具的C#实现?_C# 4.0_Redis_<img Src="//i.stack.imgur.com/WM7S8.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">servicestack_Booksleeve - Fatal编程技术网 servicestack,booksleeve,C# 4.0,Redis,servicestack,Booksleeve" /> servicestack,booksleeve,C# 4.0,Redis,servicestack,Booksleeve" />

C# 4.0 是否有Redis rdb工具的C#实现?

C# 4.0 是否有Redis rdb工具的C#实现?,c#-4.0,redis,servicestack,booksleeve,C# 4.0,Redis,servicestack,Booksleeve,看一看,似乎有一些有用的函数用于监视Redis服务器的运行状况 似乎有一套很好的客户端函数(但我正在使用) 是否有任何C#实现可以为我提供一些基本的健康检查—消耗的内存、磁盘使用情况等 --更新-- 由于booksleve的GetInfo()命令,返回了以下内容。。。但是,我应该更具体一点:是否有一种方法可以将服务器信息作为参数/对象属性返回,或者有一种预打包的方法来解析输出值 以下是GetInfo()的输出: 调用时,它提供redis服务器中所有不同的服务器信息统计信息 这是关于redis服务

看一看,似乎有一些有用的函数用于监视Redis服务器的运行状况

似乎有一套很好的客户端函数(但我正在使用)

是否有任何C#实现可以为我提供一些基本的健康检查—消耗的内存、磁盘使用情况等

--更新--

由于booksleve的GetInfo()命令,返回了以下内容。。。但是,我应该更具体一点:是否有一种方法可以将服务器信息作为参数/对象属性返回,或者有一种预打包的方法来解析输出值

以下是GetInfo()的输出:

调用时,它提供redis服务器中所有不同的服务器信息统计信息


这是关于redis服务器的2.5.12版本。

关于更新的问题:那里的信息目前没有以“已解析”的形式公开,但这听起来是一个合理的添加;我怀疑我会隐藏
GetInfo()
方法,将其移动到
.Server.GetInfo()
,并以解析形式将其公开。但是,用于拆分它的代码已经存在,但作为私有方法:
RedisConnectionBase.ParseInfo

static Dictionary<string, string> ParseInfo(string result)
{
    string[] lines = result.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
    var data = new Dictionary<string, string>();
    for (int i = 0; i < lines.Length; i++)
    {
        string line = lines[i];
        if (string.IsNullOrEmpty(line) || line[0] == '#') continue; // 2.6+ can have empty lines, and comment lines
        int idx = line.IndexOf(':');
        if (idx > 0) // double check this line looks about right
        {
            data.Add(line.Substring(0, idx), line.Substring(idx + 1));
        }
    }
    return data;
}
static Dictionary ParseInfo(字符串结果)
{
string[]line=result.Split(新[]{“\r\n”},StringSplitOptions.RemoveEmptyEntries);
var data=newdictionary();
对于(int i=0;i0)//仔细检查这一行是否正确
{
data.Add(line.Substring(0,idx),line.Substring(idx+1));
}
}
返回数据;
}

展开:在booksleve中,连接实例上的
GetInfo()
命令返回此信息更新问题:是否有方法读取/处理单个值?是的,在解析形式中,它更有意义,因为这样值将可用,而不仅仅用于显示。避免修改booksleve代码,我将该方法添加到助手类中。非常好,谢谢。@ElHaix我的本地副本现在有了(在
.Server
下):
任务获取信息(string section=null,bool queueJump=false)
static Dictionary<string, string> ParseInfo(string result)
{
    string[] lines = result.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
    var data = new Dictionary<string, string>();
    for (int i = 0; i < lines.Length; i++)
    {
        string line = lines[i];
        if (string.IsNullOrEmpty(line) || line[0] == '#') continue; // 2.6+ can have empty lines, and comment lines
        int idx = line.IndexOf(':');
        if (idx > 0) // double check this line looks about right
        {
            data.Add(line.Substring(0, idx), line.Substring(idx + 1));
        }
    }
    return data;
}