首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
学习
订阅
潘铭Michael
更多收藏集
微信扫码分享
微信
新浪微博
QQ
17篇文章 · 0订阅
MyBatis源码阅读指南
概要:前言整体架构学习重点学习路径总结前言在MyBatis3.5.1这个版中有968个类、2770个字段、8422个方法、42504行代码、186428个指令码。其源码体量只有Spring的1/5,也
Synchronized解析——如果你愿意一层一层剥开我的心
synchronized,是解决并发情况下数据同步访问问题的一把利刃。那么synchronized的底层原理是什么呢?下面我们来一层一层剥开它的心,就像剥洋葱一样,看个究竟。 接下来,我们先剥开synchronized的第一层,反编译其作用的代码块以及方法。 由图可得,添加了s…
后端必备 Nginx 配置
概要防盗链根据文件类型设置过期时间静态资源访问日志配置日志字段说明access_log访问日志error_log日志日志切割反向代理禁止指定user_agentnginx访问控制负载均衡防盗链根据文件
代码整洁 vs 代码肮脏
写出整洁的代码,是每个程序员的追求。《clean code》指出,要想写出好的代码,首先得知道什么是肮脏代码、什么是整洁代码;然后通过大量的刻意练习,才能真正写出整洁的代码。 WTF/min是衡量代码质量的唯一标准,Uncle Bob在书中称糟糕的代码为沼泽(wading),这…
Spring源码系列:Spring的启动过程
Spring对于程序员说来说都不陌生;作为一个强大的开源技术,帮助我们能够更好的进行项目的开发与维护。 直接进入主题吧。Spring的启动过程实际上就是Ioc容器初始化以及载入Bean的过程;本文主要是学习记录下前半部分(Ioc容器的初始化),新手上路,如有错误,请指正! 在一…
谈谈服务降级的设计与实现
当整服务整体超出预设的上限阙值或即将到来的流量预计会超过预设阙值时,为了保证重要或基本的服务能正常运行,拒绝部分请求或者将一些不重要或不紧急的服务或任务进行服务的延迟使用或暂停使用。 降级更多是作为限流。 避免系统雪崩和服务宕机。 保证核心服务可用,非核心服务弱可用,甚至不可用…
Java程序员必备基础图
最近看了深入理解Java虚拟机第三版,整理了一些基础结构图,算是比较全的了,做一下笔记,大家一起学习。 JVM内存结构是Java程序员必须掌握的基础。 它是线程私有的。 线程私有的,生命周期与线程相同。 每个方法被执行的时候都会创建一个"栈帧",用于存储局部变量表(包括参数)、…
【Java 高手经验】我的 Java 问题排查工具单
前言 平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出自己日常觉得帮助很大的工具,大家一起进步。
使用TiDB把自己写分库分表方案推翻了
在日益数据量增长的情况下,影响数据库的读写性能,我们一般会有分库分表的方案和使用newSql方案,newSql如TIDB。那么为什么需要使用TiDB呢?有什么情况下才用TiDB呢?解决传统分库分表的什么问题呢?还会解释一些关键点和踩坑点。下面我会用比较白话的形式解读,当做对Ti…
记一次愚蠢的经历--String不可变性
我这边有一个系统,提供一个RPC接口去发送短信。外部调用我的接口需要传入手机号等等参数,我这边负责解析这些参数、做一些业务的处理,然后调用短信渠道商的接口发送短信。 每当调用完短信渠道商的接口时,我会对这次发送的记录入库(存入MySQL中),同样地短信渠道商会返回发送或失败的回…