- 浏览: 382311 次
- 性别:
- 来自: 北京
最新评论
-
尚世承:
你的stringutils哪里来的啊
统计字符串中各种类型字符个数
文章列表
对比方面
一级缓存
二级缓存
存放数据的形式
相互关联的持久化对象。
对象的散装数据。
缓存的范围
数据库范式与反范式(转)
- 博客分类:
- 数据库
提到范例,大家都知道第一范式,第二范式,第三范式。可是我们明白这些范式的深层含意吗?这些范式什么时候用,用它们有什么好处呢?下面我们就一起带着这些问题边想边读下面的文章。
范式 :英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程 中所要遵循的规则和指导方法。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设 计出错误的数据库.目前有迹可寻的共有8种范 ...
一、内存管理方面:
Memcached使用预分配的内存池的方式,带来一定程度的空间浪费 并且在内存仍然有很大空间时,新的数据也可能会被剔除;
Redis使用现场申请内存的方式来存储数据,不会剔除任何非临时数据 Redis更适合作为存储而不是cache。
二、网络IO模型方面:
Memcached是多线程,分为监听线程、worker线程,引入锁,带来了性能损耗;
Redis使用单线程的IO复用模型,将速度优势发挥到最大,也提供了较简单的计算功能。
三、数据持久化方面:
Memcached 不支持持久化,它 ...
Redis 的 Sentinel,俗称“哨兵”,在Redis 3.0之前的版本中,它是Redis官方提供的集群管理工具,它主要有三大功能:
(1)监控:能持续监控Redis的主从实例是否正常工作;
(2)通知:当被监控的Redis实例出问题时,能通过API通知系统管理员或其他程序;
(3)自动故障恢复:如果主实例无法正常工作,Sentinel将启动故障恢复机制把一个从实例提升为主实例,其他的从实例将会被重新配置到新的主实例,且应用程序会得到一个更换新地址的通知。
Redis Sentinel是一个分布式系统,可以部署多个Sentinel实例来 ...
Sharding机制:即通常所说的“分片”,允许数据存放在不同的物理机器上,以适应数据量过大的场景,克服单台机器内存或者磁盘空间的限制。而这种“离散式”地存放,对客户端来说是透明的,对客户端来讲,完全看不到这种差别。
Redis的分片(Sharding或者Partitioning)技术:是指将数据分散到多个Redis实例中的方法,分片之后,每个redis拥有一部分原数据集的子集。在数据量非常大时,这种技术能够将数据量分散到若干主机的redis实例上,进而减轻单台redis实例的压力。分片技术能够以更易扩展的方式使用多台计算机的存储能力(这里主要指内存 ...
一、M/S主从复制特征
redis主从(M/S)复制配置和使用都非常简单。通过主从复制可以允许多个slave server拥有和master server相同的数据库副本。下面是关于redis主从复制的一些特点:
(1)ma ...
Redis 序列之二——Redis的持久化
- 博客分类:
- redis
Redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照,默认方式),另一种是Append-only file(aof,文件追加)的方式。
(一)Snapshotting(快照)
这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key被修改就自动做快照,下面是默认的快照 ...
redis对事务的支持目前还比较简单。redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。由于redis是单线程来处理所有client的请求的所以做到这点是很容易的。
...
一致性hash算法的应用场景:
比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到 N 个 cache ...
spring配置文件有以下3种配置方式:
一、简单单个spring配置文件:applicationContext.xml
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");RegisterDAO registerDAO = (RegisterDAO)ac.getBean("registerDAO");
(registerDAO为在applicationContext.xml中注入的bean)
二、多个spring配置文件 ...