摘要: Redis有两种持久化的方式:快照(RDB文件)和追加式文件(AOF文件):RDB持久化方式会在一个特定的间隔保存那个时间点的一个数据快照。AOF持久化方式则会记录每一个服务器收到的写操作。在服务启动时,这些记录的操作会逐条执行从而重建出原来的数据。写操作命令记录的格式跟Redis协议一致,以追加的... 阅读全文
posted @ 2015-11-23 22:11 moonandstar08 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 一、Redis集群原理 集群技术是构建高性能网站架构的重要手段,试想在网站承受高并发访问压力的同时,还需要从海量数据中查询出满足条件的数据,并快速响应,我们必然想到的是将数据进行切片,把数据根据某种规则放入多个不同的服务器节点,来降低单节点服务器的压力。 上一篇我们讲到了 Redis 的主从复制技术 阅读全文
posted @ 2015-11-19 22:50 moonandstar08 阅读(381) 评论(0) 推荐(0) 编辑
摘要: Sentinel(哨兵)是用于监控redis集群中Master状态的工具.一、Sentinel作用 1、Master状态检测 2、如果Master异常,则会进行Master-Slave切换,将其中一个Slave作为Master,将之前的Master作为Slave;3、Master-Slave切换后... 阅读全文
posted @ 2015-11-19 22:23 moonandstar08 阅读(6716) 评论(0) 推荐(0) 编辑
摘要: Redis 支持 Master-Slave(主从)模式,Redis Server 可以设置为另一个 Redis Server 的主机(从机),从机定期从主机拿数据。特殊的,一个从机同样可以设置为一个 Redis Server 的主机,这样一来 Master-Slave 的分布看起来就是一个有向无环图... 阅读全文
posted @ 2015-11-19 21:49 moonandstar08 阅读(1141) 评论(0) 推荐(0) 编辑
摘要: Redis是一个强大的Key-Value存储系统,在前面我们已遇到了两个问题:1、redis server 启动后,独占进程,能不能修改为后台服务呢?2、redis server 服务是单线程的,而我的机器是多核的,能不能在同一台机器上开启多个实例更充分的利用 cpu 资源呢?但6379端口已经被前... 阅读全文
posted @ 2015-11-17 23:07 moonandstar08 阅读(1711) 评论(0) 推荐(0) 编辑
摘要: 一、什么 RedisREmoteDIctionaryServer,简称 Redis,是一个类似于Memcached的Key-Value存储系统。相比Memcached,它支持更丰富的数据结构,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)... 阅读全文
posted @ 2015-11-17 23:04 moonandstar08 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 在JDK的Collection中我们时常会看到类似于这样的话:例如,ArrayList:注意,迭代器的快速失败行为无法得到保证,因为一般来说,不可能对是否出现不同步并发修改做出任何硬性保证。快速失败迭代器会尽最大努力抛出 ConcurrentModificationException。因此,为提高... 阅读全文
posted @ 2015-11-17 22:46 moonandstar08 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 一、ReentrantLock类ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁等候的一些特性。此外,它还提供了在激烈争用情况下更佳的性能(换句话说,当许多线程都想访问共享资源时,JVM 可以花更... 阅读全文
posted @ 2015-11-17 22:28 moonandstar08 阅读(847) 评论(0) 推荐(0) 编辑
摘要: 一、分布式对象在学习 RMI 之前,先来分布式对象(Distributed Object):分布式对象是指一个对象可以被远程系统所调用。对于 Java 而言,即对象不仅可以被同一虚拟机中的其他客户程序(Client)调用,也可以被运行于其他虚拟机中的客户程序调用,甚至可以通过网络被其他远程主机之上的... 阅读全文
posted @ 2015-11-11 22:09 moonandstar08 阅读(1540) 评论(0) 推荐(0) 编辑
摘要: Hibernate是一个持久化框架,经常需要访问数据库。如果我们能够降低应用程序对物理数据库访问的频次,那会提高应用程序的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序运行时先从缓存中读写数据。 缓存就是数据库数据在内存中的临时容器,包括数据库数据在内存中的临时拷贝,它位于数据库与数据... 阅读全文
posted @ 2015-11-10 22:17 moonandstar08 阅读(195) 评论(0) 推荐(0) 编辑