在单台服务器部署多个ElasticSearch节点
对于想要学习ES的人来说, 集群是一个不得不谈的话题, 而且就目前的形式来说, 越来越要求开发人员会用分布式. 对于ES来说, 由于其本身对分布式集群已经支持的相当完善, 已经屏蔽了大多数的服务发现, fallover等. 但是学习集群首先要有一个集群, 对于大多数人来说, 还是希望在本地运行一个集群. 所以本篇是在笔者查阅了大量资料之后, 经过尝试总结的在ES 7.x版本下如何在单节点下运行ES集群.
阅读本文你将学会:
- 通过将ES复制多份实现单节点集群部署
- 通过使用启动参数(Options)部署单节点集群
- 使用Docker部署单节点集群
- Elasticsearch7目录详解
- Elasticsearch7配置详解
- 部署Elasticsearch7时需要修改的操作系统参数
- ……
ElasticSearch为什么在高版本移除映射类型
由于ElasticSearch官方文档使用的还是2.x版本, 而在使用其中的某些API时, 会出现deprecated提示. 本篇主要总结ElasticSearch中那些由于版本更新而不再推荐使用的API, 例如: 移除了映射类型(mapping types). 同时也作为正式学习ElasticSearch前的又一次预热.
本篇主要内容:
- 什么是映射类型(mapping types)
- 为什么要移除映射类型
- 映射类型的可选替代方案: 每种文档类型一个索引/自定义类型字段
- Elastic Search 各个版本对types的支持
- 一些Elastic Search在新版本的使用技巧
- ……
ElasticSearch之安装篇
本篇主要讲述了ElasticSearch的基本概念, 以及ElasticSearch的安装与简单配置, 主要是为接下来ElasticSearch热身.
主要内容包括:
- Elastic Search相关介绍
- Elastic Search安装与配置
- Kibana安装
- 一些由于版本兼容而导致的坑
- ……
为什么在Java中String被设计为不可变
最近在学习新的编程语言Scala了, 在Scala中变量分为val(不可变类型), 和var(可变类型). 突发奇想想到了在Java中的String都被声明为final, 也就相当于是Scala中都被声明为val了吧! 但是具体是为什么呢? 本篇文章带你探寻在Java中String被声明为不可变背后的秘密!
本篇文章主要内容:
- String源码简单分析
- String在JVM中的常量池的解析: 字面量, new, +连接, intern()
- String中的==和equals
- 什么是Java中的不可变? 不可变的好处与坏处?
- 证明回答String被设计成不可变和不能被继承的原因
- ……
示例代码: https://github.com/JasonkayZK/Java_Samples/tree/java-string