神马小说---

使用opensearch打造高性能搜索服务

[使用背景]

神马小说是最早使用opensearch的用户,和opensearch一起成长。目前神马小说每天2亿搜索pv,1000w 用户。产品形态分全网sc,垂搜,app三大块。

opensearch在使用中表现稳定可靠,每天平均latency 40ms,平均qps 2500。

[使用过程]

神马小说团队有着资深的搜索背景,在小说产品刚起步的时候,面临着自己搭建引擎或者选用opensearch的基础方向问题。当时选择opensearch的主要原因:

1、信任opensearch团队,opensearch团队以往的经历展现了意志坚定,做事靠谱的优秀品质;

2、opensearch方便易用,在web页面新建一个应用,配置索引字段,使用数据接口灌几篇doc,引擎就搭好生效了,普通工程师几天就能熟悉掌握opensearch的使用;

3、引擎的部署、升级、扩容是系统运维上非常麻烦的事情,使用opensearch能省去一大摊事情,更好的把精力投入到业务上。

4、opensearch对于文本类模糊搜索有非常完善的解决方案,自定义多维度分词、丰富的文本相关性feature,低latency、高QPS,都很好的满足我们的需求。

事实证明了我们当时的选择是正确的。

当然使用opensearch过程中也踩过坑。比如索引字段类型可以在线更改功能刚上线时,更改后导致该索引失效,搜索无结果;还有早期搜索偶尔会无结果,查出是opensearch的一个bug。

踩坑是难以避免的,就像程序一定存在bug,重要的是踩坑后的后继处理速度和处理方案。opensearch在这方面的表现让人放心。在群里贴出问题后,opensearch同学会迅速答复,然后热情参与问题跟踪,直到解决。即使晚上出现突发情况时,从没发生找不到人帮忙的情况。

[需求和建议]

再聊聊使用opensearch遇到的功能性问题。

1、opensearch不支持全量重建,要一条条揪出过期数据然后删除,这个不方便。

OpenSearch解答:目前API全量功能已经在规划中,敬请期待。

2、期望opensearch能支持应用别名。用户使用应用别名A,A实际指向A1,要切换应用时,把A指向A2,对用户透明。

OpenSearch解答:应用灰度发布的功能也已经在规划中,敬请期待。

[总结]

最近改版的前端页面很好用,杭州、上海两地机房的投入让服务更加稳定可靠,离线流程的升级、精排功能的增强让用户有了更好的使用体验。

祝opensearch越做越好,带给大家更多的福利。

神马小说:http://m.sm.cn/novel/

马上申请opensearch免费公测

微博互动

神马小说:使用opensearch打造高性能搜索服务的更多相关文章

  1. EasySwoole+ElasticSearch打造 高性能 小视频服务系统

    EasySwoole+ElasticSearch打造高性能小视频服务 第1章 课程概述 第2章 EasySwoole框架快速上手 第3章 性能测试 第4章 玩转高性能消息队列服务 第5章 小视频服务平 ...

  2. 亚马逊云推出基于机器学习的企业搜索服务Kendra,剑指微软

    近日,在AWS re:Invent全球大会上,亚马逊发布了五项新的基于机器学习的人工智能 (AI) 服务. 这五项服务包括机器学习驱动的企业搜索.代码审核与分析.欺诈检测.医疗转录和 AI 预测的人工 ...

  3. 翻译-使用Ratpack和Spring Boot打造高性能的JVM微服务应用

    这是我为InfoQ翻译的文章,原文地址:Build High Performance JVM Microservices with Ratpack & Spring Boot,InfoQ上的中 ...

  4. 记一次数据库调优过程(IIS发过来SQLSERVER 的FETCH API_CURSOR语句是神马?)

    记一次数据库调优过程(IIS发过来SQLSERVER 的FETCH API_CURSOR语句是神马?) 前几天帮客户优化一个数据库,那个数据库的大小是6G 这麽小的数据库按道理不会有太大的性能问题的, ...

  5. 【阿里云产品公测】高大上的搜索服务OpenSearch,你值得拥有!

    [阿里云产品公测]高大上的搜索服务OpenSearch,你值得拥有! 作者:阿里云用户trcher ​ 一.前言: 在OpenSearch没出来之前,就一直想给网站做个搜索功能,虽然网站本身自带搜索功 ...

  6. 开放搜索服务OpenSearch

    开放搜索服务系统架构:从系统.平台到开放服务 搜索是各类网站和数据类APP的标配功能.目前开发者一般基于开源搜索系统,例如ElasticSearch.Solr.Sphinx等自己搭建搜索服务,系统定制 ...

  7. 使用Ratpack和Spring Boot打造高性能的JVM微服务应用

    使用Ratpack和Spring Boot打造高性能的JVM微服务应用 这是我为InfoQ翻译的文章,原文地址:Build High Performance JVM Microservices wit ...

  8. 【转】DSP是什么--DSP是神马东东??

    原文:http://www.eepw.com.cn/article/272908.htm 导读:本文主要介绍的是DSP是什么,不懂得童鞋们快随小编一起学习一下DSP到底是个神马东东吧! 本文引用地址: ...

  9. 给你的网站添加谷歌AMP、百度MIP、神马MIP链接自动提交功能

    我们在做网站的时候,经常会听到别人说SEO优化,网站优化等等.但是我们经常听的云里雾里的,但是经过我们运营一段时间之后,我们慢慢的就会熟悉了,知道什么是SEO.SEO中文译名为搜索引擎优化,既然是叫搜 ...

随机推荐

  1. Labview中定时函数之间的区别

    第一个定时函数(时间延迟):在VI中插入时间延迟,指定在运行调用VI之前延时的秒数.默认值为1.000. 第一个定时函数(等待(ms)):等待指定长度的毫秒数,并返回毫秒计时器的值.该函数进行异步系统 ...

  2. 查询processlist具体信息

    SELECT * FROM information_schema.PROCESSLIST WHERE HOST LIKE '%172.16.10.22%' AND COMMAND <> ' ...

  3. listview的tag

    tag,记录一行数据的唯一标识,小DEMO: lsShow.Items.Add("洗衣机"); lsShow.Items[].Tag = "我不愿让你一个人"; ...

  4. C# Devexpress学习--LabelControl

    A LabelControl can display an image (regular or animated GIF file). Different images can be provided ...

  5. xshell linux传文件

    yum  install lrzsz 安装完毕即可使用 rz,sz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具 windows端需要支持ZModem的telnet/s ...

  6. Trapping Messages Sent to an Application

    http://www.delphicorner.f9.co.uk/articles/apps7.htm Trapping Messages Sent to an Application I wrote ...

  7. How a non-windowed component can receive messages from Windows -- AllocateHWnd

    http://www.delphidabbler.com/articles?article=1 Why do it? Sometimes we need a non-windowed componen ...

  8. git status对应中文名称

    git status显示出来的中文文档是一串字符码,不能正常识别 git config --global core.quotepath false 这一句代码就可以帮你

  9. MiinCMP1.0 SAE 新浪云版公布, 开源企业站点系统

    MiinCMP是一款开源企业站点系统,除可执行于256M左右100元的国内IDC外,JUULUU聚龙软件团队最近开发了面向新浪云的版本号,该版本号可将站点免费布署到新浪云SAE上.MiinCMP採用j ...

  10. Codeforces Gym 100803C Shopping 贪心

    Shopping 题目连接: http://codeforces.com/gym/100803/attachments Description Your friend will enjoy shopp ...