网站首页 > java教程 正文
Java语言相关
知识点:Java的类加载机制、JVM内存模型和结构,GC原理,性能调优、泛型、集合体系、异常体系、IO体系、多线程编程、反射、Servlet、锁以及并发容器的源码、线程池源码、正则表达式
常用工具: jps、jstat、jmap、jstack、图形工具jConsole、Visual VM、MAT
书籍:《Java编程思想》、《Effective Java》、《深入理解Java虚拟机》
http、https、网络
脚本语言
常用的linux操作和运维命令、管道、重定向、awk、sed等文本处理工具
《linux与unix shell编程指南》、《鸟哥的Linux私房菜》、《Python编程 从入门到实践》
设计原则和设计模式
- 单例模式
- 策略模式
- 代理模式
- 观察者模式
- 装饰模式
- 适配器模式
- 组合模式
- 工厂模式
- 模板方法模式
- ...
- 单一职责原则
- 里氏替换原则
- 依赖倒置原则
- 接口隔离原则
- 迪米特法则
- 开闭原则
- 组合/聚合复用原则
- 七大设计原则
- 一些常用的设计模式
SQL、事务、datasource
DDL和DML、表连接(内连接,左外连接,右外连接,全连接)、函数(普通函数,聚合函数)、索引、分区。
- Read uncommitted:读未提交
- Read committed : 读已提交
- Repeatable read:可重复读
- Serializable :串行化
深入理解mysql的Record Locks、Gap Locks、Next-Key Locks
undo redo binlog
数据库的分库分表mycat
c3p0,druid,JdbcTemplate执行sql语句的过程中对Connection的使用和管理
《高性能MySQL》、《Hive编程指南》、《Oracle从入门到精通》
ORM框架: mybatis、Hibernate
最原始的jdbc->Spring的JdbcTemplate->hibernate->JPA->SpringDataJPA的演进之路
SpringSecurity、shiro、SSO(单点登录)
Session和Cookie的区别和联系以及Session的实现原理
SpringSecurity的认证过程以及与Session的关系
CAS实现SSO
ELK日志实时处理查询系统
Elasticsearch、Logstash、Kibana
日志
logging、log4j、log4j2、logback;commons-logging、slf4j;
web服务器tomcat、ngnix的设计原理
消息队列kafka、RocketMQ、Notify、Hermes
NIO模块以及对应的Netty和Mina、thrift源码
序列化和反序列化框架
- Avro研究
- Thrift研究
- Protobuf研究
- Protostuff研究
- Hessian
RPC框架dubbo源码
SpringAOP源码
Spring Cloud、微服务
Spring Cloud Zookeeper:用于服务注册和发现
Spring Cloud Config:分布式配置
Spring Cloud Netflix Eureka:用于rest服务的注册和发现
Spring Cloud Netflix Hystrix:服务的隔离、熔断和降级
Spring Cloud Netflix Zuul:动态路由,API Gateway
SOA与微服务
服务的合并部署、多版本自动快速切换和回滚
服务的治理:限流、降级
服务限流:令牌桶、漏桶
服务降级、服务的熔断、服务的隔离:netflix的hystrix组件
无状态的服务如何做线性扩展:
如一般的web应用,直接使用硬件或者软件做负载均衡,简单的轮训机制
有状态服务如何做线性扩展:
如Redis的扩展:一致性hash,迁移工具
分布式事务
JTA分布式事务接口定义,对此与Spring事务体系的整合
TCC分布式事务概念
TccCompensableAspect切面拦截创建ROOT事务
TccTransactionContextAspect切面使远程RPC调用资源加入到上述事务中,作为一个参与者
TccCompensableAspect切面根据远程RPC传递的TransactionContext的标记创建出分支事务
JTA事务管理实现,类比Jotm、Atomikos等JTA实现
事务的存储和恢复,集群是否共享问题调用方创建CompensableTransaction事务,并加入资源
CompensableMethodInterceptor拦截器向spring事务注入CompensableInvocation资源
一致性算法
raft
ZooKeeper使用的ZAB协议
paxos
分布式系统
- Quartz,基于数据库锁的抢占式分布式定时器
- 基于数据库
- 基于缓存
- 基于zookeeper
- 一致性理论
- 分布式事务解决方案
- 一致性模型
- CAP定理
- BASE 理论
- 强一致性
- 弱一致性
- 最终一致性
- eBay 事件队列方案
- TCC (Try-Confirm-Cancel)补偿模式
- 缓存数据最终一致性
- 强一致性(两段提交和三段提交模型, Paxos或者Raft算法)
- 最终一致性
- SOA
- 微服务
- Servless
- 分布式系统架构设计
- 分布式事务
- 分布式锁
- 分布式定时器
key-value存储系统
redis/memcache
redis配置策略(持久化策略,替换算法等)
redis的部署模式(standalone单机,sentinel哨兵,cluster集群),哨兵的本质是主从切换,cluster是真正的分布式部署可以线性扩展内存资源
redis支持的数据结构
分布式session存储,数据缓存,分布式锁,简单的消息队列,计数器(累加器)
猜你喜欢
- 2024-10-10 架构师必须搞懂DNS,一篇文章 就够了
- 2024-10-10 Spring Boot 最核心的 25 个注解,都是干货!
- 2024-10-10 别再面向 for 循环编程了,JDK 自带的观察者模式就很香
- 2024-10-10 Spring Cloud 如何动态刷新 Git 仓库配置?
- 2024-10-10 公司来了个新同事不会用 Lombok,还说我代码有问题
- 2024-10-10 Spring Boot 怎么打一个可执行 Jar 包?
- 2024-10-10 你必须了解Spring的生态(spring 生态)
- 2024-10-10 Java技术栈ppt分享:大数据+架构篇+算法篇(阿里巴巴内部资料)
- 2024-10-10 腾讯牛逼!终于开源了自家的 JDK——Kona
- 2024-10-10 Spring Boot Redis 实现分布式锁,真香
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)