- 博客(31)
- 资源 (6)
- 收藏
- 关注
原创 【mysql】 踩坑记录之derived(派生表)
前言很多时候我们常常感觉到,不要你以为,mysql要它以为。记录派生表踩坑记录。首先说明环境mysql5.7,脚本如下CREATE TABLE `emp` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `sal` float(255,0) DEFAULT NULL, `...
2019-12-31 13:40:28 2216
原创 简单使用mat工具分析java.lang.OutOfMemoryError: Java heap space
面试经常被闻到,OutOfMemoryError什么时候会出现,在网上找了很多资料,记录下学习笔记。制造一个OutOfMemoryError场景堆溢出如下代码,让程序一直往list集合里面添加数据。package com.batman.jvm;import java.util.ArrayList;import java.util.List;public class OutOfM...
2019-12-31 11:22:57 2039 2
原创 【Spring Security】Spring Security Oauth2用户授权及token的传递
前言上边分享如何实现网关鉴权介绍,那么问题来了,所有用户进来可以是不同的角色,不同的权限,这里后端怎么控制呢。方法授权需求分析方法授权要完成的是provider访问根据jwt令牌完成对方法的授权,具体流程如下:生成Jwt令牌时在令牌中写入用户所拥有的权限我们给每个权限起个名字,例如某个用户拥有如下权限:batman:访问provider的hello接口在hello方法上添加注解P...
2019-12-28 10:16:59 1784
原创 【Spring Security】SpringCloudGateway 整合Spring Security Oauth2
前言更新到这里呢,终于满足了读者两年的好奇心。从上年年底探索Spring Cloud GateWay,众所周知,网关最大的用途在于限流、和路由,还有一个功能就是做鉴权,一直在我心中的疑惑,这个Spring Security OAuth2是和网关怎么关联的呢,最近终于找出了答案。上图:首先,介绍下流程客户端请求认证服务进行认证。认证服务认证通过向浏览器cookie写入token(身份令...
2019-12-28 00:02:44 11418 9
原创 【Spring Security】Spring Security Oauth2登陆提供Controller接口
上次分享到如何使用postman实现账号密码登陆,显然很复杂,传到的参数太多,一般我们只需要传两个参数即可,即 username和password这样就行了,况且以后做网关的话,也会分流到这个接口,于是这样的接口的开发势在必得。1. 代码实现1.1 创建请求类三个参数,用户名,密码,验证码。@Data@ToStringpublic class LoginRequest { S...
2019-12-23 16:22:10 1923
原创 【Spring Security】Spring Security Oauth2密码模式授权
密码模式(Resource Owner Password Credentials)与授权码模式的区别是申请令牌不再使用授权码,而是直接通过用户名和密码即可申请令牌。github:https://github.com/fafeidou/fast-cloud-nacos/blob/master/fast-cloud-nacos-examples/spring-security-examples/p...
2019-12-23 11:24:13 591
原创 【CI、CD专题】docker安装gitlab
bashdocker pull docker.io/redisdocker pull docker.io/sameersbn/postgresqldocker pull docker.io/sameersbn/gitlabdocker run --name postgresql -d --privileged=true -e 'DB_NAME=gitlabhq_production' ...
2019-12-19 13:04:42 240
原创 【Spring Cloud】结合Eureka健康检测机制聊聊TCP长连接和心跳那些事
# 前言可能很多 Java 程序员对 TCP 的理解只有一个三次握手,四次握手的认识,我觉得这样的原因主要在于 TCP 协议本身稍微有点抽象(相比较于应用层的 HTTP 协议);其次,非框架开发者不太需要接触到 TCP 的一些细节。其实我个人对 TCP 的很多细节也并没有完全理解。长连接与短连接TCP 本身并没有长短连接的区别 ,长短与否,完全取决于我们怎么用它。短连接:每次通信时,...
2019-12-17 13:36:04 3337 1
原创 【CI、CD专题】使用rancher实现Eureka高可用
1.Eureka高可用1.1修改配置文件application-eureka01.ymlserver: port: 8761eureka: client: serviceUrl: defaultZone: http://eureka01:8761/eureka/,http://eureka02:8762/eureka/,http://eureka03:8...
2019-12-16 17:03:22 580 1
原创 【CI、CD专题】极速体验安装rancher发布eureka
学习k8s,感觉入手有点难,喜欢来点实际操作来激发学习的兴趣,于是就搞了搞rancher,来一篇手记。首先说下环境宿主机mac两台centos7,用的是virtualbox安装的,至于怎么安装初始化配置,可以看我上篇博客。启动两台centos7开战。在rancher-server执行命令sudo docker run -d --restart=unless-sto...
2019-12-16 13:50:18 318
原创 【CI、CD专题】mac或win平台下VirtualBox安装centos7之配静态ip
本文介绍mac平台下安装虚拟机,并且安装centos配置静态ip。1. 安装virtualBox1.1 下载virtualBox去oracle官网下载mac版的virtualBox。 官网下载地址https://www.virtualbox.org/。下载好后按照向导进行安装即可2.安装centos72.1下载下载地址:http://isoredirect.cento...
2019-12-16 11:09:23 475
原创 【Spring Security】Spring Security 解决swagger无法访问
由于加上了security,访问swagger就会出现下面这个问题,这是由于对每个到达系统的http请求链接进行校验,有的连接需要暴露出来1.解决方法1.1 排除拦截将swagger的访问路径,给排除掉,这样就解决了。@Configuration@EnableResourceServer@EnableGlobalMethodSecurity(prePostEnabled = true...
2019-12-14 18:09:01 11532 2
原创 【Spring Security】Spring Security 与 OAuth2 之资源服务授权
1.资源服务授权1.1资源服务授权流程资源服务拥有要访问的受保护资源,客户端携带令牌访问资源服务,如果令牌合法则可成功访问资源服务中的资源,如下图:上图的业务流程如下:客户端请求认证服务申请令牌认证服务生成令牌认证服务采用非对称加密算法,使用私钥生成令牌。客户端携带令牌访问资源服务客户端在Http header 中添Authorization:Bearer 令牌。资源服务请求...
2019-12-14 17:08:53 224
原创 【Spring Security】Spring Security 与 OAuth2 之授权码模式
1.Oauth2认证1.1 Oauth2认证流程第三方认证技术方案最主要是解决认证协议的通用标准 问题,因为要实现 跨系统认证,各系统之间要遵循一定的接口协议。OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP、Ja...
2019-12-14 14:30:05 840
原创 【Spring Security】spring security 之初探jwt
初探jwtSpring Security 提供对JWT的支持,我们使用Spring Security 提供的JwtHelper来创建JWT令牌,校验JWT令牌等操作1.1生成私钥和公钥JWT令牌生成采用非对称加密算法生成密钥证书下边命令生成密钥证书,采用RSA 算法每个证书包含公钥和私钥keytool -genkeypair -alias batman -keyalg RSA ...
2019-12-12 14:38:18 400 2
原创 【Spring Security】spring security 之 BCryptPasswordEncoder
BCryptPasswordEncoder加密BCryptPasswordEncoder encode = new BCryptPasswordEncoder();encode.encode(password);比较 需要通过自带的方法 matches 将未经过加密的密码和已经过加密的密码传进去进行判断,返回布尔值。matches(CharSequence rawPasswo...
2019-12-11 18:24:02 294
原创 【限流】spring cloud gateway 令牌桶源码分析及扩展
简介SpringCloud Gateway 集成了redis做限流。限流作为网关最基本的功能,Spring Cloud Gateway官方就提供了RequestRateLimiterGatewayFilterFactory这个类,使用Redis和lua脚本实现了令牌桶方式的限流.这个filterFactory依赖RateLimiter及KeyResolver,其中KeyResolver用...
2019-12-11 10:50:01 1082 2
原创 【k8s专题】简述Kubernetes架构
Kubernetes Cluster由Master和Node组成,节点上运行着若干Kubernetes服务MasterMaster是Kubernetes Cluster的大脑,运行着的Daemon服务包括kube-apiserver、kube-scheduler、kube-controller-manager、etcd和Pod网络API Server(kube-apiserver)A...
2019-12-09 15:16:56 253
原创 【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流值url参数模式
接着上篇的header模式,有时候会想到能不能通过url参数来限流呢,sentinel也是支持的。分析URL这种模式通过调试我发现,通过url添加参数名称为type,值为warn,sentinel也会埋点。rules.add(new GatewayFlowRule("httpbin_route") .setCount(1) .setInter...
2019-12-06 10:05:56 1200
原创 【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流值header模式
上一篇是写如何动态限流的,力度是对所有的访问者,突然今天有个需求,是这样,需要根据不同的租户来限流,怎么做呢?来看下吧。追踪源码com.alibaba.csp.sentinel.adapter.gateway.common.rule#GatewayFlowRule 这个类中,就是昨天我们nacos的那些配置,代码片段如下:public class GatewayFlowRule { ...
2019-12-05 16:22:31 1892
原创 【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流
最近需要做限流,看一下网关的限流,做了一demo,防止以后忘记操作流程。准备nacos环境nacos ,下载下来unzip启动 sh startup.sh -m standalone准备sentinel环境sentinel-dashboard-1.6.0.jar 下载jar包通过命令启动:java -jar sentinel-dashboard-1.6.0.jar ,这里要介绍下...
2019-12-04 18:02:59 2813
原创 【ElasticSearch专题】探险IK热更新的姿势二「tomcat-http更新」
前面分享了如何用mysql热更新文档,现在这篇用tomcat http的方式更新。原理分析上次说到他会有一个定时任务刷新,这个定时任务也会扫描http的方式拉取远程的词典,对源码做了以下分析:监控流程:①向词库服务器发送Head请求②从响应中获取Last-Modify、ETags字段值,判断是否变化③如果未变化,休眠1min,返回第①步④如果有变化,重新加载词典⑤休眠1min,返...
2019-12-03 15:11:22 247 2
原创 【JUC专题】scheduleAtFixedRate与scheduleWithFixedDelay区别
TODO参考blog https://www.jianshu.com/p/ca78c2a1c108
2019-12-02 21:04:18 124
apache-skywalking-apm-6.5.0.tar.gz
2020-04-03
lombok-plugin-0.28-2019.3.zip
2020-01-27
Navicat.for.MongoDB.12.1.7.rar
2020-01-06
Navicat for MySQL v12.0.29.zip
2020-01-05
Xshell.zip
2020-01-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人