自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

java is 因缺思厅

乐于探究,衷于分享.

  • 博客(36)
  • 收藏
  • 关注

原创 基于Redis Lua脚本实现的滑动窗口限流核心包

badger-rate-limiter简介最近根据业务需求封装了一个基于redis lua脚本实现的滑动窗口限流的核心包,可能有人会问为什么要封装?直接用不就好了?其实,封装起来有助于其他项目快速复用,同时减少使用门槛.该包特点:基于Spring listener机制,比较优雅的实现了配置的热更新,不用重启服务即可更新限流策略. 同时提供了一个不用配置直接自行传限流配置的简易接口(开箱即用).有相关限流业务需求时可以考虑使用该包使用:添加包依赖即可使用(该包是基于spring-bo

2022-05-03 18:16:53 1276

原创 基于SpringCloud微服务体系封装的微服务框架

关于`SpringCloud`微服务框架玩的时间比较久了,工作实践中不断总结,迭代,不知不觉中发现自己一开始写的几个小包已经发展成能适应绝大部分场景的微服务框架了,最近整理了一下,分享给各位.

2022-04-20 22:34:31 742

原创 关于破坏双亲委派机制

说明:最近在重读《深入理解Java虚拟机》,看到破坏双亲委派这一块内容时,通过对JDBC驱动加载过程源码debug,突然茅塞顿开,收获不少,以前仅仅只是知道概念,特此记录一下也看了一些其他博主的文章,虽然最后还是搞明白了,但是我觉得应该能更好的引入进去,而不是直接怼JDBC连接。以下这段出自:《深入理解Java虚拟机》第三版 7.4.3节 破坏双亲委派模型这并非是不可能出现的事情,一个典型的例子便是JNDI服务,JNDI现在已经是Java的标准服务, 它的代码由启动类加载器来完成加载(在JDK 1

2020-06-27 19:08:03 869

原创 基于Freemarker的代码自动生成

说明:最近用过了mybatis-plus的自动生成工具后,我觉得还不够个性化,定制化。所以,自己研究了一下freemarker的技术,自己写了一个基于freemarker的代码生成工具,很方便,也很个性化。正文:先占个坑,五一假期更...

2020-04-30 19:05:56 720 2

原创 promethues监控体系

promethues1 简介Prometheus 是一套开源的系统监控报警框架。它启发于 Google 的 borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 2012 年创建,作为社区开源项目进行开发,并于 2015 年正式发布。2016 年,Prometheus 正式加入 Cloud Native Computing Foundation,成为受欢迎度仅次...

2019-12-02 21:37:01 801 2

原创 Mongodb的相关分享

Mongodb项目实践后的分享前言1.Mongodb是什么?功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言最近...

2019-10-17 21:06:44 169

原创 IO Error: Connection reset by peer, Authentication lapse 140354 ms.问题的解决

今天在公司服务器上搭建新环境,部署项目时,一切准备就绪了,但是却发现项目总是启动失败,启动日志报:“IO Error: Connection reset by peer, Authentication lapse 140354 ms…”这个错误。因为这个错误是在数据库连接时报出来的,我第一反应是数据库连接异常—权限问题,可能是密码或用户名有误,找了dba确认密码,用户名无误后,就开始寻找其他突破...

2019-08-07 13:57:49 16313 2

原创 SpringCloud(Zuul)

该文主要收集、整理Zuul相关的知识点,并加以自己的实践理解目录结构1 什么是API网关2 什么是Zuul3 Zuul的核心4 Zuul中默认实现的Filter5 搭建SpringCloud Zuul5.1 maven依赖5.2 启动类中开启Zuul服务5.3 配置文件5.4 自定义Filter1 什么是API网关网关这种东西,是伴随着微服务风生水起的,微服务可以没有api网关,但是...

2019-07-31 23:44:27 1203

原创 SpringCloud(Feign)

Feign 声明式服务调用1. Feign介绍1.1 是什么:1.2 Feign 特性2 使用2.1 maven依赖2.2 配置3 注解3.1 启动类3.2 服务接口层4 负载均衡1. Feign介绍1.1 是什么:Feign is a declarative web service client. It makes writing web service clients easier....

2019-07-31 22:12:39 217

原创 关于Future的想法

前言: 最近在看RPC框架的书,书里提到了Future的使用,发现我对这个并不是很了解,所以自学一下Future。1 Future是什么:在并发编程中,我们经常用到非阻塞的模型,在之前的多线程的三种实现中,不管是继承thread类还是实现runnable接口,都无法保证获取到之前的执行结果。通过实现Callback接口,并用Future可以来接收多线程的执行结果。Future表示一个可能还没有...

2019-07-28 16:58:48 245 2

原创 SpringCloud(Hystrix)

Hystrix 熔断器1. Hystrix 介绍1.1 是什么:1.2 Hystrix设计原则:2. 图解3. SpringCloud 集成Hystrix3.1 maven依赖3.2 添加注解1. Hystrix 介绍1.1 是什么:在分布式环境中,许多服务依赖项中的一些必然会失败。Hystrix是一个库,通过添加延迟容忍和容错逻辑,帮助你控制这些分布式服务之间的交互。Hystrix通过隔离...

2019-07-27 17:01:23 559 2

原创 跨域问题解决

跨域问题解决前段时间有同事在开发中遇到了跨域问题,针对这个问题这边做一些相关说明跨域问题的出现主要是因为前后端域名不同造成的,一般情况下可以通过nginx的服务转发处理掉这个问题(使得前后端处于同一域名下),但是当遇到不使用nginx的小型单体前后端分离的项目时,就会出现跨域问题。还要了解到这么一个情况:实际上浏览器在向后端发送请求时,除一般简单请求(比如不带任何参数的GET请求)外...

2018-12-19 12:05:15 197

原创 Docker使用

Docker学习笔记Docker常用命令Docker 基础Docker简介DOCKER介绍—三个基本概念Docker 的基本结构Docker 基本使用Docker的安装Docker镜像的运行创建镜像有两种方式Docker常用命令docker ps -----查看所有镜像的进程docker ps |awk ‘{print $2, $NF}’-----只打印出IMAGE和NAMES两列Dock...

2018-10-04 16:33:41 309

原创 Oracle数据库的安装windows版

Oracle数据库的安装windows版偶尔业务需求需要重装oracle数据库,装了几次后觉得还是整理一下比较好,方便以后再次使用文档时,方便快捷。未联系作者,所以直接贴他的地址吧:https://blog.csdn.net/lvshaorong/article/details/78048823但是,按照作者的安装方法,每次装完后无法直接使用,总是提示对表空间无权限,所以,这里完善一下。这...

2018-09-25 20:41:57 340

转载 Oracle的CLOB大数据字段类型

说明:最近有个需求需要考虑Oracle数据库的大数据字段,搜集了一下相关资料,感觉这篇文章写得很棒,转载一下大家一起学习。原文地址:https://www.cnblogs.com/Grand-Jon/p/7389427.html一、Oracle中的varchar2类型 我们在Oracle数据库存储的字符数据一般是用VARCHAR2。VARCHAR2既分PL/SQL Data Types中的变...

2018-08-06 10:28:34 1046

转载 CountDownLatch、CyclicBarrier、Semaphore的用法总结

项目中遇到一个需求刚好可以使用java.util.concurrent中的一些工具类,所以就搜集了一下相关资料,这篇博客总结的十分详细,原文地址:http://www.cnblogs.com/dolphin0520/p/3920397.html在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore...

2018-07-29 20:41:09 217

原创 Git冲突的解决方法

说明:前段时间有点忙,没有继续写一些工作中积累总结的东西,最近时间相对比较充裕了,继续分享点东西;前面的篇章已经说过,Git是我们公司的代码管理工具,我以前没用过,在学习使用过程中碰到最多也就是冲突的解决,所以这里就分享一些网上各位前辈总结的,以及我又添加的一些知识点,适合新手学习冲突整理冲突原因:一个人用git 写代码,而且只有一个本地分支的情况下是不会又冲突的.冲突可以说是两个分支...

2018-07-29 19:41:57 18572 1

原创 GC机制分析

最近看了很多关于GC机制的文章,感觉没有找到十分符合我的文章,于是拿起《深入理解Java虚拟机》这本书自己来写篇分析文章,方便自己理解,也方便分享给大家一起学习。这个机制可以分解为三个问题来看待:GC是在什么时候,对什么东西,做了什么事情?第一个问题:GC是在什么时候?在程序空闲或者堆内存满的时候就会触发GC。 HotSpot JVM把年轻代分为了三部分:1个Eden区和2个Surv...

2018-02-26 21:48:28 232

原创 Mysql集群原理整理

Mysql集群整理申明一下:这个CSDN的新版编辑器还不大会玩,导致不少编辑效果不够理想,目录主次区分不够明显,还望各位查看时多多担待.ps:当时做毕业设计的论文要是敢这样主次不分,得被导师骂死不可(偷笑)….一. 主从复制概述 在实际生产中,数据的重要性不言而喻,提供安全可靠的数据保障是技术与运维部门的职责所在;如果我们的数据库只有一台服务器,那么很容易产生单点故障的问题,比如这台服务...

2018-02-09 17:00:02 7754

原创 Http接口安全整理

1.Http接口安全概述:       1.1、Http接口是互联网各系统之间对接的重要方式之一,使用http接口,开发和调用都很方便,也是被大量采用的方式,它可以让不同系统之间实现数据的交换和共享,但由于http接口开放在互联网上,那么我们就需要有一定的安全措施来保证不能是随随便便就可以调用;       1.2、目前国内互联网公司主要采用两种做法实现接口的安全:          ...

2018-02-08 12:14:21 18712 8

原创 ActiveMQ集群

ActiveMQ集群1.1 何为集群?集群就是将相同的程序、功能,部署在两台或多台服务器上,这些服务器对外提供的功能是完全一样的。通过不断横向扩展增加服务器的方式,以提高服务的能力。1.1.1 不集群模式1.1.2 集群模式1.2 集群的优势: 1、集群可以解决单点故障问题;  2、集群可以提高系统服务能力;

2018-02-05 21:24:06 242

原创 ActiveMQ---知识点整理

一.背景介绍1.1 java消息服务:不同系统之间的信息交换,是我们开发中比较常见的场景,比如系统A要把数据发送给系统B,这个问题我们应该如何去处理?1999年,原来的SUN公司领衔提出了一种面向消息的中间件服务--JMS规范(标准);常用的几种信息交互技术(httpClient、hessian、dubbo、jms、webservice 五种).1.2JMS概述:JMS即Ja...

2018-02-03 12:15:07 3001 1

原创 FastDFS---基础上手

分享一下FastDFS的简单上手的demo,挺简单的.其中文件上传流程大致如下:controller里的上传方法: @RequestMapping("/fastdfs/upload") @ResponseBody public String uploadCreditorInfo(@RequestParam("id") Integer id, @RequestPa

2018-02-01 10:17:05 241

转载 FastDFS分布式文件系统

说明:理论部分(1-3)原文出处:http://www.cnblogs.com/baiboy/ fastdfs的安装是记录的本人自己的操作过程.1 分布式文件系统介绍分布式文件系统:Distributed file system, DFS,又叫做网络文件系统:Network File System。一种允许文件通过网络在多台主机上分享的文件系统,可让多机

2018-01-30 10:52:17 242

原创 springboot+mybatis+zookeeper+dubbo的组合使用

这个Demo的基本结构就是provider+consumer+interface1.首先创建一个maven工程interface,接口工程的具体结构如下:2.接着创建提供者provider2.1   pom文件编写如下代码<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/P...

2018-01-29 11:17:45 6952 4

原创 双重检测同步锁---防止Redis缓存穿透

缓存穿透:注:上面三个图会有什么问题呢?我们在项目中使用缓存通常都是先检查缓存中是否存在,如果存在直接返回缓存内容,如果不存在就直接查询数据库然后再缓存查询结果返回。这个时候如果我们查询的某一个数据在缓存中一直不存在,就会造成每一次请求都查询DB,这样缓存就失去了意义,在流量大时,可能DB就挂掉了。那这种问题有什么好办法解决呢?要是有人利用不

2018-01-26 10:53:42 7925 5

原创 关于如何在Xshell中打印tomcat详细日志

在使用xshell部署项目时,最让人头疼的问题莫过于tomcat服务器启动时报异常,但是只有很粗略的描述,异常位置也没有,很伤脑.正常使用打印日志: ./startup.sh |tail -f ../logs/catalina.out信息很少,出错后无法准确定位问题,如给出详细异常,相信大部分问题都能迎刃而解.最近遇到问题时,发现了一个非常棒的解决方法.方法就是在项目classes目录下,新建文件...

2018-01-23 11:50:33 3168

原创 mybatis绑定错误-- Invalid bound statement (not found)

一、问题描述使用mybatis的项目在本地可以正常运行,但当使用maven打包部署到远程服务器上时出现了绑定错误,异常信息为:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.kinglong.p2p.mapper.LoanInfoMapper.selectHistoryAver...

2018-01-23 07:57:41 823

转载 NGINX-----负载均衡策略

nginx 是一个很强大的高性能Web和反向代理服务器。这里主要使用的就是nginx的反向代理功能。 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。《nginx百度百科》服务器集群:是指将

2018-01-22 07:54:33 182

原创 Dom4J的常用方法

1.xml字符串解析:  在做微信支付时,都是在用xml做传输媒介,虽然微信SDK集成了xml转map的功能,但是顺带学习一下用dom4j将xml转map的方法,分享出来,代码如下:/** * 将xml字符串转换为map集合 *ClassName:TransferUtils *company:wwww.kinglong.com *Desc: * @author kinglong_

2018-01-17 09:43:46 403

原创 利用字节流将生成的图片输出到js页面,实现动态生成图片

本段代码是生成微信二维码图片,并利用字节流将其输出至js页面端.也适用于其他想要获得生成动态图片的需求.可结合实际情况进行取舍.代码如下:@RequestMapping(value="/loan/showQRcode") public void showQRcode(HttpServletRequest request, Model model, HttpServletResponse

2018-01-16 21:19:00 11007

转载 fmt标签的格式化日期使用

声明:[html] view plain copy%@ taglib prefix="fmt" uri="/WEB-INF/fmt.tld" %>   [html] view plain copyor   [html] view plain copy

2018-01-15 21:34:53 295

原创 前端使用技巧整理

前言:整理一些平时使用的比较好的前端小技巧,想起来的都会加进来的MD5加密用法:        $.trim($("#loginPassword").val($.md5(loginPassword)))日期格式设置标签字符串截取${fn:substring(bidInfoList.user.phone,0,3)}******${fn:substring(bidI

2018-01-15 21:28:31 193

转载 spring-task开发使用整理

spring task -corn表达式以下转载出处:https://www.cnblogs.com/liuyitian/p/4108391.html最近做的项目有用到定时器,每周只在特定时间运行一次,考虑到Spring Task的简单易用性,就果断选择了,我是配置在配置文件里面,没有用注解@Scheduled,推荐配置,注解虽方便,但更改需求时,需要代码重新编

2018-01-15 21:07:43 731

原创 关于使用谷歌矩阵代码生成微信二维码的方法

注意:请先检查是否在maven中添加了fastjson以及谷歌zxing的依赖包,本示例使用的依赖包及对应版本如下: com.google.zxing core 3.0.0 com.google.zxing javase 3.0.0 junit junit 4.12 com.alibaba

2018-01-15 20:16:31 508

转载 MYSQL日期时间函数大全

MySQL日期时间函数大全 DAYOFWEEK(date)  返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-03');   -> 3 WEEKDAY(date)  返回日期date是星期几(0=星期一,1=星期二,……6= 星期天)。 mysql> select WEEK

2018-01-14 21:54:40 753

空空如也

空空如也

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

TA关注的人

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