其他分享
首页 > 其他分享> > Algolia国內替代方案

Algolia国內替代方案

作者:互联网


主题列表:juejin, github, smartblue, cyanosis, channing-cyan, fancy, hydrogen, condensed-night-purple, greenwillow, v-green, vue-pro, healer-readable, mk-cute, jzman, geek-black, awesome-green, qklhk-chocolate

贡献主题:https://github.com/xitu/juejin-markdown-themes

theme: juejin
highlight:

Algolia 官网截图

Algolia 官网截图

Algolia 是什么?

Algolia 是一家美国的创业公司,他们提供了很容易使用的搜索引擎的服务,让开发者可以快速对站内内容进行检索和搜索。

Algolia 在国内能用吗?

短的答案: 会很慢。

长的答案:

Algolia 在香港有服务节点,在中国大陆暂时没有服务节点,你在下图可以看到,网络延迟在 600 - 700ms 之间,所以是很慢的。

Algolia 在香港的节点的访问网络延迟

Algolia 在香港的节点的访问网络延迟

Algolia 的 开源替代方案: MeiliSearch

MeiliSearch 官网截图

MeiliSearch 官网截图

MeiliSearch 是什么?

MeiliSearch 是基于 Rust 语言开发的开源搜索引擎。它旨在为用户提强大和可自定义的搜索体验,包括开箱即用的功能,如拼写错误容差,过滤和同义词任何类型的项目。

为什么选 MeiliSearch?

因为 MeiliSearch 是开源的,支持中文,同时他们的开发者社区比较活跃。相反 Algolia是闭源的。

从价格方面来考虑,虽然 Algolia 提供了免费方案,但是如果每月的搜索量超过了 10,000 次,之后就是 $1 美元 / 1,000 次搜索。

而 MeiliSearch 就不存在量在按次收费的问题,最多就是服务器和流量的成本。

Algolia 官网的产品价格 截图

最后从隐私的角度来考虑,如果你对隐私有要求,使用 Algolia 可能比较难做到,因为 Algolia 基本上知道了你的用户都在搜什么, 而开源的 MeiliSearch 基本上可以保护好你的搜索数据。

如何快速安装一个 MeiliSearch Server?

21云盒子提供一键托管,免运维的 MeiliSearch 作为 Algolia 国内的替代方案

  1. 注册成为 21云盒子会员
  2. 在21云盒子菜单中点 “托管应用”
  3. 选 “MeiliSearch”
  4. 选合适的服务器配置
  5. 点 “马上创建”

不用一杯茶的时间,你的 MeiliSearch 就部署在线上,你可以通过 <APP_ID>.21yunbox.com 进行访问。

还没有加载搜索索引的 MeiliSearch

还没有加载搜索索引的 MeiliSearch

你可以在 MeiliSearch 仪表盘 (Dashboard) 中进行测试, 你会看到现在搜索没有结果,这是因为我们还没有添加搜索索引 (Search Index)。

如何添加搜索索引到 MeiliSearch?

你可以通过 curl 直接加载进去:

curl \
  -X POST 'https://<APP_ID>.21yunbox.com/indexes/movies/documents' \
  --data @movies.json

image.gif

更多搜索索引的介绍可以参考 MeiliSearch 官方文档

如何使用 MeiliSearch 进行搜索?

MeiliSearch 提供了 6+ 种语言的 SDK 可以直接使用。 同时 MeiliSearch Server 也提供了一个可视化的 Web 界面,可以用来测试搜索结果,到 服务名.21yunbox.com 进行访问即可。

以下是搜索 ‘spiderman 2’ 的返回结果

搜索 'spiderman 2' 的返回结果

搜索 'spiderman 2' 的返回结果

其他相关的博客:

转自21云盒子官方博客: https://www.21yunbox.com/blog/solutions/algolia-alternatives-in-china.html

标签:MeiliSearch,21,com,国內,搜索,服务器,Algolia,替代
来源: https://www.cnblogs.com/21yunbox/p/14333520.html