自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java搜索工程技术栈

专注搜索问答推荐工程领域,包含技术:Java、ElasticSearch、SpringBoot、Dubbo、Linux、Sql、Kafka、MQ、MyBatis、XXl-Job、Zookeeper、Nginx、Redis、K8S等,每周不定期更新精华文章!

  • 博客(491)
  • 资源 (6)
  • 收藏
  • 关注

转载 springboot如何把HttpServletRequest传入到controller

是由如tomcat这种Servlet容器创建的。Tomcat 创建的 Request 和 Response 的类结构图。至于这个是怎么传到你对应的controller方法内的,实际上就是SpringMVC里面的起的作用。这里先不展开,下面再讨论,先看一张图。

2023-01-07 12:16:23 1959 1

转载 移动端iphone抓包调试神器—Stream安装和使用(一)

stream是一款免费轻量级移动端ios抓包调试工具,配置方便无需设置代理,集成了HTTP抓包、构建请求、Hosts 设置、常用工具、数据导出等功能。5、点开始抓包,进入要抓包的app美团外卖,抓好包后 停止抓包。3、设置-通用-描述文件,找到下载好的证书,安装成功。1、苹果手机appstore搜stream并下载。4、设置-通用-关于手机-证书信任设置,开启信任。6、进入抓包历史,查看抓包信息。2、进入抓包工具,允许配置。

2023-01-07 12:03:11 5545

转载 springboot项目配置动态注入与springboot读取docker环境变量

最近在看《Kubernetes权威指南》这本书,书的第一章是部署一个mysql+tomcat的简单项目,要先部署mysql 实例然后创建mysql的svc,创建了svc时才会分配一个ip,因为打包的时候不知道这个ip所以tomcat项目要根据约定读取env环境变量才行,跟着书上的例子部署成功了,但是我实在没搞明白这个tomcat的项目是怎么读取env环境变量的?如果在springboot项目中又该怎么读取?基于这两个问题我又想到了两个新的问题:1.springboot怎么配置信息动态注入?

2023-01-07 11:57:00 1948

转载 企业知识分享+团队协作神器之Confluence

一、Confluence简介二、知识库软件对比三、快速安装confluence 7.4.6版本四、confluence基本操作简介4.1、创建空间(Space)4.2、配置空间权限4.3、新建页面或“文档”4.4、移动文档4.5、空间管理4.6、插入Markdown文档+目录4.7、邀请团队成员开通账号confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki。通过它可以实现团队成员之间的协作和知识共享。关键词:信息共享、协同编辑以下几个基本概念需要了解一下:空间(Space)空间

2022-12-08 10:44:38 2444

转载 依托TAPD的敏捷实践

源起在互联网浪潮下,不可能一直墨守成规,保持一成不变的项目管理方法。在公司的飞速发展研发队伍不断壮大的情况下,对项目经理的管理方法提出了新的要求和挑战。在对既定的整体项目流程无法作出进一步优化和改革时,首先想到了敏捷转型。在各方的支持下,迎来了敏捷教练,在敏捷教练的带领下积极学习敏捷理论并进行了相互学习和交流后开始了敏捷试点。于是有了后面的故事,让小编给你娓娓道来。需求梳理需求梳理的目的是确保产品待办列表(Product Backlog)顶部的需求已准备好排入下一个迭代。包括需求的增删改查、估算、调整优先级

2022-12-08 10:24:32 801

转载 监控系统 Prometheus 的原理

ELK Stack 日志收集和检索平台想必大家应该比较熟悉,Elasticsearch + Filebeat + Logstash + Kibana。ELK 架构而 Prometheus 就相当于一整个 ELK,但是它其实并不是适合存储大量日志,也不适合长期存储(默认存储 15 天)。它的优势是查看最近的趋势数据,以及告警机制。下图是 Prometheus 架构图: Prometheus architecture,来自官网Prometheus 它是从应用程序中实时获取时间序列数据,然后通过功能强大的规则引擎

2022-12-08 09:47:31 266

原创 架构师知识体系梳理

文章目录1、架构师的职责和能力1.1 架构师的主要能力1.2 架构师的主要职责2、架构基础2.1 软件设计原则2.1.1 设计模式2.1.2 面向对象OOD的原则2.2 架构设计与建模基础2.2.1 架构视图2.2.2 软件建模语言(UML)2.2.3 架构设计原则1 分布式缓存架构1.1 Redis1.1.1 原理1.1.2 特点1.2 实际使用中需要关注的点1.3 分布式缓存一致性Hash算法1.4 缓存指标1.5 缓存类型1 消息队列和异步架构1.1 MQ产品1.2 特点1.3 元素组成1 负载均衡架

2022-12-07 09:21:52 1916

转载 如何做好技术管理?

背景痛点目标研发管理体系构建思考道: 在于文化,思维,准则,价值观,领导力的构建,是思维和思想,它需要我们落到实处。法:在于流程化,标准化,制度化的构建,是通过管理制度(法治)方式管理组织。术:在于通过招,用,养,留,去五个维度打造人员管理体系。器:在于通过系统化,工具化体系整体提升工程效能,精细化管理。势:在于建立或者迎合公司和行业的形势,懂战略,明方向。总结技术管理者(技术总监/经理/CTO)期望通过体系化的管理方式建设,能够在百人,千人以上的团队中有效的构建聚焦目标,自我成长,高效能的研发作战团队,快

2022-12-06 19:24:14 909

转载 Java关键字之native详解

native 用来修饰方法,用 native 声明的方法表示告知 JVM 调用,该方法在外部定义,我们可以用任何语言去实现它。简单地讲,一个native Method就是一个 Java 调用非 Java 代码的接口。

2022-11-14 11:30:45 2729 1

转载 ES 自定义分析器

字符过滤器处理初始输入的字符串,可以过滤掉特定的字符,或者转换成自定义的字符分词器分词器把字符串分成单个词条,一个分析器必须有一个唯一的分词器词单元过滤器词条按顺序通过词单元过滤器,词单元过滤器可以修改,添加或者移除词条。例如lowercase过滤器,会把字母全部转换为小写。{{{{...字符过滤器...},{...分词器...},"filter"{...词单元过滤器...},{...分析器...}}}}{{{"filter"{...

2022-07-18 19:26:36 437

转载 Redis+Caffeine两级缓存,让访问速度纵享丝滑

我们看看下一个版本。另外,如果是分布式环境下,一级缓存之间也会存在一致性问题,当一个节点下的本地缓存修改后,需要通知其他节点也刷新本地缓存中的数据,否则会出现读取到过期数据的情况,这一问题可以通过类似于Redis中的发布/订阅功能解决。首先,两级缓存与数据库的数据要保持一致,一旦数据发生了修改,在修改数据库的同时,本地缓存、远程缓存应该同步更新。此外,缓存的过期时间、过期策略以及多线程访问的问题也都需要考虑进去,不过我们今天暂时先不考虑这些问题,先看一下如何简单高效的在代码中实现两级缓存的管理。...

2022-07-17 11:54:35 294

转载 JWT(JSON Web Token) 认证 :目前最流行的跨域认证解决方案

JSONWebToken(缩写JWT)是目前最流行的跨域认证解决方案,本文介绍它的原理和用法。

2022-07-17 11:52:38 577

转载 微信全文搜索技术优化

全文搜索是使用倒排索引进行搜索的一种搜索方式。倒排索引也称为反向索引,是指对输入的内容中的每个建立一个索引,索引中保存了这个在内容中的具体位置。全文搜索技术主要应用在对大量文本内容进行搜索的场景。微信终端涉及到大量文本搜索的业务场景主要包括联系人、聊天记录、收藏的搜索。这些搜索功能从 2014 年上线至今,已经多年没有更新底层搜索技术,聊天记录使用的全文搜索引擎还是 SQLite FTS3,而现在已经有 SQLite FTS5,收藏首页的搜索还是使用简单的语句去匹配文本,联系人搜索甚至用的是内存搜索(在内存

2022-06-23 16:28:07 408

转载 百度搜索稳定性问题分析的故事

导读:百度搜索系统是百度历史最悠久、规模最大并且对其的使用已经植根在大家日常生活中的系统。坊间有一种有趣的做法:很多人通过打开百度搜索来验证自己的网络是不是通畅的。这种做法说明百度搜索系统在大家心目中是“稳定”的代表,且事实确是如此。百度搜索系统为什么具有如此高的可用性?背后使用了哪些技术?以往的技术文章鲜有介绍。本文立足于大家所熟悉的百度搜索系统本身,为大家介绍其可用性治理中关于“稳定性问题分析”方面使用的精细技术,以历史为线索,介绍稳定性问题分析过程中的困厄之境、破局之道、创新之法。希望给读者带来一些启

2022-06-23 16:17:24 216

转载 3+1保障:高可用系统稳定性是如何炼成的?

自己以及带领的团队曾经负责较多不同类型的互联网服务系统,如几十万应用数&亿级流量的云计算平台、年营收将近千亿的广告系统、亿级用户千万级日活的钉钉工作台系统、亿级交易额的钉钉市场&交易系统、算法在线离线工程系统等相关系统或子系统,整体而言无重大故障,达到定级故障数也很少,线上稳定性保障在一个不错的水位上。阶段性总结下我从团队技术负责人视角做好稳定性建设的实践性思考和简要思路,为感兴趣的技术同学提供一个实践指南。我的团队稳定性建设思路包括了3大技术要素:良好的系统架构和实现、完备的团队研发运维流程机制、技术同学

2022-06-23 15:56:15 421

转载 地理空间搜索:kd树的实现原理

前情回顾:但是如果这个数据集中的训练实例非常多且密集,而且一个实例就有很多特征,那么就要计算出成千上万个距离,运算量极其庞大。这时,我们就可以用一个更快速的计算方法——kd树。kd 树从根本上看,是一个二叉树结构,根据这个结构对k维空间进行不断的划分,每一个结点就代表了k维超矩形区域。二维(k=2)的矩形区域:三维(k=3)的矩形区域:输入: k维空间数据集:xi=(xi(1),xi(2),...,xi(k))T,xi(l)的上标代表的是第l个特征值输出: kd树在根结点处选择一个最优特征进行切割,一般通过

2022-06-23 15:47:33 369

转载 地理空间搜索 ->R树索引

1、传统暴力求解方法的局限性。 在地理空间搜索这块,我们会常常遇到一个问题,假设我们知道了一个地点经纬度信息,我们如何检索它附近10km以内的所有的点,假设我们是用关系数据库mysql来存放的,数据库里大概有40万条数据。我们能够直觉想到的是利用球面距离公式,直接求解该地点与所有地点的距离,然后根据计算结果再进行筛选,这时候我们发现该方法的复杂度为要执行40万 * 距离函数,随着数据库地点数据的增加,该距离计算复杂度也会线性增长,我们知道,在球面距离计算公式里面有sin()、cos()、sqrt

2022-06-23 14:29:38 2639

转载 Elasticsearch 在地理信息空间索引的探索和演进

本文来自 vivo 互联网服务器团队- Shuai Guangying本文梳理了Elasticsearch对于数值索引实现方案的升级和优化思考,从2015年至今数值索引的方案经历了多个版本的迭代,实现思路从最初的字符串模拟到KD-Tree,技术越来越复杂,能力越来越强大,应用场景也越来越丰富。从地理位置信息建模到多维坐标,数据检索到数据分析洞察都可以看到Elasticsearch的身影。LBS服务是当前互联网重要的一环,涉及餐饮、娱乐、打车、零售等场景。在这些场景中,有很重要的一项基础能力:搜索附近的POI

2022-06-23 14:04:12 183

转载 提升ElasticSearch稳定性的秘密

作者:empeliu,腾讯 TEG 后台开发工程师微信支付的账单系统是方便用户获取交易记录,针对不同的用户群,账单也分为三类:个人账单:针对普通用户群,这类用户特点是基数大,单个用户数据量小,使用账单系统主要是获取列表以及基础统计;商户账单:针对商户用户群,这类用户特点是基数小,单个用户数据量非常大,使用账单系统主要是获取列表,并且在获取列表时需要支持丰富查询条件;业务账单:针对用户群介于普通用户和商户之间,比如微商或面对面小商户,使用账单系统主要是获取列表以及丰富统计功能;目前账单平台为微信支付的这三类账

2022-06-22 18:10:37 332

转载 Elasticsearch 性能调优:段合并(Segment merge)

Elasticsearch索引(elasticsearch index)由一个或者若干分片(shard)组成,分片(shard)通过副本(replica)来实现高可用。一个分片(share)其实就是一个Lucene索引(lucene index),一个Lucene索引(lucene index)又由一个或者若干段(segment)组成。所以,当我们查询一个Elasticsearch索引时,查询会在所有分片上执行,既而到段(segment),然后合并所有结果。此文将从segment的视角,分析如何对Elast

2022-06-22 16:24:52 1476

转载 Elasticsearch搜索引擎性能调优

对于写索引负载很高但是对搜索性能要求不是很高的场景如日志搜索,采用优秀的写索引策略就显得非常重要了。可以尝试以下几种方法来提升写索引的性能。当有大量的写任务时,使用批量提交是种不错的方案。但是每次提交的数据量为多大时能达到最优的性能,受文件大小、数据类型、网络情况、集群状态等因素的影响。通用的策略如下。(1)批量提交的数据条数一般是根据文档的大小和服务器性能而定的,但是一次批处理的数据大小应从5MB~15MB开始,逐渐增加,直到性能没有提升时才结束。(2)在通过增加一次提交的数量而效果没有显著提升时,则需要

2022-06-22 16:21:23 621

转载 Elasticsearch 检索性能优化实战指南

检索响应慢!并发检索用户多时,响应时间不达标卡死了!怎么还没有出结果?怎么这么慢?为啥竞品产品的很快就返回结果了?宕机了等等......这些都与可能检索有关,确切的说和检索性能有关。检索性能的优化涉及知识点比较零散,我以官方文档的检索性能优化部分作为大框架和主线,结合实战经验和咨询经验用通俗易懂的语言做下解读。Elasticsearch 严重依赖文件系统缓存来加快搜索速度。通常,你应该确保至少有一半的可用内存进入文件系统缓存,以便 Elasticsearch 可以将索引的热点区域保留在物理内存中。线上环境还

2022-06-22 15:41:36 595

转载 聊聊高可用的 11 个关键技巧

大型互联网架构设计,讲究一个组合拳玩法,、、、。如果能掌握这四个方面,应付大厂面试以及日常工作中的架构方案设计基本不是什么难题。今天,就带大家学习下都有哪些设计技巧?有句古话 "牵一发而动全身"。面对一个庞然大物,如果没有一个合理的分工分层。任何一个小小失误都会被无限放大,酿成巨大灾难。万物相通,回到我们的软件架构。早前的系统都是单体系统,比如电商业务,会员、商品、订单、物流、营销等模块都堆积在一个系统。每到节假日搞个大促活动,系统扩容时,一扩全扩,一挂全挂。只要一个接口出了问题,整个系统都不可用。“鸡蛋不

2022-06-22 14:51:13 192

转载 图解 SpringCloud 体系概览

架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。单体架构:未做任何拆分的Java Web程序分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。SOA架构:SOA是一种面向服务的架构。其应用程序的不同组件通过网络上的通信协议向其它组件提供服务或消费服务,所以也是分布式架构的一种。微服务架构在某种程度上是SOA架构的进一步的发展。微服务目前并没有比较官方的定义。微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下:微服务解决方案目前最流行的

2022-06-22 12:27:15 143

转载 高性能负载均衡架构如何实现?

单服务器无论如何优化,无论采用多好的硬件,总会有一个性能天花板,当单服务器的性能无法满足业务需求时,就需要设计高性能集群来提升系统整体的处理性能。高性能集群的本质很简单,通过增加更多的服务器来提升系统整体的计算能力。由于计算本身存在一个特点:同样的输入数据和逻辑,无论在哪台服务器上执行,都应该得到相同的输出。因此高性能集群设计的复杂度主要体现在任务分配这部分,需要设计合理的任务分配策略,将计算任务分配到多台服务器上执行。高性能集群的复杂性主要体现在需要增加一个任务分配器,以及为任务选择一个合适的任务分配算法

2022-06-22 11:24:15 185

转载 Tomcat工作原理详细介绍

大部分企业的 Web 应用都运行在它上面,Tomcat 对于程序员来说算是老朋友了,那么今天带大家走近这位老朋友,看看它是如何处理 Web 请求,以及它内部的体系结构,这对帮助我们理解 Tomcat 的使用大有益处。本文你将会学会如下内容:Web 容器与 TomcatTomcat 连接器Tomcat 容器要说清楚 Tomcat 做的事情先要从早期的 Web 应用说起。图 1:浏览器通过 HTTP 服务器获取静态资源如图 1 所示,最开始用户通过浏览器查看诸如新闻之类的静态资源,此时就需要通过 HTTP 服务

2022-06-22 10:55:24 4820 2

转载 Netty之旅:你想要的NIO知识点,这里都有

这段时间也一直在学习相关知识,因为涉及知识点比较多,也走了不少弯路。目前网上关于Netty学习资料玲琅满目,不知如何下手,其实大家都是一样的,学习方法和技巧都是总结出来的,我们在没有找到很好的方法之前不如按部就班先从基础开始,一般从总分总的渐进方式,既观森林,又见草木。抱歉好久没更原创文章了,看了下上篇更新时间,已经拖更一个多月了。之前恰巧跟杭州一个朋友小飞也提到过,两者在这方面的初衷是一致的,也希望更多的朋友能够加入一起学习和探讨。(PS:本篇文章是和小飞一起学习整理所得~)是一款提供异步的、事件驱动的网

2022-06-22 09:53:51 145

转载 架构师必备的七种能力

架构师,这个职业在大部分人眼中,认为他们在IT领域无所不能,不但拥有高超的架构决策能力,还精通各项主流技术领域。在发生问题时,他们能够快速诊断故障并解决,在推进项目时,他们能够精准掌控各方面信息来源。企业对架构师的期望可能会更高,认为他们是能够推动整个科技文化转型的关键要素,是能够调动各个科技团队融合的核心角色。不知在你们心目中,架构师的形象是怎样的,是“超级英雄”还是“救世主”,但至少从我这二年对架构师的理解和认识而言,他们可能都不是。甚至他们仅仅是一个听上去比较高端的职业罢了,只不过是被大多数人给神化了

2022-06-21 17:20:41 310

转载 架构师需要具备的能力

万物需要架构,比如国家的职能部门,有国务院/工商局/教育局等。企业的组织架构,有研发部/市场部/产品部等。 组织结构下的每一个部门,又会分很多角色,比如研发部,有技术部总监,技术Leader,技术架构师,研发工程师等,每个角色各自发挥角色价值。 互联网企业中架构师能力的好坏会决定软件系统的好坏,这个好坏体现在维护性,扩展性,成本,业务支撑效率等。 今天说说做好架构师工作需要具备的核心能力,该能力包括架构师的思维模式,架构师具备的架构原则,架构师深知的架构质量属性及程

2022-06-21 16:53:18 2798

转载 基于词典的正向/逆向最大匹配算法

编程语言是人类与计算机之间交流的工具,而所谓的自然语言则是人类与人类之间交流的工具,那么计算机是如何理解人与人之间交流所使用的语句呢?今天讲一种常用的自然语言处理算法——双向最大匹配算法,这种算法虽然实现简单,但是依赖庞大的词库,词库相当的情况下,能取得不错的分词效果。双向最大匹配算法”中的“双向”就是正向和反向。所以先来说正向匹配法。正向匹配法就是按照正向阅读顺序,根据词库中的词对句子进行匹配,我们已“苏州中学生前来参观”这句话为例(词库中存在各种长度的词语,这里假设词库中最长的单词长度为5)正向匹配法丨

2022-06-21 14:10:08 810

转载 线上服务应急攻关方法论

海恩法则指出:每一起严重事故的背后,必然有29次轻微事故和300起未遂先兆以及1000起事故隐患。海恩法则强调两点:(1)事故的发生是量的积累的结果;(2)再好的技术,再完美的规章,在实际操作层面,也无法取代人自身的素质和责任心。根据海恩法则,一起重大事故发生之后,我们要在处理事故和解决问题的同时,还要及时的对同类问题的「事故征兆」和「事故苗头」进行排查并处理,以防止类似问题的再次发生,将问题在萌芽状态就将其解决掉,这可以作为互联网企业线上应急的指导思想。墨菲定律指出:如果有两种或者两种以上方式去做某件事情

2022-06-21 11:33:16 88

转载 阿里稳定性之故障应急处理流程

尽管我们可以通过稳定性体系建设,来避免出现生产系统故障。但是仍然无法彻底避免一点风险都不会产生,当稳定性风险产生后,怎么快速协调组织,缩短故障时长,科学的流程就非常重要了。好在我们现在就开始思考的话,我们还有充足的时间去设计各个环节,并让参与的同学充分的锻炼,从而做到训练有素,为故障恢复争取宝贵的时间。对于问题解决有很多结构化解决方法,尤其是各种专业的咨询公司,这些流程值得我们借鉴。结合软件系统的生产环境故障来描述的话,一个典型的结构化问题解决步骤如下:问题定义:清晰的描述问题现象、影响,其中影响要尽量量化

2022-06-21 10:55:41 845

转载 架构相关:服务降级思路与方法

如果看过我前面对服务限流的分析,理解服务降级就很容易了,对于一个景区,平时随便进出,但是一到春节或者十一国庆这种情况客流量激增,那么景区会限制同时进去的人数,这叫限流,那么什么是服务降级呢?简单来说就是,将一些不太重要的景区项目砍掉,平时就那么三五八个人,景区可以开放湖中游泳啦,摸鱼啦,捉虾啦,有情况工作人员可以下湖捞你,但是现在客流量大了,工作人员关注不过来,都在湖里晃荡万一沉了不太安全,大手一挥,这个项目砍了,将工作人员分配在其他地方。在互联网中也有类似的降级措施,像之前双11, 有段时间是只允许下单不

2022-06-21 06:51:21 1686

转载 微服务和API网关限流熔断实现关键逻辑思路(深度好文)

今天准备谈下微服务架构和API网关中的限流熔断,当前可以看到对于Spring Cloud框架本身也提供了Hystrix,主流的开源API网关产品类似Kong网关本身也包括了限流熔断能力。当然也有完全较为独立的限流熔断开源实现,比如阿里的Sentinel即是我们经常会用到的限流熔断开源产品,而且可以和Dubbo,SpringCloud等各种微服务框架无缝集成。由于网上大家能够搜索到的关于各开源产品实现的限流熔断功能和使用的文章都很多,因此这篇文章不打算再去介绍这些开源产品,而是从业务场景出发来思考下一个限流熔

2022-06-21 06:43:23 619

转载 阿里巴巴复杂搜索系统的可靠性优化之路 v2019

搜索引擎是电商平台成交链路的核心环节,搜索引擎的高可用直接影响成交效率。闲鱼搜索引擎作为闲鱼关键系统,复杂度和系统体量都非常高,再加上闲鱼所有导购场景都依靠搜索赋能,搜索服务的稳定可靠成为了闲鱼大部分业务场景可用能力的衡量标准;如何保障搜索服务的稳定和高可用成为了极大的挑战。闲鱼搜索作为闲鱼核心系统,有以下几个突出的特点: * 数据体量大:对接闲鱼数十亿的商品,引擎有效商品数亿; * 索引庞大:闲鱼非结构化商品需要与算法团队合作,预测抽取有价值的结构化信息,建立索引;已创建数百的索引字段,整个引擎索引数据量

2022-06-20 21:02:01 329

转载 复杂系统如何在不停机升级同时保持稳定?by闲鱼技术

在互联网行业,线上服务的升级更新可谓家常便饭。据统计,在过去的一个季度中闲鱼工程师们执行了千余次发布,总计更新的代码数量超过百万行。这些发布中,有一些可能只更新了几行代码,而有一些可能执行了整个集群的迁移升级。而无论这些变更的影响面有多大,我们都必须保证线上服务的可用性,用户无感知。本文将以闲鱼搜索服务的迁移升级为例,向大家介绍其背后的技术方案。闲鱼的底层搜索服务由查询规划服务 Search Planner、查询理解服务 Query Planner、打分排序服务 Rank Service 以及搜索引擎 He

2022-06-20 20:56:48 497

转载 阿里集团搜索和推荐关于效率&稳定性的思考和实践

云栖君导读:本文分享了阿里集团从业务效率、资源效率、稳定性三方面来打造了TPP、Tisplus、OpenSearch三大搜索和推荐平台,通过调度系统、管控、高可用分布式服务框架、多机房容灾等手段,实现在不影响业务迭代效率情况下达到4个9的可用性、以及重大故障在5min内快速恢复。背景效率和稳定性是我们从工程层面来衡量系统对业务支持能力的两个关键指标。从流程管控上来看,业务效率的提升一定程度上会影响到稳定性,而对稳定性要求过高又会带来对业务效率的影响。从业务的角度来看,成熟的业务会更偏向于稳定性,而新业务更偏

2022-06-20 20:54:27 597

转载 稳定性与高可用保障的工作思路

稳定性与高可用性是老生常谈的两个词。凭借经验和感受我们知道,提高系统的这两项指标,系统会更加健康,产品也会有更好的用户体验。但是如果要给稳定性和高可用性下一个定义该如何表述?稳定性和高可用性这二者又有何区别和联系?我认为首先要理解好这两个问题,才能够设定清晰的目标,系统地制定完整可行的方案。在维基百科上搜索稳定性,定义如下:再看看高可用性的:首先从稳定性的定义中提炼出关键的词语 -- 系统、输入、输出。在蚂蚁当下的技术架构中,可以把一个应用当做系统,应用之间的服务请求为输入,服务响应为输出,当服务响应符合预

2022-06-20 20:46:35 169

转载 浅析位图索引(bitmap index)

位图索引是一种很高效的索引结构,对于多属性过滤的聚合查询很高效,玩的就是 bit。位图:位(bit)的一个简单数组,比如 001010,这个位数就是 6。位图索引:假如建立在一个表的列 A 上,对属性 A 中的每一个可能取值都建立位图,位图的位数和数据量相等。位图的生成方法:如果编号为 i 的记录在属性 A 上的值为 v_j,则 v_j 位图的第 i 位为1,否则为0。我们为性别字段建立位图索引,性别有 3 种取值,分别建立位图索引。《性别_男》= 100100。表示第 1 个和第 4 个是男,其他不是男,

2022-06-20 20:16:06 3330

转载 查询耗时降低2/3,携程度假搜索引擎架构优化 v2020

作者简介少伟,负责度假起价、搜索的研发工作,资深技术控。锦涛,负责度假搜索及相关子系统的建设,对搜索引擎、NLP等有浓厚兴趣。携程度假搜索引擎(以下简称为引擎):携程度假搜索引擎是一个专注在旅游行业的垂直搜索引擎,用来查找符合从出发地到目的地的相关旅游产品(跟团、自由行、邮轮、游学、主题游等),是一个典型的O2O搜索引擎(Online To Offline)。本文将分享度假搜索引擎的优化过程及相关思路,希望可以给公司同类项目以及行业同类需求提供一些启发和借鉴。主要业务范围:团队游、自由行、游学、主题游、玩乐

2022-06-20 20:06:05 192

JMH - Java 微基准测试工具(自助性能测试)完整可运行代码

JMH - Java 微基准测试工具(自助性能测试)完整可运行代码

2022-02-12

w3schhol全套资料文档

w3schhol全套资料文档,包含各类资料。

2013-06-09

【GoodSync】v9.1.0.5 文件同步工具 破解版(经过验证)

文件同步工具GoodSync 可以实现两台电脑或者电脑与U盘之间的数据和文件的同步转换。通过此工具,可以备份U盘中Pass2Go 中的数据或者其他文件到个人电脑的硬盘上。

2013-03-16

【Unlocker文件强力删除软件

Unlocker是一个免费的右键扩充工具,使用者在安装后,它便能整合于鼠标右键的操作当中,当使用者发现有某个文件或目录无法删除时,只要按下鼠标右键中的“Unlocker”,系统会弹出一个对话框,选择删除,然后确定。那么程序马上就会显示出是哪一些程序占用了该目录或文件,接着只要按下弹出的窗口中的“Unlock”就能够为你的文件解除锁定。 Unlocker 不同于其它解锁软件的部分在于它并非强制关闭那些占用文件的程序,而是以解除文件与程序关连性的方式来解锁,因此不会像其它解锁程序一样因为强制关闭程序而造成使用者可能的数据遗失。

2013-03-16

Everything v1.3

Everything(官网|中文主页|教程)是速度最快的文件名搜索软件。其速度之快令人震惊,百G硬盘几十万个文件,可以在几秒钟之内完成索引;文件名搜索瞬间呈现结果。它小巧免费,支持中文,支持正则表达式,可以通过HTTP或FTP分享搜索结果。如果不满意Windows自带的搜索工具、Total Commander的搜索、Google 桌面搜索或百度硬盘搜索,如果正在使用或放弃了Locate32,都值得推荐这款体积小巧、免安装、免费、速度极快(比Locate32更快)的文件搜索工具Everything!

2013-03-16

【网文快捕】CyberArticle v5.3 可破解版(经过验证)

利用CyberArticle可以方便的管理各种资料,尤其是网页。在您上网的时候,遇到好的文章,只需要点击鼠标,就可以将正在浏览的网页,保存在您的资料库里面。 同时,CyberArticle还可以导入Office文件(Word,Excel,PowerPoint文件),PDF文件,电子邮件,文本文件,图片,源代码,Flash动画等等。几乎您所有需要保存的文档,CyberArticle都可以帮您保存。

2013-03-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除