自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

luzhensmart的专栏

Come on baby!

  • 博客(844)
  • 资源 (11)
  • 收藏
  • 关注

转载 分布式事务Seata

官网。

2023-05-10 16:17:34 160 1

转载 电商分库分表经典实例

电商分库分表经典实例-腾讯云开发者社区-腾讯云

2023-05-10 14:08:56 185

原创 Git常用命令

解决多次commit 没有及时同步rebase -i master问题

2022-12-13 11:17:15 382

原创 Java jvm参数在线调优工具

HeapDump - Java虚拟机参数分析https://opts.console.heapdump.cn/

2022-02-24 16:57:19 721

转载 JVM: G1和CMS的区别

JVM: G1和CMS的区别_爱笑的k11的博客-CSDN博客

2021-09-12 19:48:05 290

转载 缓存淘汰算法-LRU 实现原理

01、前言我们常用缓存提升数据查询速度,由于缓存容量有限,当缓存容量到达上限,就需要删除部分数据挪出空间,这样新数据才可以添加进来。缓存数据不能随机删除,一般情况下我们需要根据某种算法删除缓存数据。常用淘汰算法有 LRU,LFU,FIFO,这篇文章我们聊聊 LRU 算法。02、LRU 简介LRU是 Least Recently Used 的缩写,这种算法认为最近使用的数据是热门数据,下一次很大概率将会再次被使用。而最近很少被使用的数据,很大概率下一次不再用到。当缓存容量的满时候,优先淘汰最近很.

2021-09-10 12:32:01 579 1

转载 Redis集群搭建及原理

Redis集群搭建及原理 - 风止雨歇 - 博客园

2021-09-10 01:07:20 151

转载 Redis 的线程模型了解么?

Redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 Redis 才叫做单线程的模型。它采用 IO 多路复用机制同时监听多个 Socket,根据 Socket 上的事件来选择对应的事件处理器进行处理。文件事件处理器的结构包含 4 个部分:多个 Socket IO 多路复用程序 文件事件分派器 事件处理器(连接应答处理器、命令请求处理器、命令回复处理器)多个 Socket 可能会并发产生不同的操作,每个操作对应不同的文件事件,但是 IO

2021-09-09 22:26:19 110

转载 Redis哨兵、持久化、主从、手撕LRU

小伙子你好,之前问过了你基础知识以及一些缓存的常见几个大问题了,那你能跟我聊聊为啥Redis那么快么?哦,帅气迷人的面试官您好,我们可以先看一下关系型数据库跟Redis本质上的区别Redis采用的是基于内存的采用的是单进程单线程模型的 KV 数据库,由C语言编写,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。 完全基于内存,绝大部分请求是纯粹的内存操作,非常快速。它的,数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1);

2021-09-09 21:19:55 133

转载 redis特点单进程单线程高性能服务器,Redis为什么是单线程?高并发响应快?

为什么 redis 单线程却能支撑高并发?纯内存操作核心是基于非阻塞的 IO 多路复用机制单线程反而避免了多线程的频繁上下文切换问题一、Redis的高并发和快速原因1.redis是基于内存的,内存的读写速度非常快(纯内存); 数据存在内存中,数据结构用HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)。2.redis是单线程的,省去了很多上下文切换线程的时间(避免线程切换和竞态消耗)。3.redis使用IO多路复用技术(IO multiplexing, 解

2021-09-09 20:57:33 345

转载 Redis跳表

1:Redis数据结构——跳跃表 - Mr于 - 博客园

2021-09-09 19:09:24 85

转载 Redis的底层数据结构

https://www.cnblogs.com/ysocean/p/9080942.html

2021-09-09 17:47:01 89

转载 Redis:有序集合类型zset实现原理

和上面的集合对象相比,有序集合对象是有序的。与列表使用索引下标作为排序依据不同,有序集合为每个元素设置一个分数(score)作为排序依据。①、编码有序集合的编码可以是 ziplist 或者 skiplist。ziplist 编码的有序集合对象使用压缩列表作为底层实现,每个集合元素使用两个紧挨在一起的压缩列表节点来保存,第一个节点保存元素的成员,第二个节点保存元素的分值。并且压缩列表内的集合元素按分值从小到大的顺序进行排列,小的放置在靠近表头的位置,大的放置在靠近表尾的位置。//操作ZADD pri

2021-09-09 16:32:01 177

转载 spring---transaction(1)---源代码分析(事务的拦截器TransactionInterceptor)

https://www.cnblogs.com/chihirotan/p/6739748.html

2021-09-08 20:04:07 134

转载 spring aop —— 深入理解advisor

https://www.jianshu.com/p/2250b24a3f7d

2021-09-08 18:54:17 122

转载 Spring AOP实现原理简介

https://blog.csdn.net/wyl6019/article/details/80136000

2021-09-08 18:08:37 109

转载 select、poll、epoll的原理与区别

1、select同步多路IO复用时间复杂度:O(n)fd_set(监听的端口个数):32位机默认是1024个,64位机默认是2048。缺点: (1)单进程可以打开fd有限制; (2)对socket进行扫描时是线性扫描,即采用轮询的方法,效率较低; (2)用户空间和内核空间的复制非常消耗资源;2、poll 同步多路IO复用 调用过程和select类似 时间复杂度:O(n) 其和select不同的地方:**采用链表的方式替换原有fd_set数据结构

2021-09-06 18:03:41 133

原创 各种数据结构在线生成的网址

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

2021-08-31 15:42:11 377

转载 大顶堆,小顶堆

什么是堆?堆是一种非线性结构,可以把堆看作一个数组,也可以被看作一个完全二叉树,通俗来讲堆其实就是利用完全二叉树的结构来维护的一维数组但堆并不一定是完全二叉树按照堆的特点可以把堆分为大顶堆和小顶堆大顶堆:每个结点的值都大于或等于其左右孩子结点的值小顶堆:每个结点的值都小于或等于其左右孩子结点的值使用堆的原因?如果仅仅是需要得到一个有序的序列,使用排序就可以很快完成,并不需要去组织一个新的数据结构。但是如果我们的需求是对于一个随时会有更新的序列,我要随时知道这个序列的最小值或最大值是什么。

2021-08-26 00:05:22 6165 3

转载 B-/B+树作为Mysql索引数据结构的区别

一、MySQL索引原理详解1、背景使用mysql最多的就是查询,我们迫切的希望mysql能查询的更快一些,我们经常用到的查询有:按照id查询唯一一条记录按照某些个字段查询对应的记录查找某个范围的所有记录(between and)对查询出来的结果排序mysql的索引的目的是使上面的各种查询能够更快。2:什么是索引?索引的本质:通过不断地缩小想要获取数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是说,有了这种索引机制,我们可以总是用同一种查找方式来

2021-08-24 15:51:47 285

原创 LRU

LRU【聊聊缓存淘汰算法-LRU 实现原理 - 今日头条】https://m.toutiao.com/is/deQk98V/

2021-08-19 20:20:35 185

转载 简单理解Zookeeper的Leader选举

Leader选举是保证分布式数据一致性的关键所在。Leader选举分为Zookeeper集群初始化启动时选举和Zookeeper集群运行期间Leader重新选举两种情况。在讲解Leader选举前先了解一下Zookeeper节点4种可能状态和事务ID概念。1、Zookeeper节点状态LOOKING:寻找Leader状态,处于该状态需要进入选举流程 LEADING:领导者状态,处于该状态的节点说明是角色已经是Leader FOLLOWING:跟随者状态,表示Leader已经选举出来,当前节点角色是

2021-08-18 11:28:51 308

转载 JAVA多线程之wait/notify

https://www.cnblogs.com/hapjin/p/5492645.html

2021-08-08 00:57:51 95

转载 Java多线程wait()用while代码块的理解

多线程wait()判断条件这个地方的逻辑琢磨了挺久的,本意就是拿到锁之后如果条件不满足就等待,感觉用if和while似乎没啥区别首先是生产者,单独一个线程,和消费者共用一个锁和一个队列,都通过构造方法传入1.线程里直接死循环持续生产消息,消息体最好不一样,可以弄个随机数,我这里用了微妙时间戳,调用add()方法2.需要添加一个条件,如果队列已经满了,就不能继续添加了,调用wait()方法等待被其它线程消费了之后唤醒3.生产完消息后,调用notifyAll()方法,唤醒等待的所有线程,直到sy

2021-08-08 00:30:11 327

转载 为什么wait(),notify(),notifyAll()必须在同步方法/代码块中调用?

在JAVA中,所有的对象都能够被作为‘监视器monitor’——指的是一个拥有一个独占锁,一个入口队列,和一个等待队列的实体entity。所有对象的非同步方法都能在任意时刻被任意线程调用,此时不需要考虑加锁的问题。而对于对象的同步方法来说, 在任意时刻有且仅有一个拥有该对象独占锁的线程能够调用它们。 例如,一个同步方法是独占的。如果在线程调用某一个对象的同步方法的时候,对象的独占锁被其他线程占有,那么当前线程将处于阻塞状态。并添加到对象的入口队列中。只有在调用线程拥有的某个对象的独占锁的时候,才能够调用

2021-08-07 22:40:31 893

转载 线程状态转换图

https://www.cnblogs.com/waterystone/p/4920007.html

2021-08-07 22:19:20 83

转载 Spring Boot自定义Banner

我们在启动 SpringBoot 时,控制台会打印 SpringBoot Logo 以及版本信息;这个操作是 SpringBoot 固定的还是可配置(自定义)的? . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |

2021-06-25 11:41:39 198

转载 spring-validateRequiredProperties()-自定义环境变量验证

文中涉及的spring版本号为4.1.8.RELEASE扩展功能介绍今天实战的内容,是通过spring容器来确保环境变量MYSQL_HOST一定存在,如果不存在应用就会启动失败;分析spring源码通过分析spring源码来确定如何扩展;在spring环境初始化的时候,AbstractApplicationContext的prepareRefresh方法会被调用,源码如下:protected void prepareRefresh() { this.startupDat

2021-06-24 14:20:08 1378

原创 Java单链表排序

题目描述给定一个无序单链表,实现单链表的排序(按升序排序)。示例1输入[1,3,2,4,5]返回值{1,2,3,4,5}import java.util.*;/* * public class ListNode { * int val; * ListNode next = null; * } */public class Solution { /** * * @param head ListNode类 the h.

2021-02-18 13:04:27 1093 1

原创 Java给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值

题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5,1}, {2,3,4,[2,6,2],5,1}, {2,3,4,2,[6,2,5],1}, {2,3,4,2

2021-02-16 19:38:58 464

原创 Java计算根节点到叶子节点的所有路径表示的数字之和

题目描述给定一个仅包含数字0−9的二叉树,每一条从根节点到叶子节点的路径都可以用一个数字表示。例如根节点到叶子节点的一条路径是1→2→3,那么这条路径就用123来代替。找出根节点到叶子节点的所有路径表示的数字之和例如:这颗二叉树一共有两条路径,根节点到叶子节点的路径1→2用数字12代替根节点到叶子节点的路径1→3用数字13代替所以答案为12+13=25示例1输入{1,0}返回值10import java.util.*;/* ...

2021-02-16 17:34:13 432

原创 Java输入一棵二叉树,判断该二叉树是否是平衡二叉树

题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。public class Solution { public boolean IsBalanced_Solution(TreeNode root) { if(root == n

2021-02-16 17:03:18 190

原创 Java二叉树,计算节点值之和最大的路径的节点值之和是多少

题目描述给定一个二叉树,请计算节点值之和最大的路径的节点值之和是多少。这个路径的开始节点和结束节点可以是二叉树中的任意节点例如:给出以下的二叉树,返回的结果为6示例1输入{-2,1}返回值1示例2输入{-2,#,-3}返回值-2import java.util.*;/* * public class TreeNode { * int val = 0; * TreeNode left = null; * Tre..

2021-02-16 15:44:06 541

原创 Java数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字

题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。示例1输入[1,2,3,2,2,2,5,4,2]返回值2public class Solution { /** * 剑指offer-28-数组中出现次数超过一半的数字 * 数组中有一个数字出现的次数超过数组长度的一半,请.

2021-02-10 16:47:00 511

原创 Java以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回

题目描述以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。(字符串长度不大于100000,保证字符串仅由'0'~'9'这10种字符组成)示例1输入"1","99"返回值"100"说明1+99=100 Ascii码表参照:看十进制列和字符列 可以看到字符的'0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 对应的十进制数字,可以得知在针对字符数字的情况下,如:public static void m.

2021-02-09 19:43:50 2706

转载 Hashmap如何实现key的唯一性

Map和Set不可存在重复元素1对于 HashMap HashSet的实现是:维护了一张 HashTable 。容器中的元素全部存储在Hashtable 中,每次添加元素都会先判断是否有重复的元素,hashcode()方法进行比较,若一样再equals()方法比较,他们的底层数据结构如果也相同的话,JVM就认为数据已经存在了,就不会添加数据!2 对于 TreeMap TreeSet他们底层是数据结构的实现是:维护了一棵二叉树。 容器中添加元素的时候,他们有是怎么判断是否有相同元素...

2021-02-02 21:54:05 1762

转载 tomcat最大线程数设置的依据

重要参数maxThread:tomcat的maxThread指的是处理业务的最大线程数,位于Connector组件的层次,在springboot中由server.tomcat.max-threads参数决定,默认是200 acceptCount:当前线程数达到maxThread的时候,等待队列的最大长度,默认为100tomcat接收请求创建线程的过程如果当前线程数还没有达到maxThread,则创建一个线程去执行任务 如果已经达到了maxThread,但是等待列队中的任务还没有达到accpet

2021-02-02 16:55:34 1145

原创 Java-给定一个无序数组arr,找到数组中未出现的最小正整数

题目描述给定一个无序数组arr,找到数组中未出现的最小正整数例如arr = [-1, 2, 3, 4]。返回1arr = [1, 2, 3, 4]。返回5[要求]时间复杂度为O(n)O(n),空间复杂度为O(1)O(1)示例1输入[-1,2,3,4]返回值1import java.util.*;public class Solution { /** * 原地哈希,把数组中取值在1到n的数放到对应的位置, * 比如1.

2021-01-31 20:22:32 1764

原创 Java-求数组中a+b+c=0的所有满足条件的三元组

题目描述给出一个有n个元素的数组S,S中是否有元素a,b,c满足a+b+c=0?找出数组S中所有满足条件的三元组。注意:三元组(a、b、c)中的元素必须按非降序排列。(即a≤b≤c) 解集中不能包含重复的三元组。例如,给定的数组 S = {-10 0 10 20 -10 -40},解集为(-10, 0, 10) (-10, -10, 20)示例1输入[-2,0,1,1,2]返回值[[-2,0,2],[-2,1,1]]import java.util.*...

2021-01-31 14:15:47 1704

原创 Java整形数组arr求容器能装多少水

题目描述给定一个整形数组arr,已知其中所有的值都是非负的,将这个数组看作一个容器,请返回容器能装多少水。具体请参考样例解释示例1输入[3,1,2,5,2,4]返回值5说明示例2输入[4,5,1,3,2]返回值2备注:1 \leq N \leq 10^61≤N≤106import java.util.*;public class Solution { /** * Java版 《容器盛水问题》

2021-01-30 17:30:49 402

tcnative-1.dll

解决方法: 下载tcnative-1.dll文件,将其放到tomcat\bin里。也可以忽略,不影响程序运行。

2013-05-23

LeapFTP 破解版

LeapFTP 破解版

2013-05-16

SSH2整合需要的jar包(2)

SSH2整合需要的jar包(2) 同样是SSH2整合的jar包 根据版本的不同 整合需要的jar包 也不同

2013-05-07

SSH2整合 需要的jar包

Struts2 Spring Hibernate 整合需要的jar包很好用

2013-05-07

aopalliance-1.0.jar

aopalliance-1.0.jar 很好用

2013-05-06

aspectj -1.6.13 . jar

aspectj-1.6.13.jar 很好用

2013-05-06

w3school_5.0.chm中文文档

w3school_5.0.chm中文文档 挺好用的

2013-04-30

jQueryAPI1.4.chm中文文档

jQueryAPI 1.4.chm 中文文档 还不错 挺好用的

2013-04-30

jQuery-UI-Reference-1.7.chm

jQuery-UI-Reference-1.7.chm文档,挺好用的

2013-04-30

Myeclipse8.6注册码获取

将文档中的代码复制进去后,运行,即可获取Myeclipse8.6的注册码

2013-04-30

Altova XMLSpy 2013注册机

必须是32位系统的 很好用 减压后 有个图片文件 照着上面做 即可注册成功

2013-04-30

空空如也

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

TA关注的人

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