自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 InfluxDB 使用中错误及解决方法

InfluxDB 使用中错误及解决方法max-values-per-tag 导致写入大于10W条数据报错max-series-per-database 导致写入大于10W条数据报错 max-values-per-tag 导致写入大于10W条数据报错 错误核心:max-values-per-ta...

2020-04-28 17:23:58 195 0

原创 sleep() 和 wait() 的区别分析

wait() 和 sleep() 的区别 sleep是线程中的方法,但是wait是Object中的方法。 sleep方法不会释放lock,但是wait会释放,而且会加入到等待队列中。 sleep方法不依赖于同步器synchronized,但是wait需要依赖synchronized关键字。 sl...

2020-04-26 12:32:09 38 0

原创 多线程之间如何通讯

多线程之间如何通讯 多线程之间通讯:其实就是多个线程在操作同一个资源(共享资源),但是操作的动作不同。 多线程通讯场景:第一个线程写入(input)用户,另一个线程读取(out)用户。实现读一个,写一个操作。应用示例 — 消息中间件,对应生产者、消费者。 发布 / 写操作订阅 / 读操作Inp...

2020-04-22 17:46:35 59 0

原创 Java 数据结构与算法

数据结构和算法的介绍 数据结果的介绍 数据结果和算法的关系 实际编程中会遇到的问题 线性结果和非线性结构 稀疏数组和队列 稀疏 sparsearray 数组 实现数组的压缩和解压 队列 队列的一个使用场景 队列介绍 数组模拟队列分析和实现 数组模拟环形队列分析和实现 链表 链表(Linked Li...

2020-04-16 13:58:13 30 0

原创 Quartz任务调度快速入门进阶

Quartz任务调度 1、Quartz概念 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE、J2SE应用程序相结合或单独使用。 Quartz是开源且具有丰富特性的”任务调度库“,能够集成任何的Java应用、能够创建简单或复杂的调度、...

2020-03-09 20:22:10 42 0

原创 Linux 环境下安装 Tomcat

Linux 环境下安装 Tomcat 解压文件、设置目录 # 来到tomcat安装包所在的目录: cd /usr/local/Tomcat # 解压安装包: tar –zxvf apache-tomcat-5.5.17.tar.gz # 将解压生成的文件夹放到/usr/local下,并将文件夹...

2020-03-09 19:44:54 84 0

原创 volatile 关键字分析

Volatile 关键字分析 Volatile 关键字的作用是变量在多个线程之间可见,但不保证原子性。 被volatile修饰的共享变量:它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,它会去内存中读取新值。 未被volatile修饰的共享变量:不能保证可见性,因为普通共享变量...

2020-03-06 15:39:35 88 0

原创 Redis的RDB持久化和AOF持久化的对比总结

Redis 的RDB和AOF的对比总结 RDB持久化(Redis DataBase) Redis是内存数据库,一旦服务器进程退出,服务器中的数据库状态也会消失不见。重点在于save和bgsave命令。 RDB文件的创建与载入 save命令:阻塞Redis服务器进程,直到知道RDB文件创建为止,在...

2020-02-18 17:06:03 114 0

原创 Java 反射机制原理及用法解析

什么是反射机制 Java反射机制概念 前提:在运行状态中 条件1:对于任何一个类,都能够知道这个类的所有属性和方法; 条件2:对于任何一个方法,都能调用它的任意方法和属性; 在以上述的前提和条件的支持下,这种动态获取信息以及动态调用对象的功能称为Java的反射机制。 反射机制的实现原理 要使用...

2020-02-14 10:33:05 43 0

原创 Java 内存模型

Java内存模型(JMM) 即共享内存模型,JMM 决定一个线程对共享变量的写入时,能对另一个线程可见。 从抽象的角度来看,JMM 定义了线程和主内存之间的抽象关系: 主内存(main memory):存储线程之间的共享变量, 本地内存(local memory):每个线程私有的,本地存储中存储...

2020-02-11 16:56:48 35 0

原创 ElasticSearch 基于配置文件、settings设置、mapping设置的性能优化

ElasticSearch 性能优化 配置文件优化设置 elasticsearch.yml thread_pool: --bulk使用的线程池方式为fix bulk: size: 5 --bulk并发线程总数(与CPU核数相...

2020-02-07 17:53:30 79 0

原创 SpringBoot 知识点

SpringBoot 的启动和运行原理 SpringBoot 的启动流程 1、@SpringBootApplication 注解 @SpringBootApplication 注解实际上是 SpringBoot 提供的一个复合注解:@SpringBootConfiguration、@EnableA...

2020-02-06 19:15:13 128 0

原创 Java 基础流程图、架构图

Java 基础流程图、架构图 1. Spring 的生命周期 流程: bean 对象构建 首次容器启动后,对 bean 进行初始化 按照 bean 的定义,注入属性 检测该贵姓是否实现了 xxxAware 接口,并将相关 xxxAware 实力注入给 bean,如 BeanNameAware ...

2020-02-03 18:15:56 46 0

原创 Spring的事务传播机制解析

事务相关基础解析 事务分类: 物理事务 逻辑事务 物理事务与逻辑事务的区别: 最大差别在于事务传播行为 什么是事务传播行为: 用于指定下多个事务方法间调用时,事务是如何在这些方法间传播的 事务传播方法解析 方法A: @Service public class A { @...

2020-02-03 12:06:45 50 0

原创 Ambari部署中问题及解决方法

Ambari部署中问题及解决方法 问题:因集群互信或其他问题导致的Ambari集群部署时Confirm Hosts无法通过。 解决方法:通过对每台机器安装配置ambari-agent,在界面上选择手动安装和注册的方式通过验证 复制 ambari-server 机器的 yum.repo 到其他的节...

2020-01-15 11:40:40 124 0

原创 基于Kubernetes单机安装、部署SpringBoot、集群部署

基于Kubernetes单机安装、部署SpringBoot、集群部署 基于Kubernetes单机安装、部署SpringBoot kubernetes是容器编排器,单机二进制文件方式安装、离线安装版本及环境 Centos7 kubernetes 1.13版 docker 18.09.3版 准备...

2020-01-15 11:37:20 117 0

原创 Linux 服务器之间互信

Linux 服务器之间互信 修改hosts文件 执行vi /etc/hosts命令打开主机表文件,会看到类似如下的信息。 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 ...

2020-01-10 15:49:12 128 0

原创 InfluxDB 执行语句管理(Query Management)、配置文件中的命令管理选项

InfluxDB 执行语句管理(QM) 目的:对正在执行的 SQL 语句进行分析、处理,定位 SQL 语句的问题。 对语句管理的操作 列出正在执行的语句:show queries qid:正在执行的语句的 ID,可以使用 kill query + qid 命令杀死正在执行的语句。 quer...

2020-01-10 11:06:15 40 0

原创 InfluxDB 数据保存策略(Retention Policies)

InfluxDB 数据保存策略(RP) 说明:定义数据在 InfluxDB 中存放的时间,或定义保存某个期间的数据。一个数据库可以有多个保存策略,但每个策略必须是独一无二的。 目的:因 InfluxDB 本身不提供数据的删除操作,所以用数据保存策略来控制数据量(通过策略让 InfluxDB 知道...

2020-01-10 10:31:00 107 0

原创 InfluxDB 数据备份及数据恢复

数据备份 备份命令解释 influxd backup [ -database <db_name> ] --> 指定需要备份的数据库名 [ -portable ] --> 表示在线备份 [ -host <host:port...

2020-01-10 09:28:09 61 0

原创 Linux 目录结构

Linux 整体的目录结构 执行 ls / 命令可以查看根目录下的 目录的解释 /bin: Binary的缩写,存放最常用的命令。 /boot: 存放启动Linux时使用的核心文件,包括一些连接文件以及镜像文件。 /dev: Device(设备)的缩写,存放Linux的外部设备的目录...

2020-01-02 16:41:56 68 0

原创 Clickhouse 单节点部署

Clickhouse 单节点部署 单节点单实例 防火墙关闭或开放端口 关闭防火墙 service iptables stop chkconfig iptables off chkconfig iptables off 安装包准备 rpm 安装包准备,下载19.14版本: clickhou...

2019-10-18 09:53:32 154 0

原创 Git — 搭建gitlab服务

基础环境搭建 基础环境需要依赖:ssh、firewalld、postfix(用于邮件通知)、wget。 基础服务存在可跳过。 ssh 服务 安装ssh sudo yum install -y curl policycoreutils-pythonopenssh-server ...

2019-09-19 16:07:03 82 0

原创 Git — 搭建Git服务器

搭建Git服务器 安装 git: sudo yum -y install git 创建 git 用户,用来运行 git 服务: sudo adduser git 创建证书登录: 收集所有需要登录的用户的公钥(id_rsa.pud)文件,把所有公钥到导入 /home/git/.ssh...

2019-09-19 11:56:51 54 0

原创 Git — 自定义Git

设置命令输出颜色 执行 git config --global color.ui true 命令设置命令输出颜色: $ git config --global color.ui true 忽略特殊文件 在 Git 工作目录中,但又不想提交的文件;可以通过一个特殊的 .gitignore 文件,将...

2019-09-19 11:33:57 32 0

原创 Git — 标签管理

标签 标签是发布一个版本时,向版本库中打上的标记(相当于版本库的快照);标签可以随时获取对应的版本。 标签是指向某个 commit 的指针,和分支类似(分支可以移动,标签不能移动)。commit 号过于长且复杂,标签可以很方便找到对应的版本。 创建标签 执行 git tag < name...

2019-09-19 09:44:23 50 0

原创 Git — 多人协作、Rebase

多人协作 克隆远程库时,Git 自动把本地 master 分支和远程 master 分支对应起来,并且远程库默认名称是 origin。 执行 git remote 或 git remote -v (显示更详细的信息,fetch 是抓取,push 是推送,没有权限时看不到 push 的地址): $ ...

2019-09-17 20:39:01 71 0

原创 Git — Bug分支、Feature分支

Bug分支 当线上出现Bug需要修复,而手上的工作只进行了一般不想提交;此时可以通过一个新的临时分支来修复,修复后合并分支,然后将临时分支删除。 当前正在 dev 上进行的工作还未提交: $ git status On branch dev Changes to be committed: (...

2019-09-17 19:55:12 61 0

原创 Git — 分支管理策略

分支管理策略 合并分支时,Git 会用 Fast forward 模式,这种模式下,删除分支后会丢掉分支信息。 执行 git merge 命令合并分支时添加 –no-ff参数,表示禁用 Fast forward;-m 参数后加上描述: $ git merge --no-ff -m &...

2019-09-06 12:19:46 32 0

原创 Git — 解决冲突

解决冲突 master 分支和 feature1 分支对同一文件各自都有分别的新的提交时,引起冲突: 冲突情况下,Git 无法执行 “快速合并”,只能试图把各自的修改合并起来,但是这种合并就可能会有冲突: $ git merge feature1 Auto-merging readme...

2019-09-06 11:51:26 41 0

原创 Git — 创建与合并分支

分支概念分析 master 分支(主分支),是每次提交串成的时间线。 HEAD 严格来说不是指提交,而是指向 master,master 才是指向提交的。HEAD 指向的就是当前分支。 分支流程: 开始时:master 分支是一条线,Git 用 master 指向最新的提交,再用 HEAD 指向...

2019-09-06 10:55:43 37 0

原创 Git — 从远程库拉取

从远程库拉取 登录 GitHub,创建一个新的仓库,叫 gitskills; 勾选 Initializethis repository with a README,GitHub 会自动创建一个Readme.md文件 远程库已完成,在本地执行 git clone 命令进行克隆; $ gi...

2019-09-03 08:41:42 658 0

原创 Git — 添加远程仓库

基于GitHub的 SSH 添加 注册 GitHub 账号; 创建 SSH Key(本地 Git 和 GitHub 之间通过 SSH 加密传输)。在用户目录下,看看是否有 .ssh 目录; 若有,再查看一下 id_rsa(私钥) 和 id_rsa.pub(公钥) 两个文件是否存在。 若无,执行...

2019-09-02 16:37:14 54 0

原创 Git — 删除文件

删除文件 当文件删除(也属于修改)也会被 Git 跟踪到状态。 $ git status On branch master Changes not staged for commit: (use "git add/rm <file>..." to update ...

2019-09-02 15:42:41 49 0

原创 Git — 撤销修改

撤销修改 当发现错误时,必然是撤销之前的修改;但是,撤销修改操作也会在不同的阶段有不同方法。 撤销工作区的修改; 撤销暂存区的修改。 撤销工作区的修改 此时,恢复文件修改内容即可。 或者当内容太多不容易回复时,执行以下命令对文件进行恢(可以执行 git status 返回内容中有该命令的提示)...

2019-09-02 15:26:27 30 0

原创 Git — 管理修改

管理修改 GIt 比其他版本控制系统设计得优秀,因为 Git 跟踪并管理的是修改,而非文件。 验证: 对 readme.txt 做一个修改; $ cat readme.txt Git is a distributed version control system. Git is free so...

2019-09-02 14:39:42 34 0

原创 Git — 工作区和暂存区

工作区(Working Directory) gitspace 文件夹(目录)就是一个工作区 版本库(Repository) 工作区有一个隐藏目录 .git,这个是 Git 的版本库。 Git 的版本库里存了好多东西,其中最重要就是 stage(或者index)的暂存区,Git 自动创建的第一个分...

2019-09-02 09:24:50 44 0

原创 Git — 版本回退

版本回退 Git 的 commit 会保存一个快照,一旦文件改乱或误删文件,可以从最近一个 commit 恢复,然后继续工作。 先回顾下之前的 readme.txt 的几个版本: 版本1:wrote a readme file Git is a version control sy...

2019-08-30 15:05:49 39 0

原创 Git — 版本管理

Git 版本管理 修改已经提交的 readme.txt 文件: Git is a distributed version control system. Git is free software. 查看 git 库状态 执行 git status 命令查看结果: $ git status On ...

2019-08-30 14:32:58 46 0

原创 Git — 创建版本库

版本库 版本库:又名仓库(repository),也可以理解成一个目录。 特点:这个目录里所有的文件都可以被Git管理,每个文件的修改、删除,Git都可以跟踪;以便任何时刻都可以追踪历史,或者在将来某个时刻“还原”。 创建一个版本库 创建版本库非常简单,选择一个地方,创建一...

2019-08-30 13:49:21 59 0

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