牛虻~
码龄9年
关注
提问 私信
  • 博客:42,522
    问答:329
    42,851
    总访问量
  • 35
    原创
  • 1,282,133
    排名
  • 6
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 目前就职: 北京均安科讯技术有限公司
  • 加入CSDN时间: 2016-05-27
博客简介:

qq_35134375的博客

查看详细资料
个人成就
  • 获得11次点赞
  • 内容获得12次评论
  • 获得41次收藏
  • 代码片获得121次分享
创作历程
  • 2篇
    2023年
  • 1篇
    2022年
  • 23篇
    2021年
  • 10篇
    2020年
成就勋章
TA的专栏
  • 多线程
    3篇
  • jvm
    5篇
  • 微服务
    2篇
  • java
    10篇
  • mysql
    7篇
  • mac
  • linux
    2篇
  • vue js
    3篇
  • vue 富文本编辑器
    1篇
  • java tomcat
    1篇
  • java mail
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

351人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

代码重构分享

快速浏览30秒,能否读懂一个大概意思。
原创
发布博客 2023.10.31 ·
179 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

jvm问题排查

命令查询资源信息top:显示系统整体资源使用情况vmstat:监控内存和 CPUiostat:监控 IO 使用netstat:监控网络使用。
原创
发布博客 2023.05.28 ·
881 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JAVA知识体系

java知识体系
原创
发布博客 2022.12.06 ·
7391 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

面试问题整理

目录如果项目急需上线怎么办当用户变多时,系统如何拆分(AKF)如果项目急需上线怎么办加班加人、加资源功能排优先级,保证重要的能用,后期迭代当用户变多时,系统如何拆分(AKF)x:水平拆分,集群部署y:业务拆分,根据功能模块进行拆分z:数据拆分,根据数据的种类进行拆分(行业、地区)...
原创
发布博客 2021.11.18 ·
208 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

java代码证明CPU乱序执行

JAVA证明CPU乱序执行
原创
发布博客 2021.11.18 ·
657 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mybatis 开启批量提交

## 当我们在开发中,需要多次update或者insert,但是又想提高效率,这时可以用批量提交的方式。批量提交最常见的就是在mapper中使用foforeach
原创
发布博客 2021.06.07 ·
1210 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

如何提升QPS

网络减少网络开销(减少服务间调用,redis、mysql等访问)让服务能力对等(例如eureka url顺序打乱)使用短url,短请求参数实时数据改为长连接(不要使用轮询)合并多个请求为一个请求cpu能使用异步就使用异步能用多线程就用多线程使用mq进行流量削峰多的数据,分批次访问mysql、redis、tomcat增加 最大连接数内存使用缓存(减少操作数据库)磁盘sql优化、索引优化...
原创
发布博客 2021.04.11 ·
320 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

eureka相关

eureka优化及注意事项服务少时,应该关闭自我保护注册中心两台一下,相互写对方url,如果配置三台及以上,需要把另外的url全部写上注册中心url打乱写,因为在实际注册时,会按照填写的顺序进行注册缩短服务剔除时间、发现时间、拉取时间、心跳时间以及集群间同步间隔时间关闭服务时,先停止服务,在手动进行下线eureka一般默认配置为3台,如果配置修改默认配置eureka cap中满足哪些,为什么cap中不满足c,原因如下:eureka中的三级缓存(registry、readWrite
原创
发布博客 2021.04.11 ·
99 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

动态代理除了cglib还了解哪些

asm(cglib底层实现,使用了责任链+观察者模式,主要类ClassReader, ClassWriter)instrument(类拦截功能,可以直接修改class二进制,java agent,idea破解就是用的这个)
原创
发布博客 2021.04.05 ·
156 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

对象引用强软弱虚

1. 强引用普通new 对象就是使用强引用2. 软引用当内存不足时,软引用会被回收3. 弱引用只要遇到垃圾回收,就会被回收掉4. 虚引用如果一个对象仅持有虚引用,那么它就和没有任何引用一样,在任何时候都可能被垃圾回收器回收。...
原创
发布博客 2021.04.05 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

DCL单例是否需要加volatile,为什么

为什么需要加,为什么因为cpu是乱序执行的,如果不加,在多线程情况下,会得到半初始化的对象volatile是如何实现的字节码层面:ACC_VOLATILEjvm层面:使用内存屏障LoadLoad屏障:对于这样的语句Load1; LoadLoad; Load2,在Load2及后续读取操作要读取的数据被访问前,保证Load1要读取的数据被读取完毕。StoreStore屏障:对于这样的语句Store1; StoreStore; Store2,在Store2及后续写入操作执行前,保证Stor
原创
发布博客 2021.04.05 ·
260 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

java对象创建过程

class loading先将class字节码文件加载到内存中class linking建立关联verification: 对加载进来得二进制进行校验preparation: 静态变量设默认值resolution: 解析,将字符串代表的引用进行关联替换class initializing: 类初始化,静态变量设置初始值,执行静态语句块申请对象内存成员变量赋默认值调用构造方法成员变量顺序赋值执行构造方法语句...
原创
发布博客 2021.04.05 ·
82 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

GC相关整理

目录什么是垃圾如何定位垃圾常见的垃圾回收算法对象分配过程jvm常见垃圾回收器垃圾收集器跟内存大小的关系什么是垃圾没有任何引用所指向的对象就是垃圾如何定位垃圾引用记数跟可达算法常见的垃圾回收算法标记清除:从根对象开始标记,之后将未标记的对象进行清理,适用于存活对象叫多的情况缺点:扫描两次,效率偏低拷贝算法:开辟一块内存,将存活对象顺序拷贝到新开辟的内存中,适用于存活对象较少的情况。优点:只扫描一次,效率较高,不会产生碎片缺点:空间浪费,需要移动对象。标记压缩:标记的同时进行移动,
原创
发布博客 2021.04.05 ·
122 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

mysql优化

目录数据类型优化主键的选择字符集的选择适当拆分适当的数据冗余索引优化sql语句优化数据类型优化尽量使用可以正确存储数据的最小数据类型更小的数据类型通常更快,因为它们占用更少的磁盘、内存和CPU缓存,并且处理时需要的CPU周期更少,但是要确保没有低估需要存储的值的范围,如果无法确认哪个数据类型,就选择你认为不会超过范围的最小类型整型比字符操作代价更低因为字符集和校对规则使字符比较比整型比较更复杂经常查询的列,应该尽量避免使用有null如果查询中包含可为NULL的列,对mysql来说很难优化,因
原创
发布博客 2021.04.03 ·
97 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

B树跟B+树的区别

B树每个节点都存储key和data,所有节点组成这棵树,并且叶子节点指针为null,当数据量大时,会导致树深度比较深B+树非叶子节点存放key,叶子节点存放data
原创
发布博客 2021.04.03 ·
81 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

InnoDB锁

共享/排它锁(Shared and Exclusive Locks)按照兼容性来分类,InnoDB有共享锁和排它锁两种行级锁。共享锁(S):又称读锁。允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。排他锁(X):又称写锁。允许获取排他锁的事务更新数据,阻止其他事务取得相同的数据集共享读锁和排他写锁。若
原创
发布博客 2021.04.03 ·
147 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

事务的四个特性及隔离级别

原子性(A):一个事务中的操作,要么全部成功,要么全部失败一致性©:数据库总是从一个一致性的状态转换到另外一个一致性的状态隔离性(I):一个事务的修改在最终提交前,对其他事务是不可见的持久性(D):一旦事务提交,所做的修改就会永久保存到数据库中...
原创
发布博客 2021.04.03 ·
118 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

mysql名词解释

名词解释回表基于非主键索引的查询需要先扫描一遍B+树查询出主键id,然后根据主键再次进行扫描,最终返回查询出的数据覆盖索引在搜索的叶子节点中如果能获取到查询的所有列数据,无需回表的过程称之为索引覆盖最左匹配在一个表中,如果有组合索引,那么组合索引在进行查询的时候,遵循最左匹配,即必须要匹配到第一个列之后,才能匹配第二个列索引下推数据筛选的过程下移到存储引擎层来完成,而不是在server层完成...
原创
发布博客 2021.04.03 ·
361 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mysql存储引擎对比

名称存储位置数据结构事务全文索引行锁外键索引类型数据文件后缀MyISAM磁盘B+树不支持支持不支持不支持非聚簇frm是表定义文件,ibd是数据文件InnoDB磁盘B+树支持5.6后支持支持支持聚簇frm是表定义文件,myd是数据文件,myi是索引文件memory内存hash...
原创
发布博客 2021.04.03 ·
88 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

如何提高QPS

能用多线程就用多线程增加连接数(mysql/redis/tomcat)服务无状态,便于横向扩展让服务能力对等(eureka的url打乱顺序)减少响应时间使用缓存
原创
发布博客 2021.04.03 ·
312 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多