自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 总结几个mysql不走索引的问题

总结几个容易犯错误,导致不走索引的问题

2022-06-09 18:09:17 5077

原创 pagehelper之百万级数据查询优化

pagehelper之百万级数据查询优化用过pagehelper的人都知道,那是真香呀,但是当数据量级别越来越大的时候呢?几万,几十万,都没啥感觉,但是当上了百万,千万之后呢?它似乎就不香了呀。pagehelper相关的解析,浅谈什么的这儿就不说了,网上一搜一大把。这儿主要来解决一下百万级别以上的pagehelper的慢查询问题。pagehelper用过的都知道,每次有总页数,总条数,做分页真的是舒服呀。但是了解他原理的时候就知道,这些数据是怎么来的。然后数据库级别达到了百万级以上后,count

2020-08-27 16:26:41 3510 1

原创 Java8 parallelStream——共享线程池对性能解析

最近做压测中发现一个应用中cpu过高,导致接口超时rt情况有些不大稳定,jstack打印线程一直在parallelStream相关的代码出进行计算。故对parallelStream相关做一下研究,找一下优化方法。java8并行流parallelStream,相信很多人都喜欢用,特别方便简单。但是有多少人真正知道里面采用的共享线程池对密集型任务,高并发下的性能影响呢可能你的一个应用里面...

2019-09-30 14:21:35 3617

原创 SAX解析excel,避免oom

poi官网的文档:https://poi.apache.org/components/spreadsheet/how-to.html#xssf_sax_api背景介绍:       今天看到最近有同事有个excel导入oom的情况,然后使用easyExcel解决了,然后没几天,出现了活动金额导入错误的情况,造成了资损,故分享这样一篇文章。       去年12月份,做的项目是批量导...

2018-08-02 21:32:13 5963 5

原创 聊一聊:设计模式——解释器模式

你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。:用树结构表示表达式,非终结符为枝节点,终结符为叶节点。在词法分析阶段记录错误位置,尝试继续解析后续内容。,通过递归组合实现语义解析。提供了优雅的面向对象解决方案,特别适合需要。等专业工具,在灵活性与性能间取得平衡。:通过链式API简化复杂语法树构建。

2025-04-09 17:43:52 354

原创 聊一聊:设计模式——迭代器模式

迭代器模式是一种行为型设计模式,提供一种方法顺序访问聚合对象(如集合)中的元素,无需暴露其底层表示。核心思想在于解耦遍历逻辑与数据结构,让客户端能够以统一的方式处理不同类型的集合。

2025-04-07 18:11:12 732

原创 聊一聊:设计模式——责任链模式

责任链模式通过链式传递机制,为多级处理逻辑提供了灵活、可扩展的解决方案。在需要动态调整处理流程或解耦请求与处理的场景中,该模式能显著提升代码的可维护性,是处理复杂业务逻辑的利器。

2025-04-02 17:55:13 673

原创 聊一聊:设计模式——代理模式

代理模式通过间接访问机制,在不侵入原始代码的前提下,为系统扩展提供强大灵活性。合理运用静态/动态代理技术,可有效解耦核心逻辑与辅助功能,是构建高维护性、高扩展性架构的关键工具。

2025-04-01 18:11:44 946

原创 聊一聊:设计模式——桥接模式

桥接模式通过分离抽象与实现,为多维度变化的系统提供了优雅的扩展方案。其核心价值在于提升系统灵活性,使不同维度的变化能够独立演化。在需要应对多个变化轴线或预期未来扩展的场景中,该模式是架构设计的重要工具。

2025-03-31 17:57:10 853

原创 聊一聊:设计模式——组合模式

组合模式通过树形结构建模与统一接口设计,优雅处理部分-整体关系,是构建层次化系统的经典模式。合理应用可提升代码扩展性与可维护性,尤其适用于需递归处理复杂结构的场景。

2025-03-28 18:17:28 734

原创 聊一聊:设计模式——装饰器模式

装饰器模式通过灵活的对象包装机制,为系统功能扩展提供了优雅的解决方案。在面对需要动态、按需增强对象能力的场景时,该模式能显著提升代码的维护性和扩展性,是应对需求变化的有效工具。

2025-03-27 18:11:50 709

原创 聊一聊:设计模式——适配器模式

适配器模式通过**接口转换**实现不同组件的协同工作,是解决系统演进过程中接口不兼容问题的利器。合理使用该模式可提升代码复用性,降低系统耦合度,是架构设计中应对变化的重要策略。

2025-03-26 17:45:00 636

原创 聊一聊:设计模式——工厂方法模式

你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。在面对频繁扩展或需要支持多态创建的场景时,该模式是架构设计的优选方案。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。,通过定义创建对象的接口,但将具体实例化过程延迟到子类,实现。,使系统在不修改现有代码的前提下支持新产品的引入。通过参数决定创建哪种产品,结合简单工厂的灵活性。

2025-03-25 17:45:00 476

原创 聊一聊:设计模式——建造者模式

建造者模式通过分步构建与链式调用,优雅解决了复杂对象创建难题。结合不可变对象与参数校验,可显著提升代码健壮性。在参数众多、构造流程复杂或需多版本对象的场景下,该模式是提升代码可维护性的利器。

2025-03-24 17:45:00 600

原创 聊一聊:设计模式——原型模式

原型模式(Prototype Pattern)是一种创建型设计模式,通过复制现有对象来生成新对象,而非通过类实例化。其核心在于实现一个原型接口,声明克隆方法,使得对象能够自我复制,从而避免重复初始化带来的开销。你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。原型模式通过对象自我复制,高效解决复杂对象创建问题,尤其适用于初始化成本高或需动态配置的场景。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。管理多个原型,便于按需获取。

2025-03-20 17:40:57 758

原创 聊一聊:深拷贝与浅拷贝,有哪些应用场景

你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。博主不定时回复大家的问题。

2025-03-19 17:45:00 805

原创 mysql加字段需要注意什么?

小表直接操作:简单大表使用工具或 Online DDL灰度验证:先在从库或测试环境验证监控回滚:准备好回滚方案(如备份恢复)遵循这些规范,可在保证业务连续性的前提下高效完成字段添加操作。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。博主不定时回复大家的问题。公众号:吴计可师。

2025-03-18 17:45:00 538

原创 某大厂面试题:http是否有状态

HTTP 本质是无状态的:这是协议设计的基本特性。有状态交互是模拟实现的:通过 Cookie、Session、Token 等技术在应用层补充状态管理。选择策略无状态设计:适合 API 服务、高并发场景(如 CDN)。有状态设计:适合需要用户会话的 Web 应用(如电商、社交平台)。通过合理利用状态管理技术,可以在 HTTP 的无状态基础上构建复杂的有状态应用,同时兼顾性能和功能需求。

2025-03-17 17:45:00 660

原创 Docker 常用命令的全面总结

涵盖。

2025-03-14 18:06:02 816

原创 为什么Redis对大 Key(Large Key)和大对象不友好?怎样优化?

大 Key 判定标准数据类型大 Key 阈值(参考)String元素数量 > 5000ZSet元素数量 > 3000预防优先:设计阶段避免单个 Key 存储过量数据。拆分为王:通过分片、分页、分业务域降低单个 Key 大小。实时监控:建立大 Key 检测机制,早发现早处理。工具辅助:善用UNLINKMEMORY等 Redis 原生能力。通过以上优化策略,可显著降低大 Key 对 Redis 性能的影响,保障系统高可用与低延迟。

2025-03-14 17:45:00 1039

原创 大厂面试:最简单的String底层,你能答上来么?

Java的String通过不可变性动态编码常量池复用和哈希码缓存等设计,在保证安全性和线程安全的同时,显著提升了性能和内存效率。理解其底层实现有助于编写更高效的代码,避免常见的内存和性能问题。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。博主不定时回复大家的问题。公众号:吴计可师。

2025-03-13 17:45:00 867

原创 Vim 常用命令的全面总结

通过掌握这些核心命令,Vim 的编辑效率将显著提升。建议通过刻意练习导航练习:仅用h/j/k/l和w/b移动光标编辑挑战:使用d/y/p完成文本重组搜索实战:用和:%s快速修改代码最终目标是形成肌肉记忆,无需思考即可流畅操作。今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。博主不定时回复大家的问题。公众号:吴计可师。

2025-03-13 17:07:05 685

原创 最新大厂二面面试题,看似简单,怎样才能拿高分呢?

Redis 3.2 之后的版本根据字符串长度优化了 SDS 类型,共有5 种结构体// Redis 5.0+ 的 SDS 结构示例(sdshdr8)// 已用长度(最大 2^8-1)// 总分配容量(排除头和空终止符)// 类型标识(低3位表示类型,高5位未用)char buf[];// 实际数据存储(兼容C字符串)现在基于底层Redis 的 String 类型通过 SDS 数据结构 和 智能编码策略,来回答Java的String与Redis的String的区别。

2025-03-12 17:27:28 967

原创 大厂二面面试题居然跟简单的String相关,你能答上来么?

你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。最近跟面试小米的候选人聊天,得知他们的二面居然跟简单的String相关,但是似乎不大好回答。今天这篇文章我们讲解一个基础版本的回答,从使用层面上面来回答。Java 的String和 Redis 的String虽然名称相同,但它们在底层实现、功能特性和使用场景上有显著差异。

2025-03-11 17:19:38 660

原创 Python使用pip安装Caused by SSLError:certificate verify failed

最近公司电脑受限,安装conda好像有点问题,不让安装。只能pip硬装了:使用pip安装的时候一直报错:pip在通过 HTTPS 协议从 PyPI 拉取包时,无法验证 SSL 证书,导致请求失败。通常这个问题是因为本地环境缺少必要的 CA 证书或 SSL 配置不正确。以下是解决这个问题的几种方法:我的是属于用了代理导致的问题....

2025-01-07 09:26:12 1767

原创 java健康检查healthcheck

服务治理之——自建java健康检查healthcheck

2024-09-10 15:42:13 435 2

原创 最近你提前还贷了吗

提前还贷10w,我能减少还几年呢?好像各种借贷计算工具都不大好使的样子。这里手写了一个,大家不防算一算可以少还几年

2023-02-16 15:32:24 418 1

原创 git 删除本地分支

git删除本地无用分支

2022-06-29 14:44:14 53251 3

原创 mysql常用表修改索引等命令

sql常用因为的一些操作,经常要用到,但是我又记不住,每次都要搜索,干脆写出来,供每次自己查阅

2022-06-17 16:40:49 920

原创 字节阿里腾讯都开始965了你却还在通宵上线

突然想写这个文章是因为最近一家公司,也是出现了类似通宵上线这样的事情。通宵也并非是真的通宵,而是搞得比较晚上线这种。总结一下通宵上线的事儿第一种:自动化运维能力弱本人工作比较早,最早的时候还没有运维自动化工具,那个时候还是比较落后的时代,需要达成jar包,然后发邮件给SCM审核,然后审批通过后发送给运维,手动传包上线。每次上线等到半夜开始,但是每次都有各种各样的问题,需要发布第二遍,第三遍,甚至第N遍。每次半夜给scm的同事打电话让她起来给我们批邮件,得亏还是个妹纸脾气好。然后给运维打电话给我们上线

2021-11-05 16:27:47 2036

原创 java8之Lambda表达式调试神器Stream Debugger

公司越来越多的年轻程序员的加入,感觉我们这种老家伙都快赶不上他们的写代码节奏了。对于java老员工来说,特别是之前的一些老系统,需要不断维护重构的老系统来说,接触Lamdba的机会不会特别多,都是一些for循环之类的东西比较多,多几个for循环啥的逻辑好像更清晰,特别是debug的时候,几个for循环更容易看出问题来。甚至对新出来的Lamdba表达式有些许的反感,为了省那么几行代码,把一堆很复杂逻辑的东西都给藏起来了,代码的理解时间可能需要花跟多的时间。举个栗子????:看着这么一段代码:...

2021-10-29 11:26:45 3793

原创 python 排查问题之faulthandler使用

网上找了一堆,都是乌七八糟,没有几个认真写过关于faulthandler的使用。启动带一堆这个启动:In [1]: import testIn [2]: test.main()In [3]: import faulthandlerIn [4]: faulthandler.dump_traceback()无聊不?你线上环境都是这么启动的?这么几句代码还需要去待线程干嘛。。。...

2019-06-25 15:34:12 3321

原创 python从入门到入土

1. 安装:第一步:安装anaconda,其中自带了flask环境:https://www.anaconda.com/download/#macos3.7版本 2. 安装完成后设置base环境为3.6conda install python=3.6 3. 创建新的环境2.7conda create -n python27 python=2.7 4. 已经...

2019-02-25 16:48:23 269

原创 SAX解析excel与DOM解析excel占用内存对比

使用的excel大小为44M,分别用sax解析与dom解析一、 SAX解析该excel的内存使用情况如下:1. 整体情况:2. 老年代,只能通过fullGC进行回收。可以看下gc时间3. 新生代,可以被youngGC迅速回收掉的二、DOM解析excel内存使用情况如下:使用默认内存直接oom,后改成3G左右内存,执行很短时间就oom,下降的地方就是oom发生...

2018-08-06 17:52:54 1972 2

原创 xxx.app已损坏,打不开.你应该将它移到废纸篓-已解决

最近下载很多软件安装出现“xxx.app已损坏,打不开.你应该将它移到废纸篓”遇到这种情况可能不是你的软件包的问题,可能是macos安全设置问题。解决办法就是:1、系统偏好设置... -> 安全性与隐私-->修改为任何来源另外可能新版的没有“任何来源”选项解决办法:2、serria里面没有“任何来源”这一项,需要打开终端执行sudo spctl --master-disable这个时候...

2018-07-14 17:42:21 7006 1

原创 最近使用git跟gerrit及在idea中的坑

1.  [remote rejected] master -> master (prohibited by Gerrit: ref update access denied)或者[remote rejected] master -> master (prohibited by Gerrit: create access denied for refs/heads/master)...

2018-07-12 16:06:31 10116

空空如也

空空如也

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

TA关注的人

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