一、DB查询前加锁
/**
* 本地堆内缓存,优先级最高
*/
ON_HEAP(1),
/**
* 本地堆外缓存,不影响GC,可以管理比堆内缓存更多的数据
* 数据get/set涉及序列化,性能次于本地堆内缓存
*/
OFF_HEAP(2),
/**
* 分布式缓存,可以缓存java堆内或堆外放不下的海量数据,
* 需要序列化,网络传输,耗时比进程内缓存高
*/
DISTRIBUTED(3),
/**
* 外部系统作为数据来源,其承受能力取决于该外部系统的实现
* 例如请求商品中心获取商品名称
*/
RPC(4),
/**
* 数据库,数据的最终来源,相对脆弱,需要重点保护
*/
DATABASE(5);
二、所有网络操作前加锁。