做 Java 架构师是很多程序员的终极目标,他们都立志成为Java 架构师,毕竟架构师的待遇不是一般的好,所以现在有很多人也会往java架构师的路上靠,那么java架构师需要学什么?今天我们就来给大家讲解一下这方面的内容。
1、JVM:多线程与并发、GC(GC收集器类型、算法、分区)、IO类型(同步阻塞、同步非阻塞、基于信号、多路复用、异步IO)、类加载(双亲委派、OSGI)。
2、设计和架构:设计模式、架构方法论、设计案例、UML。
3、数据结构和算法:搜索(二分)、排序(选择、冒泡、插入、快递、归并、堆、桶排序、基数)、高级算法(贪婪、回溯、剪枝、动态规划)、大数据算法(hash分桶、统计)。
4、中间件:数据库(mysql、oracle、db2)、缓存(Redis、mencache、tair)、消息队列(JMS、Kafka、RocketMQ、RabbitMQ、ActiveMQ)。
5、分布式:负载均衡、水平伸缩、集群、分片、异步、消峰、分库分表、锁(悲观锁、乐观锁、行级锁、分布式锁、分区排队)、一致性(一致性算法、一致性原理)。
6、SSHa:Spring(AOP、IOC、Spring MVC、Spring Boot、yaml)、Hlbernate、Struts。
性能优化:分层优化(系统级别、中间件级别、JMV级别、代码级别)、分段优化(前端、后端、资源)。
java架构师平时会干什么?
1、开会,开需求会,开设计评审会等。大概会占到平时工作的30%到50%。
2、如果不是资深架构或技术总监,那么未必会设计一套全新的架构,往往是在现有基础上改进,比如做扩容,分库分表,上新的日志监控系统。这方面,架构师往往会做个案例,比如在一台linux上搭个日志系统,把步骤写清楚,让开发依样画葫芦。对于资深架构而言,可能得重头开始设计,或者作出调整技术组件等的决定,这一般也先在部分系统或部分机器上做试验。
3、解决技术问题。这些问题未必是架构级别的,但只要是高级开发解决不了的问题,架构一般都得上,谁让架构是大牛呢?如果是架构组件方的问题,比如配置或部署方面的问题,架构师更得上。
4、但最重要的是学习,比如想,当前流量是2000每秒,到了5000时我该怎么办?然后再找些机器搭些组件来实验一下。
如果你做到java架构师的职位的话,那么平时肯定会很忙,当然你要想成为架构师,就要多学习,积累自己的专业的技术知识,并且也需要提高自己在职场中的管理能力哦,最后大家如果想要了解更多java架构师知识,敬请关注奇Q工具网。
推荐阅读: