新生命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以上空间一年多稳定工作的经验,并按照重要程度排了先后顺序,可根据场景需要酌情采用!

《100亿小数据实时计算平台》目录

借助Redis做秒杀和限流的思考

大数据分析中Redis怎么做到220万ops

每天4亿行SQLite订单大数据测试(源码)

原文地址:https://www.cnblogs.com/nnhy/p/redis.html

时间: 2024-10-18 19:32:25

新生命Redis组件(.Net Core 开源)的相关文章

Magicodes.Admin.Core开源框架总体介绍

框架说明 Magicodes.Admin.Core框架在ABP以及ASP.NET ZERO的基础上进行了封装和完善,目前基于.NET Core 2.0+(Framework版本),由于部分组件在.NET Core没有找到替代组件,所以真正意义上跨平台版本会在后续推出. 目前本框架已经应用于团队的所有项目,在实际开发过程中还在不断地打磨. 由于本人和团队成员都是利用自己的时间来打磨本框架,因此在大部分情况下,并不会在相关群内进行解答,如果确实是疑难问题,请提交Issue.如果觉得本框架对您有所帮助

Redis in .NET Core 入门 (1)

Redis(https://redis.io/), 是一个内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 安装Redis 我很少在开发机中直接装各种数据库,我一般使用Docker,针对Redis也不例外,我还是使用Docker. 这是Redis在DockerHub里的地址:https://hub.docker.com/_/redis,里面有文档. 启动docker,下载redis镜像:docker pull redis 然后运行镜像并发布端口6379: 然后运行redis-cli

Node.js与Sails~redis组件的使用

有段时间没写关于NodeJs的文章了,今天也是为了解决高并发的问题,而想起了这个东西,IIS的站点在并发量达到200时有了一个瓶颈,于是想到了这个对高并发支持比较好的框架,nodeJs在我之前写出一些文章,主要为sails框架为主,介绍了一些使用方法,今天主要说下redis组件! 项目:SailsMvc 开发工具:webstorm 语言:nodejs 框架:sails 包:redis 主要介绍几个用法,为string,set,hash和list的使用 测试redis组件的代码 index: fu

一份关于组建.NET Core开源团队的倡议书

组建这个.NET Core开源团队,旨在为社区出一份力,对自己能力也是一个提升,是一个即利于他人,也利于自己的想法和行动.如果你有很多想法,如果你需要认识更多志同道合的朋友,如果你想展示自己的才华,如果你想为自己的社会担当添上一笔,哪怕你就是为了装一次荡气回肠的逼,你可以来这里,咱们一起来干一场. 在这里,你的加入的目的不重要,不追求你加入组织的纯洁性(哈哈哈...),只要你分享了知识,你的所做的为他人解决了问题,或者指明了方向,有这一点就足够了. 欢迎大神,也欢迎菜鸟,因为目的是为了分享知识,

Apache Camel系列(3)----Redis组件

Redis组件允许你从Redis接收消息,以及将消息发送给Redis.RedisProducer的功能很强大,几乎能执行所有的Redis Command,这些Command都是在Message的header中进行设置的.遗憾的是RedisConsumer仅仅支持pub/sub模式,不支持Point2Point,这意味这在Camel中,通过阻塞的方式消费Lists中的消息是不可行的.我反馈了这个问题到Apache Camel Mail List,希望以后的版本支持P2P更能.下面演示如何使用cam

Tomcat 源码分析(一)——启动与生命周期组件

写在前面的话:读Tomcat源码也有段时间了,大领悟谈不上.一些小心得记录下来,供大家参考相护学习. 一.启动流程 Tomcat启动首先需要熟悉的是它的启动流程.和初学者第一天开始写Hello World一样,Tomcat的启动也依赖main方法. 1 /* 2 * org.apache.catalina.startup.Bootstrap 3 */ 4 if (daemon == null) { 5 Bootstrap bootstrap = new Bootstrap(); // 实例对象

积极拥抱.NET Core开源社区

潘正磊在上海的Tech Summit 2018 大会上给我们的.NET Core以及开源情况带来了最新信息. .Net Core 开源后取得了更加快速的发展,目前越活跃用户高达400万人,每月新增开发者45万,在 GitHub 上的月度增长达到15%.目前有来自超过3,700家企业的1.9万开发者在为 .NET Core 做贡献,.NET 基金会管理着超过60个项目. .NET Core 为开发者提供了跨平台.云原生应用的理想开发平台,特别是即将发布的 .NET Core 3,能够全面支持从网页

.NET Core开源API网关 – Ocelot中文文档

原文:.NET Core开源API网关 – Ocelot中文文档 Ocelot是一个用.NET Core实现并且开源的API网关,它功能强大,包括了:路由.请求聚合.服务发现.认证.鉴权.限流熔断.并内置了负载均衡器与Service Fabric.Butterfly Tracing集成.这些功能只都只需要简单的配置即可完成,下面我们会对这些功能的配置一一进行说明. 介绍 简单的来说Ocelot是一堆的asp.net core middleware组成的一个管道.当它拿到请求之后会用一个reque

Ocelot(一)- .Net Core开源网关

Ocelot - .Net Core开源网关 作者:markjiang7m2 原文地址:https://www.cnblogs.com/markjiang7m2/p/10857688.html 源码地址:https://gitee.com/Sevenm2/OcelotDemo 今天要给大家介绍的Ocelot是一个基于 .net core的开源WebAPI服务网关项目,它的功能非常强大,包括了路由.请求聚合.服务发现.认证鉴权.限流.负载均衡等功能.而这些功能都可以直接通过修改json配置文件即可