Elasticsearch Node.js 客户端的安装

一、快速安装

安装最新版本

bash 复制代码
npm install @elastic/elasticsearch

安装指定主版本(major)

bash 复制代码
npm install @elastic/elasticsearch@<major>

关于各主版本的支持情况,请查看 兼容性矩阵(Compatibility matrix)

二、Node.js 支持(Node.js support)

注意

最低支持的 Node.js 版本为 v18

客户端的版本遵循 Elastic Stack 的版本节奏 :即主版本、次版本和补丁发布都有固定的计划,这往往不与 Node.js 的发布时间线一致

为避免继续支持不安全或已停止维护(EOL)的 Node.js 版本,客户端会在次版本(minor)升级之间 逐步移除 对这些 EOL 版本的支持。通常,某个 Node.js 版本一旦进入 EOL,客户端仍会再多支持至少一个次版本 。如果你正在使用即将不再受支持的 Node.js 版本,日志里会看到提前两个次版本开始的警告提示。

除非你始终使用受支持的 Node.js 版本,否则建议在 package.json 中用 ~ 而不是 ^ 来声明客户端依赖。这样依赖会锁定到次版本线 而不是主版本线(例如用 ~7.10.0 而非 ^7.10.0)。

2.1. Node.js EOL 与客户端停止支持时间

Node.js 版本 Node.js EOL 日期 客户端停止支持(版本/时间)
8.x 2019 年 12 月 7.11(2021 年初)
10.x 2021 年 4 月 7.12(2021 年中)
12.x 2022 年 4 月 8.2(2022 年初)
14.x 2023 年 4 月 8.8(2023 年初)
16.x 2023 年 9 月 8.11(2023 年末)
18.x 2025 年 4 月 9.2(2025 年末)

三、兼容性矩阵(Compatibility matrix)

语言客户端具备前向兼容 能力:也就是说,客户端可以与更高或相同次版本 的 Elasticsearch 通信而不出错。但这不代表 客户端会自动支持 更高版本中新引入的功能;支持新功能需要发布新的客户端版本

例如:8.12 版本的客户端不会自动支持 Elasticsearch 8.13 的新功能;要使用这些功能需要 8.13 客户端

另外,Elasticsearch 语言客户端仅对默认发行版 提供有限的向后兼容,不作额外保证。

Elasticsearch 版本 客户端版本 Supported
9.x 9.x 9.x
8.x 8.x 8.x
7.x 7.x 7.17
6.x 6.x
5.x 5.x

四、浏览器(Browser)

警告

官方不支持浏览器环境 直接使用该客户端。这样会将你的 Elasticsearch 实例暴露给所有人,带来严重的安全风险。

我们建议你编写一个轻量级代理服务(例如使用本客户端的 Node.js 服务端),由代理与 Elasticsearch 通信。你可以参考相应的代理示例。

相关推荐
A__tao11 小时前
Elasticsearch Mapping 一键生成 Java 实体类(支持嵌套 + 自动过滤注释)
java·python·elasticsearch
研究点啥好呢11 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
A__tao13 小时前
Elasticsearch Mapping 一键生成 Proto 文件(支持嵌套 + 注释过滤)
大数据·elasticsearch·jenkins
Devin~Y13 小时前
高并发电商与AI智能客服场景下的Java面试实战:从Spring Boot到RAG与向量数据库落地
java·spring boot·redis·elasticsearch·spring cloud·kafka·rag
Elastic 中国社区官方博客16 小时前
使用 Jina-VLM 小型多语言视觉语言模型来和图片对话
大数据·人工智能·elasticsearch·语言模型·自然语言处理·jina
LDG_AGI17 小时前
【搜索引擎】Elasticsearch(二):基于function_score的搜索排序
数据库·人工智能·深度学习·elasticsearch·机器学习·搜索引擎·推荐算法
孟祥_成都17 小时前
复刻字节 AI 开发流:实践 Node.js 通用脚手架
前端·人工智能·node.js
历程里程碑18 小时前
Protobuf总结
大数据·数据结构·elasticsearch·链表·搜索引擎
ACGkaka_18 小时前
ES 学习(七)性能陷阱
大数据·学习·elasticsearch
BLUcoding19 小时前
NVM for Windows 管理 Node.js 多版本
node.js