当前位置: 首页 > news >正文

网站添加备案湖北专业的网瘾戒除学校有哪些

网站添加备案,湖北专业的网瘾戒除学校有哪些,网站过程,个人做网站还是公众号赚钱好1. 前言 Redis是一个高性能的键值存储数据库#xff0c;常用于缓存、队列、排行榜等场景。在实际应用中#xff0c;我们需要对Redis的性能进行测试#xff0c;以便了解其在不同场景下的表现。本文将介绍如何使用Go语言测试Redis的性能。 2. 环境准备 在开始测试前#x…1. 前言 Redis是一个高性能的键值存储数据库常用于缓存、队列、排行榜等场景。在实际应用中我们需要对Redis的性能进行测试以便了解其在不同场景下的表现。本文将介绍如何使用Go语言测试Redis的性能。 2. 环境准备 在开始测试前我们需要准备以下环境 ·Redis服务器 ·Go语言开发环境 在本文中我们将使用Redis单机和Redis集群进行测试。 3. 测试方案 我们将使用Go语言编写一个测试脚本通过多个并发客户端向Redis服务器发送请求测试其性能表现。测试脚本将支持以下命令行参数 -hRedis服务器的主机名或IP地址默认为localhost。 -pRedis服务器的端口号默认为6379。 -n执行的请求数量默认为1000。 -c并发客户端数量默认为10。 -d写入Redis的数据大小默认为1024。 -tRedis命令类型支持set和get默认为set。 -PRedis密码默认为空。 -DRedis数据库默认为0。 –cluster是否连接Redis集群默认为false。 测试脚本将创建多个并发客户端每个客户端将执行指定数量的请求并向Redis服务器发送指定类型的命令。测试脚本将输出测试结果包括执行请求数量、并发客户端数量、写入数据大小、Redis命令类型、总共用时、平均每秒请求数量等信息。 4. 测试脚本 以下是完整的测试脚本代码 package mainimport (contextflagfmtgithub.com/go-redis/redis/v8logosstringssynctime )func main() {ctx : context.Background()logger : log.New(log.Writer(), , log.LstdFlags)// 解析命令行参数host : flag.String(h, localhost, Redis 服务器的主机名或 IP 地址)port : flag.String(p, 6379, Redis 服务器的端口号)requests : flag.Int(n, 1000, 执行的请求数量)clients : flag.Int(c, 10, 并发客户端数量)dataSize : flag.Int(d, 1024, 写入 Redis 的数据大小)cmdType : flag.String(t, set, Redis 命令类型)password : flag.String(P, , redis密码)db : flag.Int(D, 0, 数据库)cluster : flag.Bool(cluster, false, 是否连接集群)flag.Parse()flag.CommandLine.Usage func() {fmt.Fprintf(os.Stderr, Usage: %s [options]\n, os.Args[0])fmt.Fprintf(os.Stderr, Options:\n)flag.PrintDefaults()}var rdb redis.UniversalClientif *cluster {// 连接 Redis 集群portList : strings.Split(*port, ,)addrs : make([]string, len(portList))for i, p : range portList {addrs[i] fmt.Sprintf(%s:%s, *host, p)}fmt.Println(Redis 集群地址:, addrs)rdb redis.NewClusterClient(redis.ClusterOptions{Addrs: addrs,Password: *password,})} else {// 连接 Redis 单机rdb redis.NewClient(redis.Options{Addr: fmt.Sprintf(%s:%s, *host, *port),Password: *password,DB: *db,})}if err : rdb.Ping(ctx).Err(); err ! nil {fmt.Println(连接 Redis 失败:, err)return}// 创建并发客户端var wg sync.WaitGroupfor i : 0; i *clients; i {wg.Add(1)go func() {defer wg.Done()for j : 0; j *requests; j {key : fmt.Sprintf(key-%d-%d, i, j)value : make([]byte, *dataSize)logger.Println(当前执行操作:, *cmdType, Key:, key, 执行请求数量, *requests)if *cmdType set {err : rdb.Set(ctx, key, value, 0).Err()if err ! nil {panic(err)}} else if *cmdType get {_, err : rdb.Get(ctx, key).Result()if err ! nil err ! redis.Nil {panic(err)}} else {panic(fmt.Sprintf(不支持的命令类型%s, *cmdType))}}}()}// 等待所有客户端执行完成start : time.Now()wg.Wait()end : time.Now()// 输出测试结果duration : end.Sub(start)qps : float64(*requests) / duration.Seconds()fmt.Printf(执行请求数量%d\n, *requests)fmt.Printf(并发客户端数量%d\n, *clients)if *cmdType set {fmt.Printf(写入数据大小%d\n, *dataSize)}fmt.Printf(Redis 命令类型%s\n, *cmdType)fmt.Printf(总共用时%v\n, duration)fmt.Printf(平均每秒请求数量%f\n, qps) }5. 测试结果 我们可以使用以下命令行参数来测试Redis单机和Redis集群的性能 测试Redis单机 go run main.go -h localhost -p 6379 -n 10000 -c 50 -d 1024 -t set 执行结果如下 执行请求数量10000 并发客户端数量50 写入数据大小1024 Redis命令类型set 总共用时10.5033712s 平均每秒请求数量952.957627测试Redis集群 go run main.go -h 10.1.4.7 -p 6379,6380,6381 -n 10000 -c 50 -d 1024 -t set --cluster执行结果如下 Redis集群地址: [10.39.45.47:6379 10.39.45.47:6380 10.39.45.47:6381] 执行请求数量10000 并发客户端数量50 写入数据大小1024 Redis命令类型set 总共用时9.6948692s 平均每秒请求数量1031.903858使用截图 6. 编译 也可以编译后使用 CGO_ENABLED0 GOOSlinux GOARCHamd64 go build -o redis_performance main.go编译后的文件名redis_performance 将这个文件上传服务器后 chmod赋予权限然后./redis_performance运行即可 7. 总结 本文介绍了如何使用Go语言测试Redis的性能通过测试脚本可以方便地测试Redis在不同场景下的性能表现。在实际应用中我们可以根据测试结果来调整Redis的配置以便更好地满足应用需求。
http://www.pierceye.com/news/108477/

相关文章:

  • wordpress收不到网站没有收款接口网站怎么做收款
  • 信阳做网站推广用tornado做网站
  • 网站开发与数据库ppt成都优化网站建设
  • 毕业设计静态网站建设选题依据企业网络营销的优势
  • 网站图片动态换名网站充值支付宝收款怎么做
  • 蜘蛛网是个什么网站做特卖的购物网站
  • 从零学做网站古典 网站模板
  • h5网站模板开发网站后台哪些功能需要前端配合
  • 网站建设 宜宾佛山企业网站自助建站
  • 苏宁易购网站建设 的定位手机网站制作招聘
  • 个人网站备案申请360老是提示危险网站
  • 建网站哪个好 优帮云自己怎么注册域名
  • 做3ds磁铁卡网站大连旅顺博物馆
  • 邢台市住房和城乡建设局网站大连网站推广机构
  • 网站建设开标书房地产网页设计
  • 中国建设建设工程造价管理协会网站建设视频网站要求吗
  • 商务网站教程深圳定制纸箱
  • 湖南手机版建站系统哪家好自己做网站地图
  • 天津网站制作报价阿里云需要网站建设方案书
  • 做最好的美食分享网站网站建设客户需求分析
  • 如何重建网站广州市服务好的网站制作排名
  • 做一名优秀网站设计师计划网站描述怎样写
  • 网页二级网站怎么做网监关闭的网站怎么恢复
  • 甘肃省建设监理协会 官方网站国内知名公关公司
  • 如何将网站和域名绑定阿里云1M做网站
  • 南城网站建设公司咨询东莞智通人才网最新招聘
  • app建设网站公司哪家好php网站修改代码
  • 哪些网上订餐的网站做的好地情网站建设
  • 重庆推广网站的方法国内最近的新闻大事
  • 网站需要备案吗网站怎么推广软文