自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 收藏
  • 关注

原创 K8S+Rancher2 部署springcloud

k8s服务注册中心:eruka配置中心:网关:zuul其他业务微服务:注册中心:1、注册中心需要固定的IP和端口,供其他服务注册。可以使用k8s的HostPort模式,内外部都可使用<pod宿主机ip>:hostport直接访问。2、需要固定的IP相当于需要固定的宿主机,所以在rancher创建eruka服务时要配置主机调度策略,这样即使eruka服务的pod重新部署时也不会随机分派到集群里的其他主机上,导致注册中心变更ip,所有业务服务都要修改eruka地址。.

2021-10-28 18:15:05 1238

原创 K8S + RANCHER 随记

rancher中快速部署应用 · 志云的博客 (zhenglin.work)

2021-10-28 15:24:56 1431 1

原创 keepalived主备高可用

keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议keepalived适合为没有状态变化的服务提供主备功能,例如:LVS、Nginx、Mycat、各种代理等。有状态变化的服务需要做主从同步。保证backup上线时与master状态基本相同。基本工作流程:VIP漂移将N台提供相同功能/服务...

2021-10-23 19:58:50 332

原创 IDEA 插件与配置

注册http://idea.lanyus.com/按说明修改hosts文件,复制注册码到IDEA即可使用。同项目/模块运行多个实例Run/Debug Configurations -> Single instance only功能1 方法抽取:当一个方法代码很长影响可读性,或其中一部分需要复用时,可以选中其中一段代码,将其抽取成一个独立方法。选中代码段,右键-&...

2020-09-08 23:35:27 465

原创 Canal数据库同步组件

一、启动Canal server,模拟mysql-slave,监听binloghttps://github.com/alibaba/canal/wiki/QuickStart二、Canal Clienthttps://github.com/alibaba/canal/wiki/ClientExample三、Canal 原理配置与配置实践https://www.iteye.com...

2020-06-25 12:00:31 292

原创 Tomcat 原理

https://blog.csdn.net/ly823260355/article/details/104181278

2020-06-25 11:59:35 147

转载 Spring Security与jwt

https://www.jianshu.com/p/6307c89fe3fa

2020-05-18 20:16:37 314

原创 微服务间数据跨库关联

在微服务环境下,不同服务之间会出现数据库独立情况,不可避免的需要跨库关联JOIN。例如:订单服务、商品服务、用户服务等,在独立分库后分别对应订单数据库、商品数据库、用户数据库。在查询订单是需要携带用户信息+商品信息,就出现了跨库join的使用场景。解决方案:1、数据冗余:在订单数据库订单表中,保存商品和用户完整信息。优点:sql简单且性能高。缺点:空间浪费且商品信息更新需要同步。2、S...

2020-05-07 17:17:33 4985

转载 MySQL的MVCC

MVCC(Mutil-Version Concurrency Control),就是多版本并发控制。MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。在Mysql的InnoDB引擎中就是指在已提交读(READ COMMITTD)和可重复读(REPEATABLE READ)这两种隔离级别下的事务对于SELECT操作会访问版本链中的记录的过程。这就使得别的事务可以...

2020-05-05 16:03:58 245

转载 Netty IO随记

https://www.cnblogs.com/imstudy/p/9908791.html线程模型Netty Reactor 模型,介绍服务端 Netty 的工作架构图:1)初始化创建 2 个 NioEventLoopGroup:其中 boosGroup 用于 Accetpt 连接建立事件并分发请求,workerGroup 用于处理 I/O 读写事件和业务逻辑。2)基于 S...

2020-04-23 10:33:11 209

原创 Mysql 索引与数据结构

Innodb索引存储数据结构 :B+树特点:1 每个节点有最多三个分支2 只有叶子节点存储数据,其余节点只存放 index关键字+指针。让节点能存放更多index、减少层高。3 层高影响命中一行数据的IO操作次数。命中一个节点相当于一次IO操作。4 每个节点16k。索引列的数据类型决定每个节点存放多少key。integer为4字节、bigint为8字节。节点存储的...

2020-04-02 16:01:17 118

转载 海量大数据处理

https://blog.csdn.net/v_july_v/article/details/7382693

2020-04-02 13:37:40 182

原创 Mybatis 源码分析

一 mybatis与spring整合其整合思路也适用于其他框架,是Spring提供的通用开放式整合思路(例如@EnableFeignClients)。流程: @MapperScan -引入->ImportBeanDefinitionRegistrar -调用->BeanDefinitionBuilder -创建-> (BeanDefinition)Mappe...

2020-04-02 12:51:51 240

原创 jackson 基本用法

时间格式化//设置jackson时区,其根据数据库时区将数据库得到的时间转化为GMT+8时区spring.jackson.time-zone=GMT+8//jackson时间格式spring.jackson.date-format=yyyy-MM-dd HH:mm:ss@JsonFormat 使用我们可以有两种用法(我知道的),在对象属性上,或者在属性的getter方法上,...

2020-03-30 20:18:26 265

转载 JVM 对象内存分配流程

1. Java对象分配流程 2. 栈上分配 2.1 本质:Java虚拟机提供的一项优化技术 2.2 基本思想: 将线程私有的对象打散分配在栈上 2.3 优点: 2.3.1 可以在函数调用结束后自行销毁对象,不需要垃圾回收器的介入,有效避免垃圾回收带来的负面影响 2.3.2 栈上分配速度快,提高系统性能 2.4 局...

2020-03-28 16:09:03 769

原创 Nginx/OpenResty+Lua实战

OpenResty集成了Nginx,在支持Nginx所有的功能前提下,整合了Lua、Mysql、 Redis、Memcached等插件,使Nginx功能更强大。做7层负载均衡,做web开发,缓存,流控、waf、网关LUA第三方库存放在openresty\lualib\resty目录下,即可在lua中调用功能分P解说https://space.bilibili.com/431715942...

2020-03-23 16:54:19 1745

原创 Redisson 随记

https://aperise.iteye.com/blog/2396196https://blog.csdn.net/l1028386804/article/details/73523810Redisson 中包含大量的分布式线程调度组件,其多数实现依靠String(int)+LUA+发布/订阅 结构完成。Redisson 实现的与JDK的AQS有异曲同工之妙。这里用int作为核心控...

2020-03-20 10:04:49 198

原创 Seata 分布式事务 随记

官网AT模式:https://github.com/seata/seata/wiki/AT-Mode流程解释:http://seata.io/zh-cn/docs/overview/what-is-seata.htmlAT流程图解https://www.cnblogs.com/smileIce/p/11200829.html注意1、表必须有主键。2、截止到0.9版不支持...

2019-10-28 17:01:39 590

原创 Spring Cloud Alibaba 随记

官方项目文档https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md本人测试项目https://gitee.com/sw008/SpringCloudAlibaba_test/tree/masterNacos1 控制台地址在Nacos-server(github下载)启动时会暴露。2...

2019-10-18 16:19:06 409

原创 SpringAop注解源码

分析贴https://blog.csdn.net/jy02268879/article/details/88409710https://www.cnblogs.com/nullllun/p/9222627.html概述在Bean初始化阶段,Spring为Bean生成代理对象,一个bean对象对应一个代理对象,代理对象的advisors:List中保存所有扫描到的和bean.c...

2019-09-07 15:17:40 495

转载 75道程序员面试逻辑题和答案

【1】假设有一个池塘,里面有无穷多的水。现有2个空水壶,容积分别为5升和6升。问题是如何只用这2个水壶从池塘里取得3升的水。【2】周雯的妈妈是豫林水泥厂的化验员。 一天,周雯来到化验室做作业。做完后想出去玩。 "等等,妈妈还要考你一个题目,"她接着说,"你看这6只做化验用的玻璃杯,前面3只盛满了水,后面3只是空的。你能只移动1只玻璃杯,就便盛满水的杯子和空杯子间隔起来 吗?" 爱动脑筋的周雯,...

2019-07-14 22:38:09 676

转载 MySQL快速生成100W条测试数据

原文https://blog.csdn.net/qq_16946803/article/details/818701741、生成思路利用mysql内存表插入速度快的特点,先利用函数和存储过程在内存表中生成数据,然后再从内存表插入普通表中2、创建普通表及内存表普通表CREATE TABLE `vote_record` ( `id` INT (11) NOT NULL...

2019-06-23 16:58:45 321

原创 Spring Security 随记

基本功能(认证+授权)https://blog.csdn.net/Lammonpeter/article/details/79611439https://www.bilibili.com/video/av40943281核心过滤器链https://blog.csdn.net/dushiwodecuo/article/details/78913113l流程 :Secur...

2019-05-29 23:28:36 1072

转载 设计模式

https://blog.csdn.net/u011642663/article/details/90597317链式调用数组、链表、包装、代理实现链式调用效果

2019-05-28 17:20:48 92

转载 JODA-TIME

文档:https://www.cnblogs.com/wihainan/p/5999771.htmlAPI初始化DateTime time = new DateTime();// 获得当前时间DateTime dateTime =newDateTime(2000,1,1,0,0,0,0);// 获得指定时间DateTime dateTime1 = DateTime...

2019-05-10 10:24:17 134

转载 JAVA 算法 分配算法

收集一些有趣的分配算法思路https://blog.csdn.net/u010466329/article/details/78672553https://blog.csdn.net/u010900754/article/details/84452036https://blog.csdn.net/qq_24598601/article/details/83928514https:/...

2019-05-07 14:49:02 2469

转载 SpringMvc 将@RequestMapping注册到HandlerMapping

整体思路SpringMvc通过HandlerMapping返回执行链。在Spring容器中有多中不同的HandlerMapping实现,其对应不同的映射配置方式。在使用@RequestMapping注解时,SpringMvc通过RequestMappingHandlerMapping类的Bean解析、注册、缓存映射关系,并提供匹配执行链的功能。RequestMappingHandlerM...

2019-05-04 18:46:26 2236

原创 Spring 事务

@Transactional默认只捕获RuntimeException@Transactional(rollbackFor = Exception.class)@Transactional失效https://www.cnblogs.com/milton/p/6046699.htmlhttps://www.jianshu.com/p/d4c3634447d0非常规...

2019-05-02 23:00:37 250

原创 HashMap中的并发resize出现死链

死链主要出现在并发执行resize()方法中的转移方法中,假设两个线程同时扩容,都生成自己的局部变量newTable[],并开始转移当前table[]元素。此时虽然newTable是局部变量线程独立的,但是table以及其中的Entry是线程共享的。newTable是局部变量,但是原table上的Entry都是共享的。扩容转移节点时是把原链表节点倒序放入新table。例如:原Table...

2019-04-24 21:11:55 2067

转载 layui数据表格新增一行

方案一layui的数据表格集成了查看编辑删除等功能,但新增功能官方文档却没有提及,当业务需求需要点击新增一行时,可用如下方式实现实现的思路是:当点击新增一行时,把之前的数据保存下来,并在数据尾部增加一行空数据然后将新数据重新载入表格var dataBak = []; //定义一个空数组,用来存储之前编辑过的数据已经存放新数据var tableBak = table.cach...

2019-04-17 15:26:57 3366

原创 JAVA ThreadPoolExecutor线程池

部分资料来自网络https://www.cnblogs.com/fixzd/p/9253203.htmlhttps://blog.csdn.net/qq_30572275/article/details/80543921设计ThreadPoolExecutor中存在内部类Worker,线程池通过HashSet<Worker>保存这些Worker对象。Worker...

2019-04-16 10:39:41 264

转载 JVM导图

https://blog.csdn.net/timczm/article/details/89076051

2019-04-12 15:39:22 126

转载 SpringBoot 使用@Scheduled注解配置定时任务

原文:https://blog.csdn.net/onedaycbfly/article/details/79093829定时任务实现方式三种:1) Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。 最早的时候就是这样写定时任务的。2) 开源的第三方框架: Quartz 或者 elastic-job , 但是这个比较...

2019-04-08 09:02:40 252

转载 Spring Security 动态加载URL权限

https://www.jb51.net/article/141682.htmhttps://blog.csdn.net/weixin_43184769/article/details/84937685#t0动态加载URL权限动态实际测试项目:https://gitee.com/sw008/springbootdemo_source_code项目目的是实现Spring Securi...

2019-04-01 16:21:17 2789

转载 详解设计模式在Spring中的应用

原文 :http://itxxz.com/a/javashili/tuozhan/2014/0601/7.html第一种:简单工厂又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。spring中的BeanFactory就是简单工厂模式的体现,根据传入一个...

2019-03-22 11:14:37 104

原创 Spring IOC容器源码分析(XML)

原文:https://www.jianshu.com/p/e4ca039a2272整体思路资源(Resource)定位,启动构建BeanFactory容器,读取XML配置生成BeanDefinition放进BeanFactory的Map里,以beanName为key。根据 lazy-init 属性初始化单例非懒加载的 Bean 实例和依赖注入。getBean时首先会递归getBean创建依...

2019-02-18 21:18:54 298

原创 SpringBoot 中DispatcherServlet请求分发流程源码分析

以一个简单的请求为例(实际RedisController包含多个请求)@RestController@RequestMapping("/redis")public class RedisController { @RequestMapping(value = {"/getmsg"}) public String getmsg(){ return "...

2019-02-17 22:43:40 4719

转载 SpringBoot 启动加载类 ApplicationRunner 和 CommandLineRunner

https://baijiahao.baidu.com/s?id=1572461067170234&amp;wfr=spider&amp;for=pchttps://blog.csdn.net/zhichao_qzc/article/details/80673026如果在SpringBoot应用启动的时候需要执行特定的动作,可以利用ApplicationRunner接口 或者 Comman...

2019-02-14 17:44:16 2251

原创 算法 常用思路

原文:https://blog.csdn.net/buyulian/article/details/77988006暴力法对于一些简单的题或者是数值范围较小暴力不会时间超限的那种题。一般笔试时,若想不出 ac 的算法,能暴力通过一部分也是可以的。从简单情况开始寻找规律对于一个题,可以看下在简单情况下的数值,以寻求他的内在规律或者为破解复杂的情况提供线索。如登台阶的那个题,一...

2019-02-12 20:53:25 1111

转载 分布式事务解决方案:TCC与最终一致

之前总结的一些分布式事务文章开源项目TCC-Transaction:https://blog.csdn.net/shanchahua123456/article/details/86767156最终一致性模型:https://blog.csdn.net/shanchahua123456/article/details/84950628https://blog.csdn.net/shan...

2019-02-10 21:23:29 2292

空空如也

空空如也

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

TA关注的人

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