Lind.DDD.Repositories.Redis层介绍

本文涉及的产品
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介:

之前已经发生了

大叔之前介绍过关于redis的文章,有缓存,队列,分布式pub/sub,数据集缓存以及仓储redis的实现等等,而今天在Lind.DDD的持久化组件里,redis当然也有一席之地,作为当今最红的key/value存储机制,它在nosql的阵营中发挥着无可代替的作用!

下面是redis文章系列的目录,大家可以进行参考,看目录

Redis学习笔记~Redis在windows环境下的安装

Redis学习笔记~Redis在.net中的应用

Redis学习笔记~Redis提供的五种数据结构

Redis学习笔记~五大数据结果的测试

Redis学习笔记~实现消息队列比MSMQ更方便

Redis学习笔记~把redis放在DATA层,作为一种数据源,我认为更合理,也更符合我的面向对象原则

Redis学习笔记~是时候为Redis实现一个仓储了,RedisRepository来了

Redis学习笔记~Redis实现多个緩存服务器,读写分离

Redis学习笔记~Redis事务机制与Lind.DDD.Repositories.Redis事务机制的实现

Redis学习笔记~Redis并发锁机制

Lind.DDD里的仓储模块,Mongodb有一席之地

大叔的Redis仓储结构

大叔在进行redis仓储设计时,使用了redis事务机制来维持数据的一致性,这种事务要求它们属于同一个redis连接对象,所以,在SetDataContext方法中实现了这种业务逻辑

        public void SetDataContext(object db)
        {
            try
            {
                //手动Redis数据库对象,在redis事务时启用
                redisDB = (IRedisClient)db;
                redisTypedClient = redisDB.GetTypedClient<TEntity>();
                table = redisTypedClient.Lists[typeof(TEntity).Name];
            }
            catch (Exception)
            {

                throw new ArgumentException("redis.SetDataContext要求db为IRedisClient类型");
            }

        }

让代码去改变我们的生活,改变我们的世界吧!

本文转自博客园张占岭(仓储大叔)的博客,原文链接:Lind.DDD.Repositories.Redis层介绍,如需转载请自行联系原博主。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
SQL 缓存 Java
殷浩详解DDD系列 第三讲 - Repository模式
# 第三讲 - Repository模式 **写在前面** 这篇文章和上一篇隔了比较久,一方面是工作比较忙,另一方面是在讲Repository之前其实应该先讲Entity(实体)、Aggregate Root(聚合根)、Bounded Context(限界上下文)等概念。但在实际写的过程中,发现单纯讲Entity相关的东西会比较抽象,很难落地。所以本文被推倒重来,从Repository
35731 8
|
NoSQL Java Redis
SpringBoot集成Redis报non null key required(已解决)
SpringBoot开发过程中遇到的问题并记录
1410 0
SpringBoot集成Redis报non null key required(已解决)
|
19天前
|
设计模式 测试技术 数据处理
|
3月前
|
前端开发 Java Maven
dubbo-admin安装(分离版本)
dubbo-admin安装(分离版本)
|
3月前
|
Dubbo Java 应用服务中间件
DUBBO--基础篇(一)--简介(示意Demo)
DUBBO--基础篇(一)--简介(示意Demo)
27 0
|
4月前
|
自然语言处理 数据处理 调度
《Havenask分布式索引构建服务--Build Service》
Havenask是阿里巴巴智能引擎事业部自研的开源高性能搜索引擎,深度支持了包括淘宝、天猫、菜鸟、高德、饿了么在内几乎整个阿里的搜索业务。本文针对性介绍了Havenask分布式索引构建服务——Build Service,主打稳定、快速、易管理,是在线系统提升竞争力的一大利器。
100917 3
《Havenask分布式索引构建服务--Build Service》
|
分布式计算 监控 Dubbo
【e3项目学习二】——zk与dubbo的组合运用
注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小。使用dubbo-2.3.3以上版本,建议使用zookeeper注册中心。
|
存储 缓存 NoSQL
SpringBoot学习笔记(八:Cache集成Redis )
SpringBoot学习笔记(八:Cache集成Redis )
133 0
SpringBoot学习笔记(八:Cache集成Redis )