自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redisson 3.18.0版本解决failover相关问题

Redisson 在历史多个版本都出现了failover期间报错的问题并且目前没有一个版本可以完全解决这个问题,所以在当前使用版本3.18.0基础上做了二次开发,达到降低业务由于redis遇到问题导致不可用。

2024-02-27 17:14:13 562

原创 授权与交流

如何授权,如何跟下属交流及如何快速确认改进/优化方案

2023-09-26 19:46:04 79

原创 zgc各版本信息收集统计

zgc垃圾回收相关文档翻译整理,根据实际使用情况来讲需要高版本性能才会比g1高,jdk13一下不建议使用zgc

2023-09-18 18:03:22 306

原创 高并发线程内存事件处理器 disruptor 二 hello world

本篇为disruptor的一个demo,帮助大家快速入门使用起来,下面的代码是一个简单的实现,可以跟着本地debug进行源码查看一下具体的事件处理过程。

2022-11-15 17:00:26 223

原创 高并发线程内存事件处理器 disruptor 一 初步了解

简介Disruptor是英国外汇交易公司LMAX开发的一个高性能,研发的初衷是解决内存队列的延迟问题(在性能测试中发现竟然与I/O操作处于同样的数量级)。基于Disruptor开发的系统单线程能支撑每秒600万订单,2010年在QCon演讲后,获得了业界关注。2011年,企业应用软件专家Martin Fowler专门撰写长文介绍。同年它还获得了Oracle官方的Duke大奖。目前,包括Storm、Camel、Log4j 2在内的很多知名项目都应用了Disruptor以获取高性能。

2022-11-07 15:57:11 298

原创 IDEA Unicode码转中文

1.打开设置2.打开文件编码设置3.修改文件编码全部选择为UTF-8 并勾选应用即可

2021-12-03 17:19:36 5152

原创 今年新版面试题及答案(上个月朋友面试成功后留下的题目)

1.kafka的读写效率快的原因(详细解释传送门;https://blog.csdn.net/lianggzone/article/details/112386378) (1) 利用 Partition 实现并行处理 Kafka 是一个 Pub-Sub 的消息系统,无论是发布还是订阅,都要指定 Topic; Topic 只是一个逻辑的概念。每个 Topic 都包含一个或多个 Partition,不同 Partition 可位于不同节点。 一方面,由于不...

2021-07-27 20:35:54 683 3

原创 Dbeaver启动报错

Root exception:org.eclipse.core.internal.dtree.ObjectNotFoundException: 找不到树元素“/General/Scripts/Script-1.sql”。 at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:260) at org.eclipse.core.internal.dtree.DeltaDataTree

2021-07-05 17:28:17 14758 8

原创 记录一个小BUG(并行流&字符串拼接)

场景:线上日志输出调用外部接口错误处理过程:1。日志排查找到调用的外部接口链接2。查询调用日志方法请求参数3。手动执行部分参数看调用是否有问题4。沟通相应开发查看运行日志,同时排查相关代码查看错误原因问题定位:1。该方法请求参数拼接有问题,拼接结果并不是每个元素间有一个分隔符,有可能会有多个连续分隔符2。服务提供方请求日志查询结果显示有超长请求参数导致转换long类型异常问题分析:1。StringBuffer虽然是线程安全的,但是只能保证append方法拼接不产生..

2021-02-03 13:34:57 199 1

原创 Spring cloud Zuul和Hystrix

Zuul 1.应用场景 它相当于是一个网关,可以使用一定的路由配置来判断某一个URL由哪个服务来处理。并从Eureka获取注册的服务来转发请求。 API网关所有的客户端请求通过这个网关访问后台的服务。 2.核心功能 Zuul包含了对请求的路由和过滤两个主要功能,是各种服务的统一入口,同时会提供监控、授权、安全、调度等功能。 路由:负责将外部请求转发到具体的微服务实例上,是实现外部访问同一入口的基础,他与Nginx的区别就在于它提供了认证鉴权、动态路由、监控...

2021-01-05 15:19:30 856

原创 Spring Cloud 注册中心 Eureka

目录微服务的应用场景和核心竞争力Spring Cloud 与 Dubbo 的对比活跃度架构模块介绍EurekaEureka ServerEureka ClientZK与Eureka对CAP的支持(一致性、可用性、分区容错性)微服务的应用场景和核心竞争力低耦合:每一个微服务专注于单一功能,并通过良好的接口命名方式清晰表达出服务边界。由于体积小、复杂度低,可将每个微服务拆分为一个独立项目进行开发,易于保持高可维护性和开发效率。 部署:由于每个微服务都是一个可以.

2020-12-24 15:07:31 178

原创 当当的DubboX

最近有用到这个版本,特意搜了搜相关文档。虽然本项目版本比较老 但是还相对稳定,并且在某些方面使用的还比较方便。其最最最主要的作用就是为Dubbo服务提供Http请求访问接口,相信大家都曾经遇到过Dubbo服务和Http都需要提供的情况,通常我们是分开实现两个服务,底层实现调用一个业务逻辑,有了当当的这个DubboX只需要一个Dubbo接口就可以完美解决这个问题了。下面文档中各种Demo和介绍都有,如果有兴趣尝试一下的同学,一定要仔细看!!!以下为文档链接在Dubbo中开发REST风格的远程.

2020-10-29 20:51:33 305 5

原创 jquery:时间类型字符串转为Date类型

/** * 字符串格式:'YYYY-MM-DD HH:mm:ss */function getDate(dateStr) { return new Date(Date.parse(dateStr.replace(/-/g, "/")));}

2020-10-15 19:30:38 3028

原创 leetcode-77. 组合

给定两个整数n和k,返回 1 ...n中所有可能的k个数的组合。输入: n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]class Solution { private List<Integer> temp = new ArrayList<>(); private List<List<Integer>> ans = ne...

2020-09-16 18:18:59 115

原创 leetcode-226. 翻转二叉树

谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。示例:输入: 4 / \ 2 7 / \ / \1 3 6 9输出: 4 / \ 7 2 / \ / \9 6 3 1今天我也可以秒懂了,haha...class Solution { public TreeNode invertTree(TreeNod

2020-09-16 16:15:16 152

原创 leetcode-216. 组合总和 III

找出所有相加之和为n 的k个数的组合。组合中只允许含有 1 -9 的正整数,并且每种组合中不存在重复的数字。说明:所有数字都是正整数。解集不能包含重复的组合。示例 1:输入: k = 3, n = 7输出: [[1,2,4]]示例 2:输入: k = 3, n = 9输出: [[1,2,6], [1,3,5], [2,3,4]]class Solution { public List<List<Integer>> combin...

2020-09-11 11:51:23 337

原创 线上BUG定位及修复(MQ处理商品信息,实体商品与虚拟品处理逻辑)

背景: 1.MQ消费处理集群 负责整个项目中相同/相似逻辑的统一处理,降低冗余代码,提高API响应效率 进行异步处理 2.业务API 集群 本次涉及API内主体流程仅有请求参数校验,成功后发送MQ进行处理 3.定时任务 扫描数据库内需要更新的数据 4.涉及表 预售商品信息表、商品表、预售变更记录、商品信息变更记录涉及流程: 电商产品分为:预售、在售、虚拟品等多种状态 预售:...

2020-08-14 15:39:44 422

原创 算法相关电子书(不要积分点个赞就好)

算法第四版(中文)链接:https://pan.baidu.com/s/1PqowN1Br18HXX3SyPEjPug提取码:csl7算法链接:https://pan.baidu.com/s/1PBIdc7Z5Uhrhpu2tPn9Ckg提取码:j8gg算法图解链接:https://pan.baidu.com/s/1mB_giv_SYGWiCwhJTmARUw提取码:rhnk图灵的秘密链接:https://pan.baidu.com/s/1PX18iwhBz...

2020-08-05 20:38:49 844 1

原创 leetcode-343. 整数拆分

给定一个正整数n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。例:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。拆分规则:最优: 3 。把数字 n 可能拆为多个因子 3 ,余数为 0,1,2 三种情况。次优: 2 。若余数为 2 ;则保留,不再拆为 1+1 。最差: 1 。若余数为 1 ;则应把一份 3+1 替换为 2.

2020-07-30 19:20:14 274

原创 查询API优化

1.当前待优化背景 [1] 重复高频的数据查询请求(并且由于是核心API,可能会有多个其他系统同时进行调用并且由于是核心API,可能会有多个其他系统同时进行调用) [2] 数据具有周期性(数据有自己的生命周期,周期结束后很少会再次访问)2.当前需要的主要关注点 [1] 故障快速恢复 需要有数据持久化相关功能保证宕机数据及时恢复 硬件配置:可以配置多组多实例多机柜,保证服务。 [2] 查询性能 可通过减少数据索引条件...

2020-07-30 18:37:56 302 2

原创 TopK问题

找到最小的K个数1.O(N):用快排变形最最最高效解决TopK问题 class Solution { public int[] getLeastNumbers(int[] arr, int k) { if (k == 0 || arr.length == 0) { return new int[0]; } // ⚠️注意最后一个参数传入我们要找的下标(第k小的数下标是k-1) return qu...

2020-07-17 16:32:03 212

原创 leetcode-96. 不同的二叉搜索树

给定一个整数n,求以1 ...n为节点组成的二叉搜索树有多少种?例:输入: 3输出: 5解释:给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 ...

2020-07-15 12:11:27 118

原创 leetcode-209. 长度最小的子数组

给定一个含有n个正整数的数组和一个正整数s ,找出该数组中满足其和≥ s的长度最小的子数组,并返回其长度。如果不存在符合条件的子数组,返回 0。示例:输入:s = 7, nums = [2,3,1,2,4,3]输出:2解释:子数组 [4,3] 是该条件下的长度最小的子数组。解:滑动窗口public static int minSubArrayLen(int s, int[] nums) { int len = nums.length; if ...

2020-07-10 16:53:47 368

原创 Netty shizhan(不用拼音不让发,我戳 不要积分点个赞就好)

如果链接不好使了,可以留言 我在重新发一个。点关注不迷路,哈哈链接:https://pan.baidu.com/s/1IYMwKFmRjoRnx3FAqysFQw提取码:pt4q

2020-06-12 17:23:54 322

原创 leetcode-15. 三数之和等于0

给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]class Solution { public List<List<Integer>...

2020-06-12 17:21:15 310

原创 Netty权威指南电子版(不要积分点个赞就好)

如果链接不好使了,可以留言 我在重新发一个链接:https://pan.baidu.com/s/1FJd2KWqzEQVVQ7jgeWViDg提取码:vgie

2020-06-11 10:29:30 2519 10

原创 leetcode-146. LRU缓存机制

不用那么多花里胡哨,直接12行代码解决 /苦笑运用你所掌握的数据结构,设计和实现一个LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果密钥 (key) 存在于缓存中,则获取密钥的值(总是正数),否则返回 -1。写入数据 put(key, value) - 如果密钥已经存在,则变更其数据值;如果密钥不存在,则插入该组「密钥/数据值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的..

2020-05-25 17:45:40 197

原创 leetcode-152. 乘积最大子数组

给你一个整数数组nums,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。题目理解: 求数组中两个连续下标的数字最大值。解题思路:前后遍历两次求最大乘积即可class Solution { public i..

2020-05-18 19:19:14 168

原创 leetcode-983. 最低票价

在一个火车旅行很受欢迎的国度,你提前一年计划了一些火车旅行。在接下来的一年里,你要旅行的日子将以一个名为days的数组给出。每一项是一个从1到365的整数。火车票有三种不同的销售方式:一张为期一天的通行证售价为costs[0] 美元;一张为期七天的通行证售价为costs[1] 美元;一张为期三十天的通行证售价为costs[2] 美元。通行证允许数天无限制的旅行。 例...

2020-05-06 17:37:43 196

原创 leetcode-33. 搜索旋转排序数组

假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是O(logn) 级别。示例 1:输入: nums = [4,5,6,7,0,1,2...

2020-04-27 18:11:49 184

原创 leetcode-面试题 08.11. 硬币

硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007)示例1: 输入: n = 5 输出:2 解释: 有两种方式可以凑成总金额:5=55=1+1+1+1+1示例2: 输入: n = 10 输出:4 解释: 有四种方式可以凑成总金额:10=1010=5+510=5+1+1...

2020-04-23 11:25:26 197

原创 leetcode-200. 岛屿数量

给你一个由'1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例 1:输入:11110110101100000000输出: 1示例2:输入:11000110000010000011输出: 3解释...

2020-04-20 17:17:42 283

原创 leetcode-11. 盛最多水的容器

给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且n的值至少为 2。示例:输入:[1,8,6,2,5,4,8,3,7]输出:49class ...

2020-04-18 17:03:25 140

原创 leetcode-542. 01 矩阵

给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。两个相邻元素间的距离为 1 。示例 1:输入:0 0 00 1 00 0 0输出:0 0 00 1 00 0 0示例 2:输入:0 0 00 1 01 1 1输出:0 0 00 1 01 2 1以上啰里啰嗦一大堆,其实意思就是修改所有非0元素的值,为当前元素和最近的...

2020-04-15 14:43:41 399

原创 leetcode-151. 翻转字符串里的单词

给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: "the sky is blue"输出: "blue is sky the"示例 2:输入: " hello world! "输出:"world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: "a good example"...

2020-04-10 17:38:10 137

原创 leetcode-22. 括号生成

数字n代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且有效的括号组合。示例:输入:n = 3输出:[ "((()))", "(()())", "(())()", "()(())", "()()()" ]class Solution { List<String&gt...

2020-04-09 18:11:05 116

原创 leetcode-面试题 01.07. 旋转矩阵

给你一幅由N × N矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3]]示例 2:给定 matrix =[ [ 5, 1...

2020-04-07 13:56:58 162

原创 leetcode-8. 字符串转换整数

请你来实现一个atoi函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成一个整数。该字符串在有效的整数部分之后也可能会存在多余...

2020-04-03 15:27:18 167

原创 leetcode-289. 生命游戏

根据百度百科,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位...

2020-04-02 19:39:36 225

原创 leetcode-1111. 有效括号的嵌套深度

官方描述太复杂,其实就是求一个字符串内的有效括号嵌套层级注意这里的0和1 不是固定死的,把0变成1在把1变成0也可以。示例 1:输入:seq = "(()())"输出:[0,1,1,1,1,0]示例 2:输入:seq = "()(())()"输出:[0,0,0,1,1,0,1,1]class Solution { public int[] max...

2020-04-01 14:57:30 190

空空如也

空空如也

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

TA关注的人

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