更新时间:2020-06-22 11:41:11 来源:极悦 浏览2062次
架构师,是一个既需要掌控整体又要洞悉局部瓶颈,并依据具体的业务场景给出解决方案的团队领导型人物,他需要参与项目开发的全部过程,包括需求分析、架构设计、系统实现、集成、测试和部署各个阶段,负责在整个项目中对技术活动和技术说明进行指导和协调。
架构师职责简单来说有三点:
1、确认需求与拆分系统
在项目开发过程中,架构师需要依据用户需求,将完整的系统拆分为子系统和组件,形成不同的逻辑层或服务,确定各层的接口、层与层相互之间的关系,对整个系统分层进行“纵向”分解,对同一逻辑层分块进行“横向”分解。
2、技术选型
通过对系统的一系列的分解,最终形成了软件的整体架构,依据整体架构需要进行技术选型。
3、制作技术规格说明
在整个研发过程中始终保持与开发人员保持沟通,以保证开发者依照原定的架构意图去实现各项功能。
架构师必知必会技术
架构师除了能撸一手高质量代码,至少精通1-2门技术,还要具备足够的技术广度,从软件到硬件、开发到测试、运维到安全等等,都要面面俱到去了解掌握。当然了,人的精力是有限的,我们不可能做到每个领域都去深入,但至少需要知道其概念、运行原理、如何运用等。
架构师必知必会技术范围大致如下:
1)集合框架(源码)
List、ArrayList、LinkedList、Set:HashSet、TreeSet、Map:TreeMap、ConcurrentHashMap、Collection的synchronized等方法
2)、工具类
Google guava(推荐)、Apache common lang/BeanUtils/Collctions/IO
JSON、fastjson、gson、jackson
3)框架
:IOC、AOP、常用注解、SpringMVC、Mybatis、Shiro、Netty
4)安全
单项散列算法:MD5、SHA、对称加密:DES、非对称加密:RSA、HTTPS
5)JVM
Java虚拟机(Hotspot实现)、类加载机制、内存模型
GC:回收算法、垃圾收集器。调优、工具:jstack、jmap、jconsole
6)并发编程
Executor框架、Fork/join、happen-before、数据结构:ConcurrentHashMap、线程池:参数设置、原理、拒绝策略
线程状态、Lock/synchronized、原子操作类
并发工具类:CountDownLatch、Semaphore、CyclicBarrier、Exchanger
IO、BIO、AIO、NIO
7)数据
NoSQL:MongoDB
分布式缓存:Memcached、Redis(推荐)
关系数据库、MySQL、引擎、InnoDB(支持事务)、分库分表、Cobar、Mycat
8)SQL优化
索引、主键索引、组合索引、explain、存储过程、SQL注入:使用#而不使用$
9)事务隔离级别(ACID)
原子性、一致性、隔离性、持久性
10)锁
表锁、行锁、悲观锁
11)大数据
Hadoop、Hbase、Spark、ES(ElasticSearch)、Storm/JStorm
12)算法与数据结构
数组、链表、栈、队列、树、二叉树、B Tree/B+Tree、红黑树、哈希
13)分布式系统
从集中到分布式
分布式Session:Session复制、Session绑定、Session服务器(靠谱)
分布式缓存:Redis、一致性Hash算法
数据库:读写分离、主从热备、分库分表、一致性
分布式事务、CAP、BASE、2PC/3PC
分布式锁、Redisson
负载均衡、硬件、F5、软件、LVS、Nginx
消息队列:RabbitMQ、ZeroMQ、ActiveMQ、Kafka(推荐)
服务化:服务注册与发现、Zookeeper
架构、微服务、、Dubbo、RPC、SOA、虚拟化、Docker
以上就是极悦java培训机构的小编针对“Java架构师学习路线图,架构指南”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习