其他分享
首页 > 其他分享> > 缓存点燃客户端节点

缓存点燃客户端节点

作者:互联网

我正在编写一个后端应用程序,该应用程序应该从客户端接收请求并使用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();
    }
}

解决方法:

是的,通常在应用程序启动时创建Ignite客户端节点,然后再使用它.

此外,为每个请求创建新的客户端不是一个好主意,因为它将导致每个NODE_JOIN& NODE_LEFT事件,该事件导致为服务器节点上的每个客户端创建新的对象和连接.

标签:caching,ignite,java
来源: https://codeday.me/bug/20191025/1932429.html