- 博客(519)
- 资源 (20)
- 论坛 (1)
- 收藏
- 关注

原创 【推荐】开源动态配置ares服务让业务飞起来,”赶超nacos、apollo,从此不再依靠 spring cloud config“
What is ARES?Open source dynamic configuration center with easy deployment and high stabilityAres系统是基于Java语言开发的,部署简单且高稳定性的动态配置系统.让您可以集中化、动态化管理自己应用中的配置.允许您的应用以监听和拉取结合的方式快速变更运行时的应用配置具有丰富的配置管理UI简化操作,同时也保障数据的隔离性与灵活性AboutAres系统目前在橙鹰公司内部使用,并稳定的
2020-12-31 15:30:53
208

原创 【推荐】开源项目ElasticAmbari助力 ElasticSearch、Kibana、ambari服务高效运维管理
概述ElasticAmbari为Ambari的一组自定义服务,为Elastic的产品提供安装和管理的支持。项目地址:https://github.com/ChengYingOpenSource/ElasticAmbari开源不易,我们会持续维护和优化,惊喜不断请大家点赞收藏!特性支持Elastic全产品系列 支持Elastic各产品的各个版本,不要求特定版本许可证ElasticAmbari代码库基于Apache License 2.0许可证开放使用。欢迎参与.
2020-12-31 13:59:26
1097
原创 SQL基础知识:join操作后面的on与where的区别
数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。在使用1eft jion时,on和where条件的区别如下:1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where 条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。假设有两张表:两条 SQL:selectform tabl left join tab
2021-01-20 17:25:53
8
原创 maven多模块 统一版本管理 的正确姿势 (CI Friendly Versions) - ${revision}
在使用Maven多模块结构工程时,配置版本是一个比较头疼的事。继承版本,依赖版本,自身版本,都需要单独定义,很是麻烦。版本号变更使用mvn versions:set,有时候也可能导致版本号不一致、不便于统一管理:mvn versions:set但其实Maven已经提供了这种CI版本的管理方式,下面来介绍具体用法。从Maven 3.5.0-beta-1版本开始,就可以使用${revision},${sha1}和${changelist}作为占位符来替换pom文件了。注意:Id...
2021-01-19 15:49:03
51
原创 Spring-statemachine有限状态机(FSM)使用教程详解
一、状态机有限状态机是一种用来进行对象行为建模的工具,其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件。在电商场景(订单、物流、售后)、社交(IM消息投递)、分布式集群管理(分布式计算平台任务编排)等场景都有大规模的使用。状态机的要素:状态机可归纳为4个要素,现态、条件、动作、次态。“现态”和“条件”是因,“动作”和“次态”是果。1 现态:指当前所处的状态2 条件:又称“事件”,当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移3 动作:条件
2021-01-18 19:48:46
32
原创 Gephi使用详解 实现图可视化(janusgraph)
描述Gephi 是一款网络分析领域的数据可视化处理软件,开发者对它寄予的希望是:成为 “数据可视化领域的Photoshop” ,可运行在Windows,Linux及Mac os系统。项目地址:https://github.com/gephi/gephihttps://github.com/gephi/gephi-plugins特点 快速由内置的OpenGL引擎提供支持,Gephi能够利用非常大的网络推送信封。可视化网络多达一百万个元素。 所有操作(例如布局,过滤器,拖动)都会实
2021-01-12 21:10:49
125
原创 IDEA Springboot启动报Command line is too long错误
启动报错:Error running 'CmsFrontApplication': Command line is too long. Shorten command line for CmsFrontApplication or also for Spring Boot default configuration.解决办法原因分析出现此问题的直接原因是:IDEA集成开发环境运行你的“源码”的时候(注意是源码基础上运行,并非打好的jar包哦),是通过命令(首行那个非常非常长.
2021-01-12 20:53:02
99
原创 win10 C盘根目录无法创建、修改、粘贴文件&垃圾清理详细操作
win10 C盘根目录无法创建文件,点击右键菜单时只有:新建 > 文件夹。解决方法:以管理员身份运行命令行工具,输入icacls c:\ /setintegritylevel M等待命令执行完成。如果还是不能创建文件的话,右键点击C盘:属性 > 安全,把写权限赋予Users组( 如果弹出错误提示不用理会,点击:继续即可 )。====================================================================..
2020-12-21 13:04:04
188
原创 MySQL死锁问题如何分析&锁表后查看死锁和去除死锁快速解决方法
(1) 遇到锁表快速解决办法 依次执行1-6步,运行第6步生成的语句即可。 如果特别着急,运行 1 2 6 步 以及第6步生成的kill语句 即可。1. 第1步 查看表是否在使用。show open tables where in_use > 0 ;如果查询结果为空。则证明表没有在使用。结束。 mysql> show open tables where in_use > 0 ;Empty set (0.00 sec) 如果查..
2020-11-25 13:19:38
574
原创 pagehelper 分页不生效,总页数总是第一页解决方案
说明:PageHelper.startPage(pageNum,pageSize);只对该语句以后的第一个查询语句得到的数据进行分页。springboot坏境 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <v
2020-11-23 17:43:14
592
原创 mysql rds group concat函数长度限制(默认1024) 数据被截断的问题完美解决方法
mysql的group_concat函数,默认最大长度是1024详细说明如下:用了group_concat后,select里如果使用了limit是不起作用的.用group_concat连接字段的时候是有长度限制的,并不是有多少连多少。查看sql:show variables like 'group_concat_max_len'; mysql> show variables like 'group_concat_max_len'; +------------.
2020-11-19 20:21:19
153
原创 对象拷贝之Apache BeanUtils、Spring的BeanUtils、Mapstruct、BeanCopier、PropertieyUtils对比(深拷贝)
大多时候时候使用的是Apache或Spring``BeanUtils,今天,我们来看一下一个更高效的属性拷贝方式:BeanCopier。https://github.com/cglib/cglibhttps://github.com/cglib/cglib/blob/master/cglib/src/main/java/net/sf/cglib/beans/BeanCopier.java首先梳理出来现在有哪些对象拷贝的方式:Apache的BeanUtils:BeanUtils是Apach.
2020-11-13 20:25:58
435
原创 mybatis中的${} 与 #{}实际使用-模糊查询的几种实现方式
直接传参法直接传参法,就是将要查询的关键字keyword,在代码中拼接好要查询的格式,如%keyword%,然后直接作为参数传入mapper.xml的映射文件中。public void selectBykeyWord(String keyword) {String id = "%" + keyword + "%";String roleType = "%" + keyword + "%";String roleName = "%" + keyword + "%";...
2020-11-12 19:48:06
205
原创 mybatis中的${} 与 #{} 区别 预编译和防止SQL注入& 排序 order by 动态参数时不生效
什么是SQL注入,怎么防止SQL注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。怎么防止SQL注入,使用存储过程来执行所有的查询;检查用户输入的合法性;将用户的登录名、密码等数据加密保存。目前在对数据.
2020-11-12 19:12:20
255
原创 Makefile使用教程
makefile的规则组成target prerequisites command target这一个或多个的目标文件依赖于prerequisites中的文件,其生成规则定义在command中。说白一点就是说,prerequisites中如果有一个以上的文件比target文件要新的话,command所定义的命令就会被执行。这就是Makefile的规则。也就是Makefile中最核心的内容文件名“GNUmakefile”或“Makefile”或“makefile”的文件(也可以通过make
2020-10-23 19:38:30
271
原创 下载神器:axel aria2 mwget多线程快速下载取代curl和wget的多线程下载命令
对于在 Linux 的下载工具而言,比较常用的就是 wget 或者 curl,吾也一直用 wget 的方式进行网络上的资源下载。偶然发现了 axel 这个支持多线程的下载工具,试用了几次之后,发现网络文件的下载速度提交了很多,决定将常用的下载工具替换为 axel。1 安装1、Linux 安装CentOS 中安装 axel,axel 系统不自带,且 Yum 源也没有 axel 的包,需要从网络中下载。可以在https://centos.pkgs.org/,搜索找到并下载安装。$ w...
2020-09-10 11:16:33
441
原创 elasticsearch 别名的操作详细指导
强大的es提供了这样的操作:别名操作。让你多个的index可以只用一个index查询。常用操作添加别名curl -XPOST 'http://localhost:9200/_aliases' -d { "actions": [ {"add": {"index": "test1", "alias": "alias1"}} ]}删除别名curl -XPOST 'http://localhost:9200/_aliases' -d { "actio
2020-08-28 21:20:58
739
原创 Mapstruct 集合映射 从相同的源类映射扩展类异常问题—— Ambiguous mapping methods found for mapping collection element
问题1:票证实体public class Ticket { private long id; private String title; private Set<Comment> comments; // Getters and setters}票证DTO(父类)public class TicketDTO { private long id; private String title; // Getters and setters}.
2020-08-28 21:04:55
862
1
转载 用户画像——《大数据用户画像的方法及营销实践》演讲
今天的主题是大数据用户画像的方法及营销实践。 大数据已经上升为国家战略,大数据和用户画像是一个什么关系?我们先讲述一下数据在发展过程中地位的转变。早期的时候,基本上IT系统的构都是为业务服务,在服务过程中积累了数据,然后我们的BI分析团队对这些数据进行分析。但是到了DT时代,大数据时代,数据地位发生根本性的转变,数据本身就是一个现实世界的虚拟化表现,数据已经构成了一个虚拟世界,IT系统是构建虚拟系统之上更加智能,数据在DT时代更加重要。 大家都听说过大数据四个V,大数据应该说..
2020-07-12 14:44:34
802
原创 开源报表 Davinci 详细介绍
Davinci介绍:Davinci是一个DVAAS(Data Visualization as a Service)平台解决方案。Davinci面向业务人员/数据工程师/数据分析师/数据科学家,致力于提供一站式数据可视化解决方案。既可作为公有云/私有云独立使用,也可作为可视化插件集成到三方系统。用户只需在可视化UI上简单配置即可服务多种数据可视化应用,并支持高级交互/行业分析/模式探索/社交智能等可视化功能。Davinci源码大概分为三部分:采用React的前端工程 采用Spring Boo.
2020-07-03 13:11:39
2313
4
原创 win10中Edge浏览器升级后崩溃 STATUS_INVALID_IMAGE_HASH
Edge启动后什么网站都打不开,错误代码:STATUS_INVALID_IMAGE_HASH百度了一下解决方案。导致这个问题的原因是 Google 在79版本(2019年12月20号左右)的更新中又重新启用了Renderer Code Integrity Protection(渲染器代码完整性保护),会阻止签名不是谷歌和微软的模块加载浏览器。Microsoft Edge 和 Google Chrome 都是基于 Chromium 开发的,Edge的处理方法和Chrome一致。Google
2020-05-26 10:10:30
20791
1
原创 数据库 mysql 锁详细介绍&数据表锁分析技巧
mysql的数据库引擎中的InnoDb下的行锁、表锁、意向锁等行锁mysql的行锁是通过索引加载的,即是行锁是加在索引响应的行上的,要是对应的SQL语句没有走索引,则会全表扫描行锁类型共享锁 和 排它锁共享锁(S锁)也叫读锁。当一个事务对某几行上读锁时,允许其他事务对这几行进行读操作,但不允许其进行写操作,也不允许其他事务给这几行上排它锁,但允许上读锁。SELECT column FROM table ... LOCK IN SHARE MODE;排它锁(X锁)
2020-05-19 21:25:37
380
原创 gitkraken 老版本回退教程
6.4.1版本下载地址:https://release.axocdn.com/win64/GitKrakenSetup-6.4.1.exe第一步:修改host加入127.0.0.1 release.gitkraken.com api.gitkraken.com第二步安装打开其他版本:安装6.6.0,然后找到安装目录,把update.exe删除就行C:\Users\admin\AppData\Local\gitkraken\app-6.6.0...
2020-05-15 10:00:21
1656
原创 Redis HBase Es HyperLogLog与BloomFilter笔记
什么是布隆过滤器?它实际上是一个很长的二进制向量和一系列随机映射函数。把一个目标元素通过多个hash函数的计算,将多个随机计算出的结果映射到二进制向量的位中,依次来间接标记一个元素是否存在于一个集合中。布隆过滤器可以做什么?布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。布隆过滤器特点如果布隆过滤器显示一个...
2020-04-24 18:59:37
399
转载 最全常用正则表达式大全
一、校验数字的表达式1. 数字:^[0-9]*$2. n位的数字:^\d{n}$3. 至少n位的数字:^\d{n,}$4. m-n位的数字:^\d{m,n}$5. 零和非零开头的数字:^(0|[1-9][0-9]*)$6. 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7. 带1-2位小数的正数或负数:^(\-)?\d...
2020-04-13 20:11:11
38320
2
原创 知识图谱架构(Knowledge Graph)
1. 前言从一开始的Google搜索,到现在的聊天机器人、大数据风控、证券投资、智能医疗、自适应教育、推荐系统,无一不跟知识图谱相关。它在技术领域的热度也在逐年上升。 本文以通俗易懂的方式来讲解知识图谱相关的知识、尤其对从零开始搭建知识图谱过程当中需要经历的步骤以及每个阶段需要考虑的问题都给予了比较详细的解释。知识图谱( Knowledge Graph)的概念由谷歌2012年正式提出,旨在...
2020-04-07 16:10:57
3825
原创 java class常用反编译操作
1. Jadxjadx是个反编译神器,集apktool、jd功能于一身,能直接查看apk,dex,jar文件。目前还不支持查看aar文件。如果要查看aar文件的话,可以先重命名为zip文件,再解压查看。下面介绍下如何使用jadx将编译后的class文件转换为java源码文件: 把class文件所属的jar包通过jadx方式打开 点击菜单中的File -...
2020-04-03 11:03:47
578
原创 Spring Cloud Feign java实现postman中form-data传参 文件上传下载
postman中几种传参方式区别:1.form-dataform-data主要是以键值对的形式来上传参数,同时参数之间以&分隔符分开,同时也可以上传文件,文件上传要指定文件类型,具体可以看下面的图。2.x-www-form-urlencode这种参数的传递与form-data最大的区别是,x-www-form-urlencode只能是以键值对的形式传参,不能上传文件。...
2020-03-12 11:43:07
2882
原创 JSON常见几种压缩方式
无论使用何种编程语言,json格式的数据已被广泛应用,不论是数据的传输还是存储,在很多应用场景下,你可能想进一步地压缩JSON字符串的长度,以提升传输效率,如果你使用的是nosql数据库,你可能想进一步的压缩json字符串的长度来节省你的存储空间,接下来,我将介绍一下目前最常用的json数据压缩技术(CJSON和HPack)的实现。一、CJSONCJSON 的压缩算法, 主要是将资料抽离成...
2020-03-06 15:40:29
8992
4
原创 kubeflow简介及安装
1 背景Kubernetes 本来是一个用来管理无状态应用的容器平台,但是在近两年,有越来越多的公司用它来运行各种各样的工作负载,尤其是机器学习炼丹。各种 AI 公司或者互联网公司的 AI 部门都会尝试在 Kubernetes 上运行 TensorFlow,Caffe,MXNet 等等分布式学习的任务,这为 Kubernetes 带来了新的挑战。首先,分布式的机器学习任务一般会涉及参数服务...
2020-03-05 15:15:52
3308
原创 Elasticsearch Bucket Aggregations示例
Terms Aggregation先看看官方给出的例子。GET /_search{ "aggs" : { "genres" : { "terms" : { "field" : "genre" } } }}响应结果:{ ... "aggregations" : { "ge...
2020-02-13 17:05:20
484
原创 ElasticSearch Aggregations使用总结详解
1.单字段情况下聚合假设只需要对一个字段聚合,比如b字段,b字段是keyword类型,需要考虑的情况最为简单,当要对b字段聚合时语句很好写,如下即可{ "from": 0, "size": 0, "query": { "bool": { "must": [{ "bool": { ...
2020-02-13 11:39:46
4564
原创 Spring @Transactional 深度解析
事物注解方式: @Transactional当标于类前时, 标示类中所有方法都进行事物处理,例子:1 @Transactional public class TestServiceBean implements TestService {}当类中某些方法不需要事物时: 1 @Transactional 2 public class TestServiceBean i...
2020-02-10 17:51:21
288
原创 insert...on duplicate key update语法详解
一.作用和使用场景在mysql入库时,不能出现两条数据主键一致的情况,因为在两条数据的主键一致的情况下,mysql就会判定为待插入数据在数据库中存在重复数据,也就是说判断数据是否重复是根据主键来区别的。但是有一些场景,如日志文件解析入库,消息队列接收数据入库等情况下可能解析到或者接收到待插入的重复数据存在重复数据则更新,不存在则插入。这时如下语句的写法就派上用场了,on dupli...
2020-02-10 16:17:13
2714
原创 整理最新java面试宝典2019
java面试宝典2019参照:http://www.wityx.com/3.html1、meta标签的作用是什么2、ReenTrantLock可重入锁(和synchronized的区别)总结3、Spring中的自动装配有哪些限制?4、什么是可变参数?5、什么是领域模型(domain model)?贫血模型(anaemic domain model)和充血模型(rich...
2020-02-06 12:14:57
1290
原创 Google Guava EventBus 消息发布-订阅异步调用使用
EventBus 是Google.Guava提供的消息发布-订阅类库,它实现了观察者设计模式,消息通知负责人通过EventBus去注册/注销观察者,最后由消息通知负责人给观察者发布消息。前提:在pom.xml中引入guava包<!-- https://mvnrepository.com/artifact/com.google.guava/guava --> ...
2020-02-06 12:05:14
1195
原创 spring ApplicationEvent和Listener实现业务解耦
ApplicationEvent以及Listener是Spring为我们提供的一个事件监听、订阅的实现,内部实现原理是观察者设计模式,设计初衷也是为了系统业务逻辑之间的解耦,提高可扩展性以及可维护性。通过 ApplicationEvent 类和 ApplicationListener 接口来提供在 ApplicationContext 中处理事件。如果一个 bean 实现 Applicatio...
2020-02-06 11:54:24
215
原创 java lamda表达式 超详细常见使用技巧
Java8为容器新增一些有用的方法,这些方法有些是为完善原有功能,有些是为引入函数式编程(Lambda表达式),学习和使用这些方法有助于我们写出更加简洁有效的代码.本文分别以ArrayList和HashMap为例,讲解Java8集合框架(Java Collections Framework)中新加入方法的使用.定义对象:public class Apple { private I...
2020-01-10 13:39:11
569
原创 Jupter notebook 常用配置
简介Jupyter Notebook是个开源的Web应用,可以创建包含代码、公式、可视化及叙事文本的共享文档;支持超过40种编程语言 可共享的notebook 交互式的输出 集成大数据工具修改Jupyter Notebook的默认工作目录 首先需要生成配置文件: 打开命令行,输入 jupyter notebook --generate-config 可以生...
2020-01-03 15:21:03
493
原创 机器学习:数据预处理之独热编码(One-Hot)详解
一. 什么是独热编码?————————————————————————————————————————在机器学习算法中,我们经常会遇到分类特征,例如:人的性别有男女,祖国有中国,美国,法国等。这些特征值并不是连续的,而是离散的,无序的。通常我们需要对其进行特征数字化。那什么是特征数字化呢?例子如下: 性别特征:["男","女"] 祖国特征:["中国","美国,"法国"...
2020-01-03 14:18:14
1234
ReceiverCleanupUtility
2018-09-20
ZhaoYingChao88的留言板
发表于 2020-01-02 最后回复 2020-05-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝