【问题标题】:Caching ignite client node缓存点燃客户端节点
【发布时间】:2017-11-17 11:57:22
【问题描述】:

我正在编写一个后端应用程序,它应该接收来自客户端的请求并使用 ignite 缓存执行一些操作。问题是我需要低延迟响应时间,并且重新创建Ignite 客户端节点以使用缓存执行某些操作是完全不可接受的。

在应用程序启动时创建 Ignite 客户端节点,然后在后端收到来自客户端的需要对 Ignite 缓存进行一些操作的请求时使用它是否很常见。我的意思是这样的:

public class Handler{

    private static final Ignite igniteClient;
    static{
        Ignition.setClientMode(true);
        igniteClient = Ignition.start();
    } 
    private final Semaphore semaphore = new Semaphore(5);

    private void handle(){
        semaphore.acquire();
        //use igniteClient
        semaphore.release();
    }
}

【问题讨论】:

    标签: java caching ignite


    【解决方案1】:

    是的,在应用程序启动时创建 Ignite 客户端节点然后重用它是很常见的。

    此外,为每个请求创建新客户端并不是一个好主意,因为它会导致每个 NODE_JOIN 和 NODE_LEFT 事件的拓扑发生变化,从而导致在服务器节点上为每个客户端创建新对象和连接。

    【讨论】:

      猜你喜欢
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-27
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多