手记

架构师成长进阶方式

2019-12-09 22:11:456876浏览

龙虾三少

4实战 · 7手记 · 5推荐

一、基础能力

  1. 语言能力

java:生态最好的互联网语言,框架丰富,成熟,实现度高

php:最容易上手的简单互联网语言

nodejs:异步机制理解语言

go:后来居上的最流行的互联网语言

.net:不建议学习

  1. 数据结构和算法

数据结构:存储数据的方法

算法:操作数据的方法

常用数据结构:数组,链表,map,队列,堆,栈等

算法:查找算法,排序算法

  1. 操作系统能力

linux:centos,ubuntu(docker原生),redhat等

windows/mac

  1. 网络知识能力

osi 七层/四层模型:了解每层的作用和存在的意义

tcp/ip协议:理解拥塞窗口协商发送能力

http协议:理解文本头的各字段意义


二、框架能力(java方向)

  1. 类库

fastjson,httpclient,google guava等

  1. 框架

spring全家桶,重点:

spring core(依赖注入DI,控制反转IOC,面向切换编程AOP)

spring mvc (controller,service,dao/repository, model,web编程必备)

spring cloud(微服务)

dubbo框架(rpc入门)


三、中间件能力

  1. 关系型数据库

mysql,oracle:了解基本的sql语句,复杂的sql语句(业务系统不常用,统计系统常用),索引查询等能力

主键查询 千万条记录  1-10ms

唯一索引 千万条记录 10-100ms

非唯一索引 千万条记录 100-1000ms

无索引 百万条记录 1000ms+

  1. 非关系型数据库

mongodb,hbase

  1. 缓存

memcache(不建议学习),redis,guava cache,nginx proxy cache

多级缓存在秒杀项目中的应用

https://coding.imooc.com/class/338.html

  1. 异步消息

rocketmq,rabbitmq,kafka

解决异步事务的处理问题

  1. web服务器

nginx,tomcat,apache,iis

  1. 调度中心

quartz:内存定时器,文件定时器,数据库定时器(可做分布式使用)

elastic-job:分布式调度中心

  1. 配置中心

zookeeper:配置集中式管理,变更通知

  1. 二进制存储

基于posix语义:NAS,NFS等

基于kv语义:hadoop hdfs,外部存储云(阿里云oss等)

  1. 限流器

基于令牌桶算法的实现

guava ratelimiter(单机限流)

阿里sentinel(单机or集群限流)

  1. 熔断器

failover快速失败,hystrix

  1. 队列器

支付宝zqueue

  1. 搜索引擎

ElasticSearch solr

https://coding.imooc.com/class/391.html

  1. 数据同步

canal:基于mysql binlog的同步

datax:阿里自研的可以配置多种src和target数据源


四、设计模式

系统设计模式:服务治理,同步or异步

业务设计模式:工厂,单例,责任链等


五、全栈技术

  1. 1.前端初级

html,css,js,jquery

  1. 2.前端高级

webpack,vue,angular,react js

  1. 3.移动端

ios,android,react native, flutter

  1. 4.大数据

hadoop,hdfs,hive,spark,hbase


六、进阶方式

what-这个技术是什么:官方定义,对比同类型技术优劣点,此技术架构组成

why-为什么要有这个技术:此技术解决什么问题,如果自己要解决这个问题会怎么做

how-如何学习这个技术:官网文档,技术文档,源码学习,项目实践,分享

···································

欢迎关注课程:

《ElasticSearch+Spark 构建高相关性搜索服务&千人千面推荐系统》

《Java电商秒杀系统深度优化 从容应对亿级流量挑战》


15人推荐
随时随地看视频
慕课网APP

热门评论

调度中心,xxl-job怎么样

nice

查看全部评论