redis和memcached
1、从缓存命中的角度来看memcached性能比redis更高,但redis提供的功能更强大
2、memcached是多线程的,redis是单线程的
redis基础
1、redis默认支持16个数据库,多数据库不使用存储不同应用的数据
2、select 1表示选择第一个数据库
3、flushall表示清空所有数据库的所有数据
4、flushdb表示清空当前所在数据库的数据
5、keys * 表示查询所有的键
分片式存储
存在的问题:不能动态的添加或删除节点
因为redis是通过hash的方式到对应的server上存取数据的
缓存原则
缓存逻辑不能影响正常的业务逻辑
也就是说需要将缓存代码进行try catch
事务问题
service中尽量不要做try..catch,否则事务会失效
但当涉及到调用远程服务时,需要进行try..catch,因为远程调用极有可能出现未知异常,当出现异常时不能影响我正常业务的进行。