你要如何衡量你的人生

坚持,努力,让好事发生

elasticsearch 配置笔记

Elasticsearch has three configuration files:

elasticsearch.yml for configuring Elasticsearch
jvm.options for configuring Elasticsearch JVM settings
log4j2.properties for configuring Elasticsearch logging

ES Server 配置

ES 配置

#自动创建索引
action.auto_create_index: .monitoring*,.watches,.triggered_watches,.watcher-history*,.ml*

可重新加载配置
Just like the settings values in elasticsearch.yml, changes to the keystore contents are not automatically applied to the running Elasticsearch node. Re-reading settings requires a node restart. However, certain secure settings are marked as reloadable.

POST _nodes/reload_secure_settings
POST _nodes/<node_id>/reload_secure_settings
curl -X POST "localhost:9200/_nodes/reload_secure_settings?pretty" -H 'Content-Type: application/json' -d'
{
  "secure_settings_password": "s3cr3t" 
}
'
阅读全文 »

Elastic Stack 是适用于数据采集、充实、存储、分析和可视化的一组开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana)

Elasticsearch 是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。 类似于MySQL,用来存储和分析数据。
Logstash可用来对数据进行聚合和处理,并将数据发送到 Elasticsearch。Logstash 是一个开源的服务器端数据处理管道,允许您在将数据索引到 Elasticsearch 之前同时从多个来源采集数据,并对数据进行充实和转换。 类似于程序,抽取解析数据并储存到ES
Kibana 是一款适用于 Elasticsearch 的数据可视化和管理工具。类似于使用MySQL时用的Navicat

简单的说,LogStash用来收取解析日志并发消息写入ES,Elasticsearch用来存储和分析查询,Kibana用来查看

es下载地址 https://www.elastic.co/cn/downloads/elasticsearch
logstash下载地址 https://www.elastic.co/cn/downloads/logstash
kibana下载地址 https://www.elastic.co/cn/downloads/kibana
filebeats

阅读全文 »

最近有一个需求,需要测试一下新数据库(mysql优化版)某个表的写入速度和查询速度,需要从我们的测试环境数据库查数据,插入到新的测试环境的新数据库。
本地连不上测试的数据库
有很多应用服务器,但是所有的服务器不能连外网,只能访问公司内网。
测试环境的应用可以连测试的数据库
想写个python脚本,但是服务器上python是2.7的,而且很多包没有。
想了想,应用服务器部署了java程序,java的包都有,想写一个java脚本来测试。(没错是java脚本)

测试环境数据库 db_test_old 192.168.1.10
新测试环境新数据库 db_test_new 192.168.2.11
测试环境应用 test-java 192.168.3.12

在idea里写完脚本,运行没问题,然后在 terminal 运行,被啪啪的打脸

阅读全文 »

google guava-cache

redis做缓存很快,但是还有网络IO,在并发量大要求耗时低的情况下还是不满足需求,所以想试试本地缓存。

发现guava缓存不错,想试试

在本地demo测试的时候发现更新缓存时有毛刺出现

阅读全文 »

vim有三种模式,一般模式、编辑模式、命令模式。
一般模式下只能 查看文件。 (输入 ESC 可以进入一般模式。)
编辑模式下可以对文件进行 新增、修改、删除。 (输入 i 可以进入编辑模式。进入后左下角可以看到 INSERT 标识)
命令模式下可以对文件进行 保存、退出 等操作。 (输入 ESC + : 可以进入命令模式。)

输入ESC+:进入命令模式后,输入q!可以退出文件并且不保存修改。
输入ESC+:进入命令模式后,输入qw可以退出文件并且保存修改。

阅读全文 »

vscode 全称 Visual Studio Code

(1) 通用设置

(1.1) vs-code 设置语言

打开命令面板(⇧⌘P) ,输入 configure display language,设置语言为 zh-cn

备注:打开命令面板 快捷键 mac Shift + Command + P(⇧⌘P) Windows Ctrl + Shift + p

(1.2) vs-code 设置背景豆沙绿

修改配置文件 ~/Library/Application Support/Code/User/settings.json
"editor.background" 设置成 "#C7EDCC",具体如下:

{
    "workbench.colorTheme": "Default Light+",
    "workbench.colorCustomizations": {
        "editor.background": "#C7EDCC"
        //设置用户选中代码段的颜色 
        //"editor.selectionBackground": "#2f00ff",
        //搜索匹配的背景色
        //"editor.findMatchBackground": "#ff0000",
        //"editor.findMatchHighlightBackground": "#ff00ff",
        //"editor.findRangeHighlightBackground": "#ff9900"
    
    },
    "editor.fontSize": 16,
    "window.openFoldersInNewWindow": "off",
    "window.openWithoutArgumentsInNewWindow": "on",
    "editor.largeFileOptimizations": false,
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "java.configuration.checkProjectSettingsExclusions": false,
    "extensions.autoUpdate": false,
    "window.zoomLevel": 0,
    "update.mode": "none"
}

(1.3) vscode更改图标

自定义您的VS Code图标
Icons and names usage guidelines

阅读全文 »

最近测试环境总是莫名的出问题,然后部署服务的容器里除了服务打印的日志,没有其它信息,想看看是什么原因导致的,是不是有哪块代码占用内存高。

如果把JVM比作一个运行中的机器,那么JDK自带的工具则是监控和调优的工具。


(1) JDK自带的工具

在$JAVA_HOME目录的bin目录里,可以看到很多工具,常用的有以下几个

文件名 工具名称 作用
jps 虚拟机进程状况工具 获取所有正在运行的Java 进程
jstat 虚拟机统计信息监视工具 查看Java进程的类加载、即时编译以及垃圾回收相关的信息。
jinfo Java 配置信息工具 查看Java进程的配置参数,并能够改动其中 manageabe 的参数。
jstack Java堆栈跟踪工具 打印Java 进程中各个线程的栈轨迹、线程状态、锁状况等信息。它还将自动检测死锁。
jmap Java 内存映像工具 统计Java进程的堆中存放的Java对象,并将它们导出成二进制文件。
jhat 虚拟机堆转储快照分析工具 分析java的堆情况,jmap导出的文件可以用jhat分析

代码执行缓慢、OutOfMemoryError,内存不足、内存泄露、线程死锁、锁争用(Lock Contention)、Java进程消耗CPU过高 都可以使用JDK的命令行工具排查。

Java虚拟机的监控及诊断工具-GUI

JConsole : Java 监视与管理控制台
VisualVM : 多合一故障处理工具
eclipse MAT
JMC
JITWatch


(2) 虚拟机进程状况工具 jps (JVM Process Status Tool)

jps主要用来输出JVM中运行的进程状态信息。
jps命令使用Java启动器来查找传递给main方法的类名和参数。

查看机器上的Java进程

[wkq@VM_77_25_centos ~]$ jps -l
15139 sun.tools.jps.Jps
13050 org.elasticsearch.bootstrap.Elasticsearch

命令格式

[wkq@VM_77_25_centos ~]$ jps -help
usage: jps [-help]
       jps [-q] [-mlvV] [<hostid>]

Definitions:
    <hostid>:      <hostname>[:<port>]
[wkq@VM_77_25_centos ~]$

(2.1) jps命令

jps命令用于输出JVM中运行的进程状态信息。可以获取到进程的pid、全限定名、传入main方法的参数、传入JVM的参数 等。

语法格式

jps [ options ] [ hostid ]

如果不指定hostid就默认为当前主机或服务器。

详细信息见 man jps

(2.1.1) jps 不加参数

在本地主机上搜索检测到的JVM。

[wkq@VM_77_25_centos ~]$ jps
14916 Jps
13050 Elasticsearch
阅读全文 »
0%