神马小说---

使用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. POJ 1556 The Doors(线段交+最短路)

    The Doors Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5210   Accepted: 2124 Descrip ...

  2. [置顶] 如何在浏览器中打开PDF文件并实现预览的思路与代码

    编写项目遇到一个需要在浏览器中打开PDF文件的问题.最终实现效果如下: 其实也就是简单的在浏览器中实现一个打开pdf文件,并有类似预览功能的边框. 其实在网上经常见到类似的页面,在浏览器中打开pdf文 ...

  3. js get 传参 汉字 乱码问题

    js encodeURI(encodeURI(searchWord)) java URLDecoder.decode(searchWord,"utf-8")

  4. Lotus 迁移到Exchange 2010 POC 之在Exchange 2007安装Transport Suite!

    我们登录到Exchange 2007服务器,下载Transport 组件,下载地址如下,我们由于安装在Exchange 服务器上,所以需要安装64位版本:

  5. lighttpd fastcgi的搭建

    公司很久以前有个task需要在板子上搭建个webserver以响应局域网内手机的请求. 以前是用lighttpd plugin实现的,后来仔细想想用fast cgi来弄也可以. 在install li ...

  6. ngTbale假分页实现排序、搜索、导出CSV等功能

    一. ngTable功能简化 使用ngTable经常有分页,排序,过滤等功能,实现诸多功能较为麻烦.为了方便开发过程,可以抽取一些table共同点写一个公有方法. 注意: 1. 由于很多特别的需求,可 ...

  7. Docker 入门教程

    几个月以前,红帽(Red Hat)宣布了在 Docker 技术上和 dotCloud 建立合作关系.在那时候,我并没有时间去学习关于 Docker 的知识,所以在今天,趁着这个 30 天的挑战,我决定 ...

  8. CloudStack4.2 更新全局参数API

    测试更新全局参数API http://192.168.153.34:8080/client/api?command=updateConfiguration&response=json& ...

  9. fastJson泛型如何转换

    引子 现在负责的业务 和 json 打交道比较多, 最近使用fastJson框架 json串转成泛型对象遇到了一个异常 : java.lang.ClassCastException 还原下场景 : 模 ...

  10. c#获取或修改配置文件

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...