JestClient之HTTP长连接判断

本文探讨如何判断JestClient连接Elasticsearch集群时使用的是HTTP短连接还是长连接。通过连续插入数据并观察连接端口号变化来验证。结果显示JestClient与ES建立的是长连接,并且具有自动重连机制。当网络断开后,JestClient能够恢复连接,但端口号会改变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目的:
判断jestclient连接ES集群时,是HTTP短连接,还是HTTP长连接。

为什么要判断:
因为如果是短连接,我们需要连接池控制连接数,防止大量请求,重复创建连接导致系统崩溃;如果是长连接,我们需要注意如果长连接断开,该组件是否具备自动重连机制,防止生产因为长连接断开而导致不可补救的错误。

验证步骤:
第一步,验证是否为长连接:
通过jestclientES集群里重复连续插入300000条数据,观察循环中,该进程的连接端口号是否一直在变化;如果端口号一直变化,说明是短连接,否则是长连接。
下面请看测试代码:

/**
 * 〈一句话功能简述〉操作ES的Jest客户端<br>
 * 〈功能详细描述〉
 *
 * @author wangzha
 * @see [相关类/方法](可选)
 * @since [产品/模块版本] (可选)
 */
@Service
public class JestService<T> implements InitializingBean {
   
   

    public static Logger logger = LoggerFactory.getLogger(JestService.class);

    /**
     * jest客户端,单例
     */
    public JestClient client = null;

    @Value("${es.cluster}")
    private String cluster;

    /**
     * es 读取超时时间
     */
    private static final String ES_READ_TIMEOUT = "es.read.timeout";

    /**
     * es 连接超时时间
     */
    private
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值