`

redis之安全&性能&客户端连接

阅读更多
redis安全
我们可以通过 redis 的配置文件设置密码参数,这样客户端连接到 redis 服务就需要密码验证,这样可以让你的 redis 服务更安全。
实例
我们可以通过以下命令查看是否设置了密码验证:
127.0.0.1:6379> CONFIG get requirepass
1) "requirepass"
2) ""
默认情况下 requirepass 参数是空的,这就意味着你无需通过密码验证就可以连接到 redis 服务。
你可以通过以下命令来修改该参数:
127.0.0.1:6379> CONFIG set requirepass "w3cschool.cc"
OK
127.0.0.1:6379> CONFIG get requirepass
1) "requirepass"
2) "w3cschool.cc"
设置密码后,客户端连接 redis 服务就需要密码验证,否则无法执行命令。




Redis 性能测试
Redis 性能测试是通过同时执行多个命令实现的。

语法
redis 性能测试的基本命令如下:
redis-benchmark [option] [option value]
实例
以下实例同时执行 10000 个请求来检测性能:
redis-benchmark -n 10000

PING_INLINE: 141043.72 requests per second
PING_BULK: 142857.14 requests per second
SET: 141442.72 requests per second
GET: 145348.83 requests per second
INCR: 137362.64 requests per second
LPUSH: 145348.83 requests per second
LPOP: 146198.83 requests per second
SADD: 146198.83 requests per second
SPOP: 149253.73 requests per second
LPUSH (needed to benchmark LRANGE): 148588.42 requests per second
LRANGE_100 (first 100 elements): 58411.21 requests per second
LRANGE_300 (first 300 elements): 21195.42 requests per second
LRANGE_500 (first 450 elements): 14539.11 requests per second
LRANGE_600 (first 600 elements): 10504.20 requests per second
MSET (10 keys): 93283.58 requests per second
redis 性能测试工具可选参数如下所示:
序号 选项 描述 默认值
1 -h 指定服务器主机名 127.0.0.1
2 -p 指定服务器端口 6379
3 -s 指定服务器 socket
4 -c 指定并发连接数 50
5 -n 指定请求数 10000
6 -d 以字节的形式指定 SET/GET 值的数据大小 2
7 -k 1=keep alive 0=reconnect 1
8 -r SET/GET/INCR 使用随机 key, SADD 使用随机值
9 -P 通过管道传输 <numreq> 请求 1
10 -q 强制退出 redis。仅显示 query/sec 值
11 --csv 以 CSV 格式输出
12 -l 生成循环,永久执行测试
13 -t 仅运行以逗号分隔的测试命令列表。
14 -I Idle 模式。仅打开 N 个 idle 连接并等待。
实例
以下实例我们使用了多个参数来测试 redis 性能:
redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 10000 -q

SET: 146198.83 requests per second
LPUSH: 145560.41 requests per second
以上实例中主机为 127.0.0.1,端口号为 6379,执行的命令为 set,lpush,请求数为 10000,通过 -q 参数让结果只显示每秒执行的请求数。




Redis 客户端连接
Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作:
首先,客户端 socket 会被设置为非阻塞模式,因为 Redis 在网络事件处理上采用的是非阻塞多路复用模型。
然后为这个 socket 设置 TCP_NODELAY 属性,禁用 Nagle 算法
然后创建一个可读的文件事件用于监听这个客户端 socket 的数据发送
最大连接数
在 Redis2.4 中,最大连接数是被直接硬编码在代码里面的,而在2.6版本中这个值变成可配置的。
maxclients 的默认值是 10000,你也可以在 redis.conf 中对这个值进行修改。
config get maxclients

1) "maxclients"
2) "10000"
实例
以下实例我们在服务启动时设置最大连接数为 100000:
redis-server --maxclients 100000
客户端命令
S.N. 命令 描述
1 CLIENT LIST 返回连接到 redis 服务的客户端列表
2 CLIENT SETNAME 设置当前连接的名称
3 CLIENT GETNAME 获取通过 CLIENT SETNAME 命令设置的服务名称
4 CLIENT PAUSE 挂起客户端连接,指定挂起的时间以毫秒计
5 CLIENT KILL 关闭客户端连接


分享到:
评论

相关推荐

    redis客户端连接工具 RedisDesktopManager

    Redis是世界上最受欢迎的内存数据存储系统之一,常用于构建高性能、低延迟的数据缓存和数据库。RedisDesktopManager是一款跨平台的图形用户界面(GUI)工具,使得开发者和管理员能够便捷地管理和操作Redis服务器,...

    redis客户端工具(绿色版)

    同时,它利用Jedis这个Java客户端库连接并操作Redis服务器,确保了高效稳定的性能。 4. **功能全面**:作为一个客户端工具,RedisClient通常会包含如键的查看、添加、删除、修改,以及对集合、哈希表、有序集合等...

    redis客户端免安装版

    Redis是一款开源、高性能的键值对存储系统,常被用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串、哈希、列表、集合、有序集合等,适用于处理各种数据存储需求。本资源提供的“redis客户端免安装版”是...

    Redis图形化桌面客户端

    5. **安全控制**:支持SSL加密连接,确保数据传输的安全性,同时可能有权限管理功能,防止未经授权的访问。 6. **模板和脚本支持**:预设操作模板或支持编写自定义脚本,实现批量操作或重复任务的自动化。 总之,这...

    C++ Redis 客户端简单使用

    在IT行业中,Redis是一款广泛应用的高性能键值存储系统,它以速度快、数据持久化和丰富的数据结构而闻名。而C++作为一门强大的编程语言,与Redis的结合使得开发者能够高效地利用Redis的功能。本篇文章将深入探讨如何...

    redis客户端,连接查看redis数据库

    - **SSL/TLS加密**:可以配置Redis客户端使用SSL连接,提高数据传输安全性。 - **命令限制**:客户端可以根据需求限制可执行的命令,防止误操作或恶意攻击。 7. **监控与日志** - **INFO命令**:获取Redis服务器...

    redis客户端连接,最大连接数查询与设置.pdf

    其中,客户端连接是Redis的核心组件之一,负责处理来自客户端的请求。然而,随着系统的负载增加,客户端连接数的增长也会对系统的性能产生影响。因此,了解Redis客户端连接的最大连接数查询与设置变得非常重要。 ...

    redis-连接工具-【服务端客户端】

    本文将深入探讨如何连接Redis服务端以及客户端工具的使用。 一、Redis 服务端 1. 安装与启动:在Windows环境下,可以通过下载Redis的Windows版本来安装。安装完成后,运行`redis-server`命令启动服务。Redis服务端...

    windows redis客户端连接工具, Redis-x64-3.2.100, 亲测可用

    "windows redis客户端连接工具, Redis-x64-3.2.100, 亲测可用"这一标题表明我们讨论的是一个适用于Windows平台的Redis客户端,具体版本为3.2.100,并且已经有人验证过这个工具是能够正常工作的。 描述中的"64位...

    redismanage下载redis客户端 redis连接工具

    4. 性能调优:根据业务负载调整Redis的配置参数,如客户端最大连接数、I/O线程数等。 总结,Redis作为一款强大的键值数据库,配合RedisManage这样的客户端工具,可以极大地提高开发和运维的效率。理解并熟练掌握这...

    redis mac 客户端

    在Mac操作系统上,为了方便地管理和操作Redis数据库,我们通常会使用特定的客户端工具。"Redis Desktop Manager for Mac 0.9.3.39"就是这样一个专为Mac用户设计的图形化界面工具,它提供了直观、高效的方式来浏览、...

    redis客户端连接工具

    在实际应用中,为了方便管理和操作Redis服务器,我们通常会使用专门的Redis客户端连接工具。这里,我们重点讨论标题中提到的"redis客户端连接工具",特别是压缩包内的`redis-desktop-manager-0.8.3.3850.exe`。 ...

    redis连接工具 windows下

    Redis是一款高性能的键值数据库,常用于数据缓存、消息队列等场景。在Windows操作系统中,虽然Redis本身是跨平台的,但直接使用命令行工具进行操作可能会对初学者不太友好,这时就需要借助图形化的Redis连接工具。...

    redis-3.0.0&redis;-3.0.0.gem.zip

    `redis-3.0.0.gem`是Ruby编程语言中的Redis客户端库,它提供了与Redis服务器交互的接口。通过这个库,开发者可以方便地在Ruby应用中使用Redis的各种功能,如读写数据、发布订阅消息等。 6. 集群注意事项: - 数据...

    redis官网最新客户端

    1. **连接与断开**:客户端需要连接到Redis服务器,通过指定服务器的IP地址和端口号实现。完成任务后,客户端会断开与服务器的连接,释放资源。 2. **命令执行**:Redis支持多种数据结构的操作命令,如设置(SET)...

    redis安装包(windows版)及客户端

    3. 使用客户端连接Redis服务,验证连接是否成功,可以通过`INFO`命令查看服务器状态。 4. 利用客户端进行数据操作,例如`SET key value`设置键值,`GET key`获取键值,`DEL key`删除键。 四、Redis在Windows环境中...

    连接redis客户端,很好用的客户端

    一、Redis客户端连接 连接Redis客户端是操作Redis数据库的第一步。通常,我们使用命令行工具`redis-cli`进行基本操作,但对于复杂的管理和监控需求,会使用图形用户界面(GUI)客户端。"连接redis客户端,很好用的...

    Go-redis-Golang的类型安全Redis客户端

    Go-redis是Golang语言中一个流行的Redis客户端库,它为开发者提供了类型安全的API,使得在使用Redis进行数据操作时能更好地防止错误并提升代码的可读性。本篇文章将深入探讨Go-redis库的核心特性、安装与使用、基本...

    redis客户端

    Redis客户端是用于与Redis服务器进行交互的工具,它允许用户在本地系统上通过图形化界面或命令行方式连接到远程Redis服务器,执行读写操作、查看数据结构、管理数据库等任务。在64位操作系统环境下,选择合适的64位...

Global site tag (gtag.js) - Google Analytics