分布式架构知识体系

全面讲解分布式中间件相关技术,深入解析架构设计各个层面的知识点。

时间1~2天。

第一部分 多姿多彩的Web

服务架构演进

  • 单体服务特点
  • 微服务特点
  • 服务分拆方法
  • 应用主流架构设计

使用软件方式

  • 安装软件
  • PC端浏览器
  • 移动端App

Web 服务

  • HTML5/CSS3
  • Js处理引擎
  • HTTP协议交互信息
  • WebService

第二部分 软件应用开发

并发访问

  • 操作系统进程
  • 线程
  • 虚拟线程

面向对象

  • 操作系统内存管理
  • 面向对象
  • 设计模式

Java语言

  • Java基础
  • JDK
  • Java并发
  • 常见通用库
  • JDK新特性

开发框架

  • Ioc动态注入
  • Spring框架
  • CDI规范

高性能IO

  • 操作系统IO
  • Java IO
  • Netty

数据库访问

  • SQL语言
  • 关系数据库
  • JDBC
  • ORM编程模型

事务

  • 数据可靠和完整性
  • 本地/全局事务

显示层技术

  • 浏览器显示
  • JS MVC框架
  • 经典Web展示
  • 跨平台界面

第三部分 分布式系统

分布式访问

  • 同步访问
  • 异步响应式
  • RPC远程调用
  • 序列化
  • 接口定义

信息获取机制

  • Websocket
  • Graphql

远程对象访问

  • EJB对象模型
  • SOA

分布式框架

  • 响应式访问
  • 响应式Web框架
  • 响应式开发框架 Vertx

微服务

  • 12要素
  • SpringBoot
  • Microprofile

微服务服务治理

  • 服务治理
  • 分布式理论

SpringCloud

  • Config Server
  • Eureka
  • 弹性
  • Gateway

JEE

  • 发展演进过程
  • JavaEE/JakartaEE规范集

应用服务器

  • 服务器产品
  • 集群能力和域
  • Java模块化

消息

  • JMS
  • Kafka
  • 其他消息服务器

缓存

  • 系统缓存
  • 应用嵌入式缓存
  • Redis
  • Java缓存

数据库表处理

  • 数据库表迁移
  • Schema 注册表管理
  • CDC 事件数据捕获
  • 分库分表

安全技术

  • 密码
  • 安全证书
  • 加密传输

Java应用安全

  • Java Security
  • 认证和授权
  • Spring Security
  • Keycloak

系统安全和漏洞防御

  • Linux安全相关
  • 安全漏洞和CVE
  • Web安全开发

服务监控

  • 日志log库
  • 集中日志管理
  • 运维监控系统
  • 分布式跟踪系统

应用网关

  • Nginx
  • API网关路由
  • Spring Gateway
  • K8S Gateway API

微服务度量

  • 度量内容
  • 统计学指标
  • 时间序列
  • 度量方法
  • 度量功能开发

第四部分 操作系统和云原生

Linux操作系统

  • 操作系统OS
  • 开发环境Libc
  • 编译工具Gcc
  • 开发语言
  • LSB目录环境
  • 系统网络层

开发语言综述

  • C和C++
  • 平台 Go,Rust
  • 应用平衡 Java,dotNET
  • 生产力 Python
  • Web应用 Javascript,WebAssembly

容器技术

  • 容器环境
  • 开发镜像包
  • 容器运行时

容器编排管理

  • Kubernetes
  • 发行版Openshift等
  • Operator

云原生开发

  • 云原生设计
  • ServiceMesh
  • Serverless

云原生开发框架

  • GraalVM
  • Quarkus
  • SpringNative

云服务架构设计

  • 公有云服务能力
  • 云原生架构
  • 云计算六大支柱

第五部分 数据、AI和工作流等高级应用开发

应用集成

  • ESB数据集成
  • Batch
  • 数据集成iPaas

工作流

  • BPM
  • Java工作流

数据库和存储

  • 关系数据库
  • NoSQL数据库
  • 对象存储

大数据处理

  • 分布式框架
  • 数据批式处理
  • 数据流式处理
  • 数据虚拟化
  • 数据库迁移复制

商业智能和报表

  • ETL
  • 数据仓库
  • 数据分析
  • 数据可视化

数据应用

  • 数据模型
  • 数据治理

数据科学

  • 数据科学
  • 统计学
  • 机器学习

专家系统

  • 规则引擎
  • 求解器
  • 运筹学

NLP

  • Java搜索,Lucene库
  • Solr,ElasticSearch
  • 自然语言处理 NLP

LLM大语言模型

  • 大语言模型开发
  • OpenAI
  • 提示工程
  • LangChain4j
  • SpringAI
  • QuarkusAI集成

第六部分 Devops和软件研发管理

配置管理

  • Maven构建
  • Git代码管理
  • 工件仓库
  • JIRA缺陷管理

IT服务设施

  • 持续集成 CICD
  • 自动化配置管理
  • 不可变基础设施
  • IT服务管理指标

测试管理

  • 自动化测试,自动化平台
  • 软件测试,TDD测试、压力测试、集成测试

开发架构

  • EDA事件驱动
  • DDD开发方法论

研发管理

  • 需求管理
  • 项目管理
  • 敏捷开发

设计方法

  • UML
  • 代码度量
  • bug缺陷

软件应用管理

  • 应用排错和性能调优
  • 应用分析和迁移工具
  • 快速应用构建,低代码开发