在上篇文章中我们队Dubbo的扩展进行了一些基本了解.这些扩展能够很好的帮助我们在实际的项目中发挥作用,接下来对于dubbo的一些高级特征,针对特殊情况而进行的处理进行进一步的介绍,这里我们要说的是结果缓存.
为什么要用到结果缓存,主要是用于加速热门数据的访问速度,Dubbo提供声明式缓存,以减少用户加缓存的工作量。
下面我们将通过一个例子来对结果缓存进行一个接触.
1、客户端和服务提供端共用接口类
packagecom.alibaba.dubbo.demo;
public interfaceCacheService {
String findCache(String id);
}
2、服务提供端接口实现类
packagecom.alibaba.dubbo.demo.provider;
importjava.util.concurrent.atomic.AtomicInteger;
importcom.alibaba.dubbo.demo.CacheService;
public classCacheServiceImpl implements CacheService {
//AtomicInteger通过一种线程安全的加减操作接口
private final AtomicInteger i = newAtomicInteger();
@Override
public String findCache(String id) {
String result = "request: " +id + ", response: " + i.getAndIncrement();