服务

Services

Redisson 提供了 4 种类型的分布式服务:Remote Service, Live Object Service, Executor Service and Scheduled Executor Service。

Remote Service

该服务提供了 Redis 促进的 Java 远程方法调用。Redisson 远程服务由服务器端(Worker Instance)和客户端实现组成。服务器端实现执行客户端调用的远程方法。服务端注册用于远程调用的接口:

RRemoteService remoteService = client.getRemoteService();
LedgerServiceImpl ledgerServiceImpl = new LedgerServiceImpl();

remoteService.register(LedgerServiceInterface.class, ledgerServiceImpl);

客户端则可以直接执行调用:

RRemoteService remoteService = client.getRemoteService();
LedgerServiceInterface ledgerService
  = remoteService.get(LedgerServiceInterface.class);

List<String> entries = ledgerService.getEntries(10);

Live Object Service

Redisson Live Objects 将只能从单个 JVM 访问的标准 Java 对象的概念扩展到可以在不同机器中的不同 JVM 之间共享的增强 Java 对象。它通过将对象的字段映射到 Redis 哈希来完成的。通过运行时构造的代理类进行此映射,字段获取器和设置器被映射到 Redis hget/hset 命令。

@REntity
public class LedgerLiveObject {
    @RId
    private String name;

    // getters and setters...
}

RLiveObjectService service = client.getLiveObjectService();

LedgerLiveObject ledger = new LedgerLiveObject();
ledger.setName("ledger1");

ledger = service.persist(ledger);

LedgerLiveObject returnLedger
  = service.get(LedgerLiveObject.class, "ledger1");
上一页
下一页