极速的查询速度——Elasticsearch通过有限状态转换器实现了用于全文检索的倒排索引,实现了用于存储数值数据和地理位置数据的 BKD 树,以及用于分析的列存储。每个数据都被编入了索引。

可观的可扩展性——Elasticsearch能够水平扩展,每秒钟可处理海量事件,同时能够自动管理索引和查询在集群中的分布方式,可以在承载了 PB 级数据的成百上千台服务器上运行。

强大的弹性保障——硬件故障。网络分割。Elasticsearch 检测这些故障并确保集群(和数据)的安全性和可用性。通过跨集群复制功能,辅助集群可以作为热备份随时投入使用。

如何使用Elasticsearch?

安装Elasticsearch

https://www.elastic.co/cn/downloads/elasticsearch

这里我们选择的是6.2.2版本的ES,因为我在spring-data-elasticsearch的github上看到最新版本的支持的ES是6.2.2

其中3.2.x版本尚未发布正式版,所以这里选择了最新的3.1.8版本,下面我们切换到安装目录的bin目录下,启动es:

./elasticsearch &

这里添加 & 符号的作用是让它在后台运行。

看到这个就说明启动成功了~

安装中文分词器iK

因为,在我们日常的应用中,我们用的比较多的都是中文的分词,所以这里我们需要一个中文的分词器

首先前往github上下载与ES版本对应的zip包

https://github.com/medcl/elasticsearch-analysis-ik/releases

然后在es的安装目录下的plugins下新建一个ik的目录,将zip包解压到该目录下重启es即可~

在es的启动日志中看到这个说明插件已经安装并启动成功!

到这里,我们的前期准备工作就已经结束了,下面的就是在Spring Boot项目中进行操作了~

添加pom依赖

我们首先在pom.xml中添加spring-data-elasticsearch的依赖(敲黑板!!这里的版本一定要去参考一下对应的ES的版本,不然就会引起版本兼容性问题而报错!):

org.springframework.data

spring-data-elasticsearch

3.1.8.RELEASE

依赖已经添加完毕,下面我们就通过简单的配置来完成CRUD

CRUD

这里的配置需要注意一个点,我们访问的9200是HTTP的端口号,而使用Java的时候需要配置成9300:

spring:

data:

elasticsearch:

cluster-name: my-applicatioon

cluster-nodes: 127.0.0.1:9300

在启动日志中,我们可以看到这一点:

然后我们通过注解来完成一个index和mapping的创建(即对应关系型数据库中的库和表)

@Data

@Document(indexName = “test”,type = “article”)

public class Article implements Serializable {

private Long id;

@Field(type= FieldType.Text,analyzer = “ik_max_word”)

private String title;

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

private String content;

}

Spring Boot 2,nginx架构师相关推荐

  1. [Spring boot] Spring boot + JPA 基本架构,完成CRUD

    本章目的 怎么开发Rest服务,服务发布测试等 项目结构 项目使用Spring Boot建议的基本结构,demo项目可以点击此处下载,然后根据自己的应用修改,项目名称和目录结构.如下图所示,需要修改 ...

  2. spring boot微服务架构mybatis多数据源切换

    1,先看个目录结构图 可以看到,我把要设置的配置文件都放在了config文件夹下面 2,Application.java是程序启动项,里面必须设置 3,application.properties是多 ...

  3. 不学spring其他,直接学spring boot

    作者:hsmcomputer 链接:https://www.zhihu.com/question/303235503/answer/2211568375 来源:知乎 著作权归作者所有.商业转载请联系作 ...

  4. JAVA资深架构师成长路线

    文章目录 JAVA资深架构师成长路线 架构师筑基必备技能 并发编程进阶 JVM性能深度调优 网络编程与高效IO 深入Tomcat底层 MySql深度优化 架构基础必备Linux 设计思想 六大原则 种 ...

  5. Spring Boot 2.0(五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    我知道大家这段时间看了我写关于 docker 相关的几篇文章,不疼不痒的,仍然没有感受 docker 的便利,是的,我也是这样认为的,I know your felling . 前期了解概念什么的确实 ...

  6. 使用Spring Boot和Kubernetes构建微服务架构

    "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证. 在本教程 ...

  7. 只需5分钟即可启动并运行分层架构:: Spring Boot第1部分

    这是一个分为两部分的系列,其中我将展示如何使用Spring Boot创建分层架构. 什么是分层体系结构:简而言之,当我们构建企业应用程序时,我们维护不同的层以封装特定于层的逻辑,这样就不会溢出到另一层 ...

  8. (转)Spring Boot 2 (五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    http://www.ityouknow.com/springboot/2018/03/28/dockercompose-springboot-mysql-nginx.html 我知道大家这段时间看了 ...

  9. ELK 处理 Spring Boot 日志,妙!

    以下文章来源方志朋的博客,回复"666"获面试宝典 在排查线上异常的过程中,查询日志总是必不可缺的一部分.现今大多采用的微服务架构,日志被分散在不同的机器上,使得日志的查询变得异常 ...

最新文章

  1. tlb存的什么_什么是MMU,TLB
  2. JAVA统计字母、数字个数
  3. 禁用Browser Link
  4. 关于分布式事务、两阶段提交协议、三阶提交协议
  5. Py之easygui:easygui的简介、安装(最正确安装)、使用方法之详细攻略
  6. 话里话外:企业内控的灵魂——企业文化
  7. vscode过滤pyc文件
  8. C语言栈的push函数,关于栈的有关问题。为什么Push函数top始终是NULL
  9. Java版飞翔的小鸟代码完整
  10. DevIL的学习笔记
  11. putty linux上安装及使用
  12. windows 2003 下IIS没有ASP.NET 1.1.4322选项卡
  13. 企业微信怎么通过手机号添加好友?企业微信添加好友话术!
  14. wheel安装+使用wheel安装第三方库+临时换源安装和永久换源安装
  15. 【XSY2753】LCM
  16. Eigenvalue and singular value
  17. MOSFET是什么器件,它的作用是什么
  18. mysql eva模型_第四章 Schema 与数据类型优化
  19. Vulnhub_gigachad_vh
  20. #18 可视化基础4-簇形柱状图、百分比堆积柱状图、并列子图

热门文章

  1. 恭喜,他们终于复婚,网友:我又相信爱情了
  2. Android的自定义键盘颜色,如何在自定义键盘Android中动态更改键的背景颜色或主题...
  3. linux 录屏命令,命令行一键 “录屏”
  4. Python 百分比计算
  5. Unity硬解播放8k视频
  6. C/C++中算法运行时间的三种计算方式(By 虚怀若谷)
  7. 新买的笔记本电脑怎么分盘_为什么许多手机厂商开始做笔记本电脑,真有这么大的市场前景?|手机|笔记本|电脑|笔记本电脑...
  8. static(静态定位),fixed(固定定位),relative(相对定位),absolute(绝对定位)
  9. Nexus 找回管理员账号密码,各种不同的版本,提供三种方法
  10. 测试工程师长路漫漫,从测试0到测试1? 谁知道我经历了什么......