自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (9)
  • 收藏
  • 关注

原创 Airflow 从0开始

1.安装版本airflow 1.10.6python 3.6安装安装python3.6, 创建虚拟环境[root@ip-172-27-0-4 upload]#yum install python36[root@ip-172-27-0-4 upload]# virtualenv -p /usr/bin/python3 ./air-flow[root@ip-172-27-...

2019-12-15 19:59:08 420

原创 es/kibana配置 TLS/SSL

1 生成证书elasticsearch-cert使用 pem生成根证书/usr/share/elasticsearch/bin/elasticsearch-certutil ca --days 720 --pem生成节点证书(因为 使用的是虚拟机,ip 会动态改变, 这里 在生成 节点证书时 不加入 dns, ip 等配置, 所以生成的这个证书多个节点可以共用/usr/shar...

2019-10-31 20:53:22 6109

原创 Kibana discover如何显示符合要求的时间格式

1.需求说明索引中有两个字段 @timestamp 和 message_date, 希望 @timestamp 显示的时间格式为:YYYY-MM-DDTHH:mm:ss.SSSZ, message_date 显示的格式为YYYY-MM-DD2.实现2.1 通过elasticsearch mapping 来实现mapping 中定义 format 为 date_optional_timeP...

2019-10-31 11:08:03 3017

原创 Mysql实战45讲第4,5 讲学习笔记

mysql 忘记密码

2019-06-02 15:30:34 169

原创 PriorityQueue源码解析

一.数据结构Priority queue 是一个 平衡二项堆(平衡二叉树);树中所有的子节点必须大于等于父节点,而无需维护大小关系,是一个最小堆- 父节点与子节点的索引关系:① 假设父节点为queue[n],那么左孩子节点为queue[2n+1],右孩子节点为queue[2(n+1)]② 假设孩子节点(无论是左孩子节点还是右孩子节点)为queue[n],n>0。那么父节点为queu...

2019-04-27 17:21:02 463

原创 Boyer–Moore majority vote algorithm(摩尔投票算法)

Boyer–Moore majority vote algorithm摩尔投票算法Leetcode15: https://leetcode.com/problems/majority-element/ , 计算众数, 可以使用boyer-moore majority 算法: public int majorityElement(int[] nums) { int ma...

2019-02-18 16:29:48 472

原创 Java8 函数式编程和stream 学习一

流管道剖析– JDK 中的流来源– 中间流操作中间操作负责将一个流转换为另一个流,中间操作包括 filter()(选择与条件匹配的元素)、map()(根据函数来转换元素)、distinct()(删除重复)、limit()(在特定大小处截断流)和 sorted()。一些操作(比如 mapToInt())获取一种类型的流并返回一种不同类型的流。– 终止流操作数据集的处理在执行终止操作时...

2019-01-31 17:00:23 229

原创 Java Fork/Join 框架学习和实践

Fork/Join 框架原理说明ForkJoinPool实现原理Fork/Join 框架 在 归并排序和快速排序中的应用使用Fork/join 框架的归并排序使用Fork/join 框架的快速排序排序参考...

2019-01-29 18:41:53 146

原创 Elasticsearch源码学习2:写入流程源码分析

相关和接口的继承关系bulk http 请求流程图:流程详细说明参考

2019-01-22 15:22:29 1197

原创 算法练习:无序矩阵(其中只有1和0两种值),求只含有1 的最大的子矩阵大小 和获取 完全二叉树节点数量

问题1给定一个无序矩阵,其中只有1和0两种值, 求只含有1 的最大的子矩阵大小, 矩阵的大小用其中的元素个数来表示解题思路:矩阵压缩, 计算出以每一行为底的直方图举例说明: 矩阵为0 1 1 0 11 1 0 1 1以第一行为底的直方图为: 0 1 1 0 1以第二行为底的直方图为: 1 2 0 1 2 (当前底的数值为0,则直方图值为0)针对1中的直方图, 进行入栈操...

2019-01-17 11:51:28 3463

原创 Java 线程池学习

- 为什么要有线程池?为了避免系统频繁的创建和销毁线程,可以让创建的 线程进行复用。- JDK 中 线程池类的关系- ThreadPoolExecutor 以及线程池工作原理分析1.ThreadPoolExecutor 参数说明:关于 WorkQueue 的详细说明上一篇BlockingQueue拒绝策略handler 的说明:2.线程池工作原理源码分析:1.1 submi...

2019-01-09 17:38:15 422

原创 BlockingQueue学习

BlockingQueue 为一个interface, 提供了以下操作接口。四组不同的行为方式解释:1(异常)如果试图的操作无法立即执行,抛一个异常。private static Queue<String> queue = new ArrayBlockingQueue<String>(2); //申请队列长度为2通过 add 添加,超过2个会抛出异常:ja...

2019-01-08 15:15:55 160

原创 Elasticsearch 源码学习1:elasticsearch v6.0 代码导入idea

Intellij Idea 运行Elasticsearch源码 v6.0.0

2019-01-08 13:33:58 843

转载 JAVA 内存模型和JVM内存结构

深入理解JVM-内存模型(jmm)和GCjava 内存模型

2019-01-03 18:23:29 335

转载 HashMap 和ConcurrentHashMap 原理介绍

Java 位运算说明HashMap 原理介绍ConcurrentHashMap 如何做到线程安全

2019-01-03 16:51:11 162

原创 算法练习:双指针问题

问题1(LeetCode 42):源码给定一个非负数的数组,代表一个容器。例如数组[0,1,0,2,1,0,1,3,2,1,2,1],就是以下图形中黑色的部分。如果用这个容器接水的话,请问可以接多少水?还以这个数组为例,可以接6格水,就是以下图形中蓝色的部分解题思路:简化题意:如果能求得当前位置格子上的水量,那么总水量就是每个位置水量之和。当前格子上所能存储的水量 = 当前格子左边最大值与...

2019-01-03 13:58:42 422

原创 算法练习:数组最长递增子序列问题

基础算法原型问题:《程序员代码面试指南》page 202主要解题思路:求解dp[i],表示以arr[i]这个数结尾的情况下, 最长递增子序列的长度.O(N*N)的做法:源码O(N* logN)的解法, 求解dp[i],源码 /*** * 1. 增加辅助数组 ends[b]和right 变量。 * 2. ends[b] 表示 长度为b+1 的递增子序列的最小...

2019-01-01 17:57:23 2226

原创 自然语言算法-HMM

自然语言算法-HMM学习笔记一. 马尔科夫模型二. 隐马尔科夫模型2.1 隐马尔科夫模型定义2.2 隐马尔可夫模型三个问题2.3 解决三个问题的算法以及相关实现参考一. 马尔科夫模型马尔科夫模型描述了一类的重要随机过程。如果一个系统有N个 有限状态 S={s1,s2,s3,......,sn}S=\{s1,s2,s3,......,sn\}S={s1,s2,s3,......,sn}, 随着时...

2018-12-29 20:29:44 852 1

原创 可重入锁和并发容器源码分析

可重入锁和并发容器源码分析二.ReentrantLock 源码分析二.并发容器源码分析参考二.ReentrantLock 源码分析ReentrantLock 的实现原理 主要通过CAS 和 AQS 来实现。ReentrantLock的基本实现可以概括为:先通过CAS尝试获取锁。如果此时已经有线程占据了锁,那就加入CLH队列并且被挂起。当锁被释放之后,排在CLH队列队首的线程会被唤醒,然后CA...

2018-12-26 11:28:06 118

原创 JVM 日志分析

CMS GC 日志分析:https://www.cnblogs.com/onmyway20xx/p/6590603.html 和https://my.oschina.net/go4it/blog/1628795Elasticsearch gc 日志分析:http://www.imooc.com/article/details/id/80769-XX:+PrintTenuringDistribu...

2018-12-12 14:37:45 369 1

原创 Python数据分析:应用一

应用场景:分析Elasticsearch 中的索引每天占用的存储量, 存储量单位为mb, 按照存储量降序排列1.读取文件import pandas as pdimport numpy as npresult = pd.read_table('./analysis.txt', sep='\s+')result.head(10)输出:health status index uuid p...

2018-12-10 18:12:47 543 1

原创 主成分分析(PCA)

一.理论基础1.1 协方差与协方差矩阵样本协方差,随机变量协方差,协方差矩阵1.2 矩阵的迹矩阵的迹及特性1.3 矩阵的特征值,特征向量矩阵特征值二.PCA主成分分析是最重要的降维方法之一,在数据压缩消除冗余和数据噪音等领域有广泛的引用。选择一个超平面对 正交空间里的样本点进行有效的描述,需要注意两点:最近重构性:样本点到这个超平面的距离都足够近最大可分性: 样本点到这个...

2018-10-25 20:03:28 977

原创 支持向量机2-线性支持向量机和核函数

线性支持向量机一.线性可分支持向量机存在的问题二.线性支持向量机2.1 线性分类SVM的软间隔最大化2.2 软间隔最大化目标函数的优化2.3 线性分类SVM算法总结2.4 软间隔最大化时的支持向量一.线性可分支持向量机存在的问题有些时候样本中混入了异常点,导致不能线性可分, 如下两种情况:图一中蓝色异常点的引入导致线性不可分;图二中因为引入了蓝色点,导致超平面由红色视线变成了黑色虚线, 模型...

2018-10-15 23:38:26 3289

原创 机器学习算法-逻辑回归

机器学习算法-逻辑回归一. 逻辑回归模型1.1 逻辑回归定义1.2 逻辑回归模型二. 代价函数求解2.1 定义代价函数的方法2.2 代价函数求解方法-梯度下降三. Sklearn 参数说明四. 常见问题参考一. 逻辑回归模型1.1 逻辑回归定义LR 是一种简单、高效的常用分类模型,能处理二分类或者多分类。1.2 逻辑回归模型sigmoid 函数:对线性回归的结果做一个在函数g上的转换,...

2018-10-11 16:59:13 995

原创 支持向量机1-线性可分支持向量机

线性可分支持向量机一.支持向量机分类二.函数间隔与几何间隔三.线性可分支持向量机3.1 线性可分支持向量机的定义3.2 线性可分支持向量机的目标函数与优化一.支持向量机分类SVM 是一种二分类模型, 包含三种类型:线性可分支持向量机,线性支持向量机以及非线性支持向量机;线性可分支持向量机:当训练数据可分时, 通过硬间隔最大化, 学习一个线性的分类器线性支持向量机:当训练数据近似线性可分时,...

2018-10-11 11:37:33 671

原创 机器学习算法-线性回归

机器学习笔记-线性回归一. 理论基础1.1 凸函数1.2 线性1.3 极大似然估计二. 线性回归模型(目标函数)2.1 线性回归定义2.2 线性回归模型三. 损失函数求解3.1 定义损失函数的方法3.1.1 最小二乘法3.1.2 极大似然法3.2 代价函数求解3.2.1 正规方程3.2.2 梯度下降3.2.3 正规方程和梯度下降比较四. 模型评估五. Sklearn 参数说明六. 理解L1和L2参...

2018-10-08 13:50:11 2221

原创 Elasticsearch 学习: 分布式文档路由原理

Document 文档路由原理 增删改查一个document 的时候, 会根据路由算法 shard = hash(routing) % number_of_primary_shards ,结果shard一定是在0~number_of_primary_shards-1之间这个范围内, document 选择放入该shard, 然后放到对应的副本上。 A. routing 也可...

2018-06-12 17:25:43 1046

原创 Elasticsearch学习笔记:索引结构中store, _all , index,copy_to 属性介绍, 批量索引优势分析

禁用字段类型猜测 创建索引blog, 插入文档后新增document, 增加字段endPUT /blog{ "mappings":{ "article":{ "dynamic":"false", "properties&amp

2018-06-06 12:28:06 2915

原创 java相关问题总结

SSM 相关问题 一:spring事务的传播属性和隔离级别 总结的很好的一个连接:http://www.iteye.com/topic/78674 另外可以通过junit 来单元测试 这其中的case数据库相关问题 一.创建索引的优缺点? 1.创建索引的优点:能提高系统的性能 a.通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。

2017-04-18 10:41:51 256

原创 分布式架构学习一:dubbo管控台的安装

准备环境:1.dubbo-admin-2.5.3.war 2.jdk-1.7.0.79 3 tomcat-7.01.下载dubbo-admin-2.5.3.war 放到 tomcat 的webapps下, 删除原有的ROOT目录,重命名dubbo-admin-2.5.3.war为ROOT 2.修改WEB-INF/dubbo.properties 的zookeeper 注册信息以及密码。 3.

2017-03-21 13:54:29 337

原创 HashSet和HashMap的区别比较

HashSet 实现的Set接口,集合中不允许出现重复的值(如果重复会覆盖):package com.wlf.base;public class Person{ public Person(String name, int age) { this.name = name; this.age = age; }

2017-03-09 13:31:33 1728

原创 java并发编程学习:同步容器与并发容器

同步容器同步容器类都是线程安全的:vector和Hashtable.它们实现线程安全的方式是:将它们的状态封装起来,对每个公有方法都进行同步:看vector的一些源码 public synchronized void setSize(int newSize) { ......... } public synchronized int size() {

2017-02-10 09:45:21 284

原创 java并发编程学习之 线程池2(线程关闭)

1.线程关闭方法之一:中断 Thread的中断相关方法: interrupt中断目标线程,设置中断状态 isInterrupted 返回目标线程的中断状态 interrupted 方法清除当前线程的中断状态,并返回之前的值。 在使用interrupted 时要注意,因为它能清除中断标志,如果返回为true,需

2017-01-24 14:49:56 712

原创 java并发编程学习之 线程池1

1.堆内存和方法区是线程共享的;java虚拟机栈:java虚拟机栈 是线程私有的,如果线程请求的栈深度大于虚拟机所允许的深度,将抛出StackOverFlowError;如果虚拟机栈可以动态扩展,但是如果扩展的时候无法申请到足够的内存,会抛出OutOfMemoryError2.线程池的引出:在线程中串行的执行任务,会引起阻塞,影响效率;如果为每个任务创建一个线程,就可能无限制的创建线程:线程的创建和

2017-01-23 17:18:51 254

原创 安装 linux+tomcat+nginx 遇到的问题以及相关的连接

1.查找jar包比较好的网站连接,maven中央仓库http://maven.outofmemory.cn/2.安装centos比较好的连接: http://blog.csdn.net/clevercode/article/details/505746953.重启网卡 service network restart; 失败的原因 http://www.xuebuyuan.com/132186.h

2016-12-09 16:50:18 1513

原创 css学习一:overflow 和float的搭配使用,实现包裹功能

实现包裹功能:外层的div 嵌套内层div,外层div的高度随内层div的高度改变而改变:<body><p>如果元素中的内容超出了给定的宽度和高度属性,overflow 属性可以确定是否显示滚动条等行为。</p><div> 这个属性定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。因此,有可能即使元素框中可以放下所有内容也会出现滚动条。

2016-08-14 15:10:36 1653

原创 ActiveMq学习资料:

activemq比较好的资料: 1.介绍了activemq的安装和java代码实现activemq的producer和consumer http://blog.csdn.net/jiuqiyuliang/article/details/48608237 2.集成了spring,通过注解来实现activemq的p2p/pub-sub模式: http://my.oschina.net/xiao

2016-08-01 19:55:20 361

原创 spring开发相关的资料

1.比较好的连接: 实现传统的ws http://blog.csdn.net/rongbo_j/article/details/50983716 2.spring-mvc 配置https

2016-07-27 10:48:33 251

原创 nodeJs个人笔记

先说明常用的模块: 1.crypto 用来做md5加密: var md5 = crypto.createHash('md5'), md5password = md5.update(password).digest('hex');2.formidable 文件上传:router.post('/',function(req,res){ var form =

2016-07-13 17:13:49 439

原创 Node.js静态文件服务器

使用es6语法实现node.js的静态文件服务器:主要功能是浏览器请求某个文件,服务器端把对应的文件内容返回给客户端。 其中ES6比较好的api接口: http://es6.ruanyifeng.com/。主要用到了 es6的 class 和 Promise Promise Promise用于异步编程,可以避免无限嵌套的回调函数,用法:// 默认传入两个参数,都是函数// 成功时执行 re

2016-07-13 15:53:08 349

nodeJS实现个人博客

结合nodeJs和bootstrap实现博客系统,提供注册,登录权限控制,发表文章,评论功能

2016-08-11

activemq +jms(原生和集成spring-jms)

activemq集成spring,和原生的active测试active的p2p和pub/sub方式

2016-08-02

nodeJs实现个人笔记

Node.js 及与其配合良好的 web 应用框架 Express 搭建服务端,配合 mongoDB 存储数据,使用 ejs 模板渲染前端页面的方式完成一个简单的私人笔记应用。

2016-07-13

nodejs实现静态文件服务器

使用es6语法实现node.js的静态文件服务器:主要功能是浏览器请求某个文件,服务器端把对应的文件内容返回给客户端。

2016-07-13

实现网络爬虫指导文档

http,fs,cheerio模块实现网络爬虫

2016-07-10

node.js+cheerio简单爬虫

简单的通过node.js和cheerio来实现爬取豆瓣资源

2016-07-10

nodejs+socketio

使用express创建服务器,通过socketio来创建多人聊天,稍后会增加redis

2016-07-07

redis-2.4.5安装包

redis的windows 32位和64位免安装

2016-07-07

redis-node

redis1.js用node搭建服务器,测试redis的基础命令 redis-get.js 用来测试http的get服务,同时将请求数据写入redis服务器 redis-post.js用来测试http的post服务,将请求写入redisu

2016-07-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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