搜索引擎三大过程 爬取内容、进行分词、建立倒排索引。 分词器 分词器使用IK,通常为了保证索引时覆盖度和搜索时准确度,索引分词器采用ik_max_word,搜索分析器采用ik_smart模式。可在IK的配置文件中配置自定义的词典、停词词典。 倒排索引 Elasticsearc依赖Lucene建立倒排 ...
分类:
其他好文 时间:
2020-09-07 19:19:25
阅读次数:
60
解耦Java模块的设计策略点击左上角蓝字,关注“锅外的大佬”专注分享国外最新技术内容1.概述Java平台模块系统(JavaPlatformModuleSystem,JPMS)提供了更强的封装、更可靠且更好的关注点分离。但所有的这些方便的功能都需要付出代价。由于模块化的应用程序建立在依赖其他正常工作的模块的模块网上,因此在许多情况下,模块彼此紧密耦合。这可能会导致我们认为模块化和松耦合是在同一系统中
分类:
编程语言 时间:
2020-09-07 18:46:41
阅读次数:
36
1.前言Python中函数的参数类型比较丰富,比如我们经常见到*args和**kwargs作为参数。初学者遇到这个多少都有点懵逼,今天我们来把Python中的函数参数进行分析和总结。2.Python中的函数参数在Python中定义函数参数有5种类型,我们来一一演示它们。2.1必选参数必须参数是最基本的参数类型,当你在Python函数中定义一个必选参数时,每次调用都必须给予赋值,否则将报错。>
分类:
编程语言 时间:
2020-09-04 17:31:06
阅读次数:
56
三层架构和MVC 三层架构 咱们开发服务器端程序,一般都基于两种形式,一种C/S架构程序,一种B/S架构程序 使用Java语言基本上都是开发B/S架构的程序,B/S架构又分成了三层架构 三层架构 表现层:WEB层,用来和客户端进行数据交互的。表现层一般会采用MVC的设计模型 业务层:处理公司具体的业 ...
分类:
编程语言 时间:
2020-09-04 17:11:26
阅读次数:
44
1、 Python3 基本数据类型 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。 等号(=)用来给变量赋值。 等号(=)运算符左边是一个变量名,等号(=) ...
分类:
编程语言 时间:
2020-09-03 16:48:09
阅读次数:
34
1. 抢购活动开始的一瞬间,大量的用户校验请求打到了用户服务。导致用户服务网关出现了短暂的响应延迟,有些请求的响应时长超过了10s,但由于HTTP请求的响应超时我们设置的是30s,这就导致接口一直阻塞在用户校验那里,10s后,分布式锁已经失效了,此时有新的请求进来是可以拿到锁的,也就是说锁被覆盖了。 ...
分类:
其他好文 时间:
2020-09-03 16:40:54
阅读次数:
39
TCP 握手和挥手 TCP 协议 ? 全双工协议 三次握手 ? 第一次握手,(SYN=1, seq=x),客户端发送一个 SYN标志 位置1的包, 指明 客户端打算连接的服务的端口,以及初始序号X, 保存在 包头的 序列号(Sequence Number) 字段里。 客户段进去 SYN_SENT 状 ...
分类:
其他好文 时间:
2020-09-02 16:45:11
阅读次数:
51
概述DelayQueue也是一种队列,它内部的元素有“延迟”,也就是当从队列中获取元素时,如果它的延迟时间未到,则无法取出。DelayQueue的类签名和继承结构如下:publicclassDelayQueue<EextendsDelayed>extendsAbstractQueue<E>implementsBlockingQueue<E>{}下面分析其代码实现
分类:
其他好文 时间:
2020-08-31 13:20:35
阅读次数:
41
K8S资源管理总结及dashboard创建 K8S核心资源管理方法: 陈述式管理:基于众多kubectl命令 声明式管理:基于k8s资源配置清单 GUI式管理:基于K8S仪表盘(dashboard) K8S四种核心的附件 CNI网络插件:如果集群足够小,其实不需要网络插件,只需要改iptables规 ...
分类:
其他好文 时间:
2020-08-28 14:31:58
阅读次数:
68