自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Zoey~~

想要得越多,所要付出的就更多,加油!

原创 一文带你深入浅出Mycat分库分表

What is Mycat?一个彻底开源的,面向企业应用开发的大数据库集群支持事务、ACID、可以替代MySQL的加强版数据库一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品一个新颖的数据库中间件产品功能特性• 支持 S...

2020-05-07 14:56:53 48

原创 一键搭建主流中间件Docker编排文件分享

Docker-Build-Script简介记录基于 docker、docker-compose 快速搭建环境的相关资源以下资源是本人在学习相关知识时所总结记录的,已实际使用过,特分享出来。为了让开发人员在学习相关内容时,可以基于Docker在本地搭建一套临时环境作为基础,避免因为安装环境而浪费大量时间。下列资源提供了相关的docker-compose.yml或Dockerfile,在使用...

2020-05-07 14:55:58 73

原创 看完还不懂Mysql主从复制来hu我

本文使用 Docker 搭建mysql一主一从的集群环境 ,带你一步步揭开mysql主从复制的神秘面纱关于主从同步的流程图,参考网上找的一张流程图:主从模式的优点负载均衡:通常情况下,会使用 主服务器 对数据进行 更新、删除 和 新建 等操作,而将 查询 工作落到 从库 头上。异地容灾备份:可以将主服务器上的数据同步到 异地从服务器 上,极大地提高了 数据安全性。高可用:数据库的复制...

2020-05-07 11:40:33 82

原创 Gulp 压缩静态资源

使用gulp 压缩静态资源在项目的根目录下执行以下命令:npm install gulp -gnpm install gulp-minify-css gulp-uglify gulp-htmlmin gulp-htmlclean gulp --save在博客根目录下新建 gulpfile.js,并填入以下内容:var gulp = require('gulp');var minify...

2019-12-07 14:20:11 107

原创 搜索引擎收录Hexo博客链接

站点地图站点地图即sitemap, 是一个页面,上面放置了网站上需要搜索引擎抓取的所有页面的链接。站点地图可以告诉搜索引擎网站上有哪些可供抓取的网页,以便搜索引擎可以更加智能地抓取网站。生成站点地图安装百度和Google的站点地图生成插件:npm install hexo-generator-baidu-sitemap --savenpm install hexo-generator-s...

2019-12-07 14:18:03 98

原创 博客系统hexo yelee搭建历程

使用hexo搭建博客什么是 Hexo?Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。npm install hexohexo init <blog folder>cd <blog folder>npm install hexo clean && ...

2019-12-07 14:15:34 142 4

原创 域名配置使用Https安全协议

前景:趁着双十一,廉价入手了一台服务器,一个域名,现在为域名所解析的服务器配置SSL证书,使其能使用https安全加密的方式访问。首先需要申请一本证书,当然也可以使用电脑生成一本,但是相对而言不算安全,可以前往阿里云申请一本免费的SSL证书。申请完,下载下来发送到服务器上,配合Nginx 服务器配置安装证书:#user nobody;worker_processes 1;#err...

2019-11-28 14:58:58 51

原创 配置Linux服务器使用ssh免密登陆

生成秘钥对首先生成自己的秘钥对,当然也可以原来有的可以跳过此步骤使用命令:ssh-keygen -t rsa -b 2048 -C "my email"Generating public/private rsa key pair.Enter file in which to save the key (/Users/dashuai/.ssh/id_rsa):Enter passphr...

2019-11-27 22:26:28 71

原创 Nexus 搭建 Maven私服竟如此Easy

前景趁着最近双十一,买个低配服务器搭建Maven的私服,把平常用到的一些jar包,扔到上面,方便使用公司电脑和自己电脑时不会找不到私包。资源与预装机器配置: 1核2g系统: centos预装Java、maven、docker、docker-compose 等环境可以使用我简单编写的 脚本进行快速 安装新机环境,将会预装了JAVA、Maven、Gradle、Docker、docker-c...

2019-11-13 11:23:07 56

原创 批量删除无用Docker镜像的命令

Linux 下操作删除存在none 的镜像docker rmi $(docker images | grep "none" | awk '{print $3}')删除已退出的容器docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') //删除容器 windows下操作下载Gawk,其功能类似于linux的aw...

2019-10-24 23:56:00 32

原创 Java 使用 Grpc 快速入门

Grpc的原理一个RPC框架必须有两个基础的组成部分:数据的序列化和进程数据通信的交互方式。对于序列化gRPC采用了自家公司开源的Protobuf。什么是Protobuf?Google Protocol Buffer(简称 Protobuf) 是一种与语言无关,平台无关的可扩展机制,用于序列化结构化数据。使用Protocol Buffers 可以一次定义结构化的数据,然后可以使用特殊生...

2019-07-25 23:22:43 189

原创 Zookeeper 基本概念原理

学习之前,让我们带着几个问题进入,Zookeeper的数据结构是什么样的?如何实现分布式一致性?都有哪些应用场景呢?zookeeper 简介Zookeeper 是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务、配置维护和命名服务等等。Zookeeper特性ZooKeeper非常快速且非常简单。但是,由于其目标是构建更复杂的服务(如同步)的...

2019-07-09 16:29:04 59

原创 SpringBoot 结合 Thrift 构建远程服务调用

什么是Thrift?Thrift 的跨语言特性thrift通过一个中间语言IDL(接口定义语言)来定义RPC的数据类型和接口,这些内容写在以.thrift结尾的文件中,然后通过特殊的编译器来生成不同语言的代码,以满足不同需要的开发者,比如java开发者,就可以生成java代码,c++开发者可以生成c++代码,生成的代码中不但包含目标语言的接口定义,方法,数据类型,还包含有RPC协议层和传输层的...

2019-07-09 16:21:30 1007 2

原创 SpringBoot2 集成SpringSecurity对资源访问认证

在日常开发中,难免会遇到权限相关的需求,关于权限处理这一块,用的比较多的安全框架分别是Shiro和Spring全家桶中的Spring-Security,之前已经使用过Shiro,对它也有一定的了解,下面是对Spring-Security学习做的记录。概述Spring Security 是一个能够为基于 Spring 的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在...

2019-05-16 22:30:32 1644

原创 Springboot 2 集成 Nsq 消息中间件实现生产消费应用

什么是NSQ?NSQ是一个实时分布式消息传递平台。具体特性请前往Nsq官网查看了解,下面是我平常在Springboot项目对Nsq使用的一些技巧。简介Nsq集成Java可基于JavaNSQClient实现,该jar包帮助我们封装了操作nsq的一些api。下面我们构建两个SpringBoot测试项目,分别为SpringBoot-Nsq-Consumer,SpringBoot-Nsq-Podu...

2019-03-08 23:22:01 843

原创 SpringBoot 2.0 连接 Redis 主从、哨兵集群

上一篇文章中我使用docker-compose搭建了redis的主从复制,并启动3个哨兵容器相互监控。https://blog.csdn.net/qq_39211866/article/details/88044546现在,我要使用SpringBoot来连接redis集群,由于使用了哨兵模式,显然,不能向之前配置单节点那样配置连接池了,节点经过故障转移后,主从结构已经发生了改变且主已经...

2019-03-01 20:34:55 3718

原创 docker-compose 搭建高可用Redis 主从、哨兵集群

概述Redis哨兵为Redis提供了高可用性。实际上这意味着你可以使用哨兵模式创建一个可以不用人为干预而应对各种故障的Redis部署。哨兵模式还提供了其他的附加功能,如监控,通知,为客户端提供配置。下面是在宏观层面上哨兵模式的功能列表:监控:哨兵不断的检查master和slave是否正常的运行。通知:当监控的某台Redis实例发生问题时,可以通过API通知系统管理员和其他的应用程序。自...

2019-02-28 20:43:25 3049

原创 SpringBoot 2.0 集成Atomikos、Durid 实现多数据源、分布式事务

使用JTA处理分布式事务Spring Boot通过Atomkos或Bitronix的内嵌事务管理器支持跨多个XA资源的分布式JTA事务,当部署到恰当的J2EE应用服务器时也会支持JTA事务。当发现JTA环境时,Spring Boot将使用Spring的 JtaTransactionManager 来管理事务。自动配置的JMS,DataSource和JPA beans将被升级以支持XA事务。可以...

2019-01-18 22:59:02 1890

原创 SpringBoot 搭建并使用Kafka消息中间件

简介Kafka 是一种高吞吐的分布式发布订阅消息系统,能够替代传统的消息队列用于解耦合数据处理,缓存未处理消息等,同时具有更高的吞吐率,支持分区、多副本、冗余,因此被广泛用于大规模消息数据处理应用。Kafka 支持Java 及多种其它语言客户端,可与Hadoop、Storm、Spark等其它大数据工具结合使用。使用Docker安装kafka和可视化管理界面这里我为了方便使用,将其整理成了一个...

2018-12-28 22:01:21 933

原创 SpringBoot集成Shiro、JWT 进行请求认证和鉴权

什么是JWT?JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且独立的方式,可以在各方之间作为JSON对象安全地传输信息。此信息可以通过数字签名进行验证和信任。JWT可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公钥/私钥对进行签名。虽然JWT可以加密以在各方之间提供保密,但我们将专注于签名令牌。签名令牌可以验证其中包含的声明的完整性,而加...

2018-12-23 14:59:01 3402 16

原创 SpringBoot Maven项目构建Docker镜像

使用Maven构建Docker镜像插件:pom.xml 文件,添加插件 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId&gt...

2018-12-22 00:00:50 216

原创 SpringBoot集成Elasticsearch 进阶,实现中文、拼音分词,繁简体转换高级搜索

Elasticsearch 分词分词分为读时分词和写时分词。读时分词发生在用户查询时,ES 会即时地对用户输入的关键词进行分词,分词结果只存在内存中,当查询结束时,分词结果也会随即消失。而写时分词发生在文档写入时,ES 会对文档进行分词后,将结果存入倒排索引,该部分最终会以文件的形式存储于磁盘上,不会因查询结束或者 ES 重启而丢失。写时分词器需要在 mapping 中指定,而且一经指定就不...

2018-12-21 23:24:55 7026 2

原创 使用Filebeat结合Ingest Node提取特定字段

摄取节点 - Ingest Node使用Elasticsearch进行输出时,可以将Filebeat配置为使用 摄取节点在Elasticsearch中进行实际索引之前预处理文档。当您想对数据进行一些额外处理时,摄取节点是一个方便的处理选项,但您不需要Logstash的全部功能。例如,您可以在Elasticsearch中创建一个摄取节点管道,该管道由一个处理器组成,该处理器删除文档中的字段,然后是...

2018-12-17 22:11:06 1460

原创 热数据本地缓存 - ehcache

什么是ehCacheEhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。一、具体描述Ehcache是一个用Java实现的使用简单,高速,实现线程安全的缓存管理类库,ehcache提供了用内存,磁盘文件存储,以及分布式存储方式等多种灵活的cache管理方案。同时ehcache作为开放源代码项目,采用限制比较宽松的Apa...

2018-12-12 22:20:45 118

原创 SpringBoot 集成Elasticsearch 实现增删改查

Elasticsearch简介Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。ES安装x-pack后,默认的账户有三个...

2018-12-12 22:18:07 983

原创 Maven与Gradle在构建时更改版本

Maven构建时更改版本:使用mvn命令是改变version。方法一,使用maven-release-plugin:这种方法只能把version设置成快照版本如果参数developmentVersion的值,不是快照版本,则会把原来版本(不管原来的版本是否是快照版本)修改为快照版本,并且微版本号加1比如说,原来的版本号是1.2.1(或者说是1.2.1-SNAPSHOT),此时,就修改为1...

2018-12-05 21:46:53 496

原创 基于Zookeeper实现分布式锁

SpringBoot集成Zookeeper实现分布式锁什么是Zookeeper?Zookeeper 是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务、配置维护和命名服务等等。采用下图描述zookeeper协调服务。Zookeeper特性ZooKeeper非常快速且非常简单。但是,由于其目标是构建更复杂的服务(如同步)的基础,因此它提供...

2018-12-05 21:38:01 4015

原创 SpringBoot 集成 E-mail发送各种类型的邮件

SpringBoot 集成 E-mail发送邮件JDK本身有自带发送邮件api,加上SpringBoot在进行封装,使得现在使用起来十分快速简洁。话不多说,参考纯洁的微笑博客,更改jar版本为2.0.4 开干,基本没什么坑。就是配置邮箱账号密码是,如果是qq邮箱,需要开启PO30和STMP服务,并且获取临时授权码。开启服务链接:https://mail.qq.com/cgi-bin/fr...

2018-12-05 21:36:24 2328

原创 SpringBoot集成WebSocket 打造聊天室

SpringBoot 集成 WebSocket什么是WebSocket?WebSocket是HTML5开始提供的一种浏览器与服务器间进行全双工通讯的网络技术。依靠这种技术可以实现客户端和服务器端的长连接,双向实时通信。WebSocket协议被设计来取代用HTTP作为传输层的双向通讯技术,基于大部分Web服务都是HTTP协议,WebSocket仍使用HTTP来作为初始的握手(handshak...

2018-12-05 21:33:15 642 2

原创 SpringBoot集成Mybatis实现多数据源

SpringBoot 集成 Mybatis实现双数据源Mybatis 常用ORM工具,不过多介绍,与SpringBoot集成实现单数据源可参考:https://github.com/liaozihong/SpringBoot-Learning/tree/master/SpringBoot-Mybatis导入jar包,使用druid连接池compile group: 'com.alibaba...

2018-12-05 21:31:29 306

原创 基于 Redis 实现分布式锁

什么是Redis?Redis通常被称为数据结构服务器。这意味着Redis通过一组命令提供对可变数据结构的访问,这些命令使用带有TCP套接字和简单协议的服务器 - 客户端模型发送。因此,不同的进程可以以共享方式查询和修改相同的数据结构。Redis中实现的数据结构有一些特殊属性:Redis关心将它们存储在磁盘上,即使它们总是被提供并修改到服务器内存中。这意味着Redis速度很快,但这也是非易失性...

2018-12-05 21:29:59 1260 1

原创 基于官方推荐的Redisson实现Redis分布式锁

RedLock 简介在不同进程需要互斥地访问共享资源时,分布式锁是一种非常有用的技术手段。实现高效的分布式锁有三个属性需要考虑:安全属性:互斥,不管什么时候,只有一个客户端持有锁效率属性A:不会死锁效率属性B:容错,只要大多数redis节点能够正常工作,客户端端都能获取和释放锁。解铃还须系铃人。加锁和解锁必须是同一个客户端,客户端自己不能把别人加的锁给解了。 Redlock是red...

2018-12-05 21:29:07 3364 1

原创 使用Filebeat采集日志结合logstash过滤出特定格式的日志至Elasticsearch

使用Filebeat采集日志结合logstash过滤出特定格式的日志文章目录使用Filebeat采集日志结合logstash过滤出特定格式的日志ELK搭建什么是Filebeat什么是Logstash采用Springboot构建一个Demo测试filebeat.yml配置logstash.conf配置效果展示ELK搭建使用外国大佬的开源项目,基本不要改什么就可快速搭建一套单机版ELK用于练手。...

2018-11-24 21:02:44 6826 5

原创 SpringBoot 2.0 使用 Thymeleaf 实现前后端分离

通过一个简单的与Springboot集成Demo认识Thymeleaf模板文章目录通过一个简单的与Springboot集成Demo认识Thymeleaf模板什么是ThymeleafThymeleaf 的基础使用前后端分离做法什么是ThymeleafThymeleaf是一种Java XML / XHTML / HTML5模板引擎,可以在Web和非Web环境中使用。它更适合在基于MVC的Web应...

2018-11-24 20:58:09 19911 14

原创 SpringBoot集成Memcached实例

什么是Memcached?Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度,以减少必须读取外部数据源(如数据库或API)的次数。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon)是用C写的,但是客户端可以用任何语言来编写,并通过mem...

2018-11-21 00:06:15 822

原创 基于Guava的RateLimiter设计常用接口限流功能

Guava是一组核心库,包括新的集合类型(例如multimap和multiset),不可变集合,图形库,函数类型,内存缓存以及用于并发,I / O,散列,基元的API /实用程序,反射,字符串处理等等!本示例只使用了Guava工具包的RateLimiter类,进行API的限流。限流简介:限流中的“流”字该如何解读呢?要限制的指标到底是什么?不同的场景对“流”的定义也是不同的,可以是网络流量,...

2018-11-20 23:57:46 929

原创 Jenkins配置项目提交推送到不同分支时构建不同项目

文章目录1. 创建Jenkins项目2. 配置Jenkins项目3. 设置Web Hook4. 测试push触发自动构建注意事项:1. 创建Jenkins项目如果你是基于Maven依赖构建,可创建一个maven项目,如果不是,可创建一个自由风格项目。2. 配置Jenkins项目这里我对触发构建新插件简单介绍下:如果我需要分别为git上的分支(假设为develop和master)进行构建,...

2018-09-17 22:53:56 2390

原创 Jenkins常用插件分享(role权限管理、密码掩盖)

文章目录role权限管理,对不同的角色可授予不同权限,显示不同项目。密码等私密信息过滤显示role权限管理,对不同的角色可授予不同权限,显示不同项目。需要安装插件:Role-based Authorization Strategy插件系统管理-管理插件-可选插件中安装Role-based Authorization Strategy安装后重启jenkins使其生效在全局安全配置中可看到授...

2018-09-17 22:37:37 740

原创 SpringCloud利用Consul实现分布式配置中心

SpringCloud结合Consul实现分布式配置中心文章目录SpringCloud结合Consul实现分布式配置中心consul介绍使用consul配置中心将服务注册到consul上推送配置到consul配置中心效果图consul介绍Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,Consul的方案更“一站式...

2018-09-17 21:47:50 4670 4

原创 Springboot+Gradle+Docker构建多模块项目

背景引入子模块时exclude失效Gradle Docker plugin推荐Docker打包SpringBoot多模块项目gradle构建的jar包找不到main入口背景原有Springboot基于Maven构建的多模块项目需要改为Gradle版的多模块项目,派我前去开荒,我便傻傻的入坑了。阅读前:请先对gradle有一定了解,概念什么的我就不多说,网上教程大把...

2018-07-19 22:09:10 2217 4

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