网站首页 > 技术文章 正文
源码分析
常用设计模式
- Proxy代理模式
- Factory工厂模式
- Singleton单例模式
- Delegate委派模式
- Strategy策略模式
- Prototype原型模式
- Template模板模式
Spring5
beans
- 接口实例化
- 代理Bean操作
Context
- Ioc容器设计原理及高级特性
- Aop设计原理
- Factorybean与Beanfactory
Transaction
- 声明式事物底层原理
- Spring事物处理机制
- 事物的传播与监控
- 基于Springjdbc手写Orm框架
Mvc
- Mvc原理介绍
- 与loc容器整合原理
- Handlermapping实现原理
- Handleradapter实现原理
- Viewresolver实现原理
- Controller调用原理
- 动态参数匹配原理
- Springmvcyustruts2对比分析
- 手写实现Springmvc框架
Spring5新特性
- Spring5.X的兼容性
- 分析自带通用日志框架
- 多序列化数据格式绑定API
- 函数式风格的Applicationcontext
- Kotlin表达式的支持
- Webflux模块介绍
- Testing改进
Mybatis
- 代码自动生成器:Generateor
- Mybatis下1对多,多对多嵌套结果、嵌套查询
- 一级缓存、二级缓存使用场景及选择策略
- Mybatis与Spring集成Spring-Mybatis.jar分析
- Spring集成下的SqlSession与Mapper
- Mybatis的事物
- Mybatis动态代理的真正实现
- 手写实现Mybatis1.0到2.0……
分布式架构
分布式架构
构建分布式架构最重要因素
- Cdn加速静态文件访问
- 分布式存储
- 分布式搜索引擎
- 应用分发与监控
- 应用容灾及机房规划
- 系统动态扩容
分布式架构设计
- 主流架构模型-SOA架构和微服务架构
- 领域驱动设计及业务驱动划分
- 分布式架构的基础理论CAP、Base以及其应用
- 什么是分布式架构下的高可用设计
- 分布式架构下的可伸缩设计
- 构建高性能的分布式架构
分布式架构策略-分而治之
分布式通信
- 从网络通信探究分布式通信的原理
- 基于消息方式的系统间通信
- 理解通信协议传输过程中的序列化和反序列化
基于框架的RPC通信技术
- Webservice/Apache Cxf
- RMI/Spring RMI
- Hessian
分布式系统的基石-Zookeeper
- 搭建3个节点的Zookeeper集群
- 深入分析Zookeeper在Disconf配置中心的应用
- 基于Zookeeper的分布式锁解决方案
- Zookeeper Watcher核心机制深入源代码分析
- Zookeeper 集群升级、迁移
- 基于Zookeeper实现分布式服务器动态上下线感知
- 深入分析Zookeeper Zab协议及选举机制源代码
使用Dubbo对单一应用服务器改造
- Dubbo管理中心及监控平台安装部署
- Dubbo分布式服务器模块划分(领域驱动)
- 基于Dubbo的分布式系统架构实战
- Dubbo负载均衡策略分析
- Dubbo服务调试之服务只订阅及服务只注册配置
- Dubbo服务接口的设计原理
- Dubbo设计原理及源代码分析
- 基于Dubbo构建大型分布式电商平台实战雏形
- Dubbo容错机制及高扩展性分析
分布式架构中间件
分布式消息通信
- 消息中间件在分布式框架中的应用
- Activemq高可用集群企业级部署方案
- Activemq P2Peye.com及Pub/Sub模型详解
- Activemq 消息确认及重发策略
- Activemq 基于Spring完成分布式消息队列实战
- Kafka基于Zookeeper搭建高可用集群实战
- Kafka消息处理过程剖析
- Java客户端实现Kafka生产者与消费者实例
- Kafka的副本机制及选举原理剖析
- 基于Kafka实现应用日志实时上报统计分析
- 初步认识Rabbitmq及高可用集群部署
- 详解Rabbitmq消息分发机制及主体消息分发
- Rabbitmq消息路由机制分析
- Rabbitmq消息确认机制
分布式缓存
- 精通Redis的数据结构
- Redis主从复制原理及无磁盘复制分析
- Redis管道模式详解
- Redis缓存与数据库一致性解决方案
- 基于Redis实现分布式锁
- Redis中Aof和Rdb持久化策略原理
- Redis读写分离架构
- Redis哨兵架构及数据丢失问题分析
- Redis Cluster数据分布算法之Hash Slot
- Redis使用常见问题及性能优化
- Redis高可用及高伸缩架构实战
- 缓存击穿、缓存雪崩预防策略
- Redis批量查询优化
- Redis高性能集群之Twemproxy Or Codis
数据存储
- Nosql简介及Mongodb基本概念
- MongoDB支持的数据类型分析
- MongoDB可视化客户端及Java api实践
- 手写基于MongoDB的Orm框架
- MongoDB企业级集群解决方案
- MongoDB聚合、索引及基本执行命令
- MongoDB数据分片、转存及恢复策略
- Mysql主从复制及读写分离
- Mysql+Keepalived实战双主高可用方案实践
- Mysql高性能解决方案之分库分表
- 数据库中间件初始Mycat
- 基于Mycat实现mysql数据库读写分离
- 基于Mycat实战之数据库切分策略剖析
- Mycat全局表、Er表、分片策略分析
后台服务
- 基于Openresty部署应用层Nginx及Nginx+Lua实践
- Nginx反向代理服务器及负载均衡服务器配置实战
- 利用Keepalived+Nginx实践Nginx高可用方案
- 基于Nginx实现访问控制、连接限制
- Nginx动静分离实战
- Nginx Location、Rewrite等语法配置及原理分析
- Nginx提供Https服务
- 基于Nginx+Lua完成访问流量是实时上报Kafka实战
高性能Nio框架
- IO的基本概念,Nio、Aio、Bio深入分析
- Nio的核心设计思想
- Netty产生的背景及应用场景分析
- 基于Netty实现高性能Im聊天
- 基于Netty实现dubbo多协议通信支持
- Netty无锁化串行设计及高并发处理机制
- 手写实现多协议Rpc框架
分布式解决方案
- 分布式全局id生成方案
- Session跨域共享及企业级单点登录解决方案实战
- 分布式事务解决方案实战
- 高并发下的服务降级、限流
- 基于分布式架构下分布式锁的解决方案
- 分布式架构下实现分布式定时调度
微服务架构
微框架
- Springboot与微服务之间的关系
- Springboot热部署
- 核心组件之Starter、Actuator、Auto-configuration、Cli
- Springboot集成Mybatis实现多数据源路由实战
- Springboot集成Dubbo
- Springboot集成Redis缓存
- Springboot集成Swagger2构建Api管理及测试体系
- Springboot实现多环境配置动态解析
Springcloud
- Eureka注册中心
- Ribbon集成Rest实现负载均衡
- Fegion声明式服务调用
- Hystrix服务熔断降级方式
- Zuul实现微服务网关
- Config分布式统一配置中心
- Sleuth调用链路跟踪
- Bus消息总线
- 基于Hystrix实现接口降级
- Springboot集成Springcloud实现统一整合方案
Docker虚拟化
- 了解Docker的镜像、仓库、容器
- Dockerfile构建Lnmp环境部署个人博客Wordpress
- Docker Compose构建Lnmp环境部署个人博客WordPress
- Docker网络组成、路由互联、Openvswitch
- 基于Swarm构建Docker集群
- Kubermetes
并发编程
- Java内存模型(JMM)
- 内存模型(重排序、顺序一致性、Happens-Before、As-if-Searial)
- Synchronized(同步、重量级锁;实现原理;锁优化:自旋锁、轻量级锁、重量级锁、偏向锁)
- Volatile(实现机制、内存语义、内存模型)
- Dcl(单例模式、Dcl、解决方案)
- Aqs(AbstractQueuedSynchronizer同步器、Clh同步队列、同步状态的获取和释放、线程阻塞和唤醒)
- Cas(Compare And Swap与缺陷)
- 锁(Reentrantlock、Reentrantreadwritelock、Condition)
- 并发工具类(Cyclicbarries、Countdownlatch、Semphore)
- 原子操作(基础类型的、数组的、引用类型的)
- 线程池(Executor、Threadpoolexecutor、Callable、Future、Scheduledexecutorservice)
- 其他(ThreadLocal、Fork/Join)
性能优化
- 理解性能优化(性能基准、优化什么、衡量维度)
- Jvm调优(运行时数据区、内存模型Jmm、垃圾回收使用场景、Gc日志、Mat分析Dump文件)
- Tomcat调优(运行机制及框架、线程模型、系统参数及调优、基准测试)
- Mysql调优(B+tree机制、sql执行计划、索引优化、sql语句优化)
团队协作
Maven
- 生成可执行jar,理解scope生成最精确的jar
- 解决冲突、包依赖NoClassFoundError问题
- 全面理解Maven的LifeCycle/Phase/Goal
- 架构师必备之一maven生成Archetype
- Maven流行插件、手写自己的插件
- Nexus使用、上传、配置
- 对比Grande
Jenkins
- 持续集成,一次build解决所有手动工作
Sonar
- 减少人为疏漏、静态代码检查,让你的代码更健壮
git
- git工作原理
- git常用命令
- git冲突解决
- git flow规范使用
电商项目实战
用户认证系统
- SSO单点登录
- 第三方登录
- 用户权限
搜索模块(大数据)
- 分布式环境配置
- Hadoop基本使用
- Elasticsearch环境搭建
- Elasticsearch api使用
- 动静分离
订单系统
- 订单号统一生成
- 未登录下购物车同步
支付系统
- 优惠券支付
- 积分支付
- 三方支付
数据统计分析
- 用户行为分析
- 行业分析
- 区域分析
通知推送系统
- 融云推送
- 消息中间件
聊天系统
- 用户群聊
- 点对点聊天
- 文件断点续传
猜你喜欢
- 2024-10-02 Maven 的这 7 个问题你思考过没有?
- 2024-10-02 220、Class.forName 和 ClassLoader 有什么区别?
- 2024-10-02 原型模式(Prototype)(原型模式和工厂模式区别)
- 2024-10-02 Alluxio使用贴士:客户端显示找不到FileSystem类问题分析与解决
- 2024-10-02 异常还不知道是什么?一文教会你异常是什么,如何优雅处理
- 2024-10-02 十年架构师干货总结:Java 的类加载机制
- 2024-10-02 线上故障排查全套路盘点,运维大哥请自查
- 2024-10-02 一文读懂 Java 异常处理(java异常处理的方法)
- 2024-10-02 反射必杀技:深入了解Class类,让你一通百通
- 2024-10-02 Java异常的面试问题及答案-Part 2
- 1509℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 530℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 493℃MySQL service启动脚本浅析(r12笔记第59天)
- 473℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 470℃启用MySQL查询缓存(mysql8.0查询缓存)
- 451℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 430℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 427℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)