新生命Redis组件(.Net Core 开源)

NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。 Redis协议基础实现Redis/RedisClient位于X组件,本库为扩展实现,主要增加列表结构、哈希结构、队列等高级功能。

源码: https://github.com/NewLifeX/NewLife.Redis Nuget:NewLife.Redis


特性

  • 在ZTO大数据实时计算广泛应用,200多个Redis实例稳定工作一年多,每天处理近1亿包裹数据,日均调用量80亿次
  • 低延迟,Get/Set操作平均耗时200~600us(含往返网络通信)
  • 大吞吐,自带连接池,最大支持1000并发
  • 高性能,支持二进制序列化

Redis经验分享
  • 在Linux上多实例部署,实例个数等于处理器个数,各实例最大内存直接为本机物理内存,避免单个实例内存撑爆
  • 把海量数据(10亿+)根据key哈希(Crc16/Crc32)存放在多个实例上,读写性能成倍增长
  • 采用二进制序列化,而非常见Json序列化
  • 合理设计每一对Key的Value大小,包括但不限于使用批量获取,原则是让每次网络包控制在1.4k字节附近,减少通信次数
  • Redis客户端的Get/Set操作平均耗时200~600us(含往返网络通信),以此为参考评估网络环境和Redis客户端组件
  • 使用管道Pipeline合并一批命令
  • Redis的主要性能瓶颈是序列化、网络带宽和内存大小,滥用时处理器也会达到瓶颈
  • 其它可查优化技巧 以上经验,源自于300多个实例4T以上空间一年多稳定工作的经验,并按照重要程度排了先后顺序,可根据场景需要酌情采用!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IMWeb前端团队

短信中的链接为什么那么短?

本文作者:IMWeb coverguo 原文出处:IMWeb社区 未经同意,禁止转载 前言 前段时间读了一些关于短网址的文章,加上刚好收到一个含有短网...

56910
来自专栏后端技术探索

高并发高性能分布式框架从无到有微服务架构设计分享

微服务架构模式(Microservice Architect Pattern)。近两年在服务的疯狂增长与云计算技术的进步,让微服务架构受到重点关注。

1141
来自专栏码神联盟

缓存 | redis和memecache的异同以及应用场景

缓存就是数据交换的缓冲区Cache。当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找。由于缓存的运行速度比内存...

3489
来自专栏lestat's blog

油猴的简单使用

关于greasemonkey(油猴)的安装和一些实用脚本推荐 步骤 准备工作:确保你的电脑可以科学上网 以本人的chrome浏览器为例 1. 打开一个新标签页 ...

4708
来自专栏FreeBuf

老树新芽:Windump与大数据工具结合做流量统计分析

1.背景与需求介绍 抓取流量最流行的工具就是Wireshark,在Windows上Wireshark的GUI界面很酷,但对于在linux和mac用惯了tcpdu...

4296
来自专栏北京马哥教育

我所理解的性能测试是什么?

扯淡 首先说明这篇博客是文不对题的。起这个名字想法来源自韩寒的《我所理解的生活》,之前看过一个关于这本书的视频,感觉巨牛X,于是就想写一篇《我所理解的性能测试...

3729
来自专栏FreeBuf

看我如何利用开发人员所犯的小错误来盗取各种tokens

实际上,在日常的开发过程中,开发人员很有可能会犯各种各样貌似“无伤大雅”的小错误,单独一个这样的小错误可能并不能搞什么事情,但如果将这些错误串起来形成一个漏洞链...

2635
来自专栏salesforce零基础学习

salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载

目前国内已经有很多公司做salesforce,但是国内相关的资料确是少之又少。上个月末跳槽去了新公司,主要做的就是salesforce,不过当时想要看一些相关资...

70410
来自专栏java一日一条

Web Service 的工作原理

Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,...

1112
来自专栏开源优测

Robot Framework | 01 源码初探

概述 Robot Framework是一个通用的验收测试和验收测试驱动开发自动化测试框架(ATDD)。 它具有易于使用的表格测试数据语法,并使用关键字驱动测试方...

3988

扫码关注云+社区