Java学习第八十九部分——“层”(续)
目录
一、前言概述
二、具体介绍
三、总结归纳
一、前言概述
在学习过程中,可以把常见的“层”都列成技术清单(例如通过口诀形式),方便记忆:网络八件套,框架十五宝;表现三剑客,业务两注解;数据五金刚,中间七龙珠;运行四基石,微服务全收。
二、具体介绍
1. 网络八件套
指的是网络通信中常用的八种工具或技术:
-
HttpClient
(发送HTTP请求) -
OkHttp
(轻量HTTP客户端) -
Retrofit
(封装型HTTP客户端) -
WebSocket
(长连接通信) -
Netty
(高性能网络通信) -
Feign
(声明式HTTP客户端) -
RestTemplate
(Spring HTTP客户端) -
gRPC
(高性能RPC框架)
2. 框架十五宝
指的是在软件开发中常用框架或库,是一种概述说法,包括:
-
Spring Core:提供依赖注入和面向切面编程功能,是Spring框架的核心。
-
Spring Boot:简化Spring应用的初始搭建和开发,自动配置Spring和第三方库。
-
Spring MVC:实现基于Java的MVC架构,用于构建Web应用程序。
-
Spring Security:提供认证和授权功能,保护Spring应用的安全。
-
Spring Cloud:基于Spring Boot的一系列框架,用于构建分布式系统和微服务。
-
MyBatis:支持定制化SQL查询,简化Java持久层开发。
-
JPA:Java持久化API,提供对象关系映射和数据库操作的规范。
-
Hibernate:JPA的实现之一,提供对象关系映射和数据持久化功能。
-
Quartz:强大的任务调度框架,用于定时执行任务。
-
Spring Batch:用于批处理应用,支持复杂批处理作业的执行。
-
Spring Data JPA:简化JPA数据访问,提供基于方法名的查询功能。
-
Spring WebFlux:响应式编程框架,支持异步非阻塞的数据流。
-
以及其他的框架,如
Spring Data JPA
、Spring WebFlux
等。
3. 表现三剑客
指前端开发的三大基础技术:
-
HTML:定义页面结构与内容(骨架)
-
CSS:控制样式与布局(皮囊)
-
JavaScript:实现交互逻辑(行为)
定位:三者协同构建用户界面,缺一不可,是Web开发的基石。
4. 业务两注解
指在业务逻辑中用于简化代码的标记式编程工具:
-
事务注解(如
@Transactional
):声明方法需数据库事务支持,自动管理提交/回滚。 -
权限注解(如
@PreAuthorize
):定义接口访问权限,实现细粒度控制。
场景:常见于Spring等框架,通过注解替代硬编码,提升可维护性。
5. 数据五金刚
指数据处理中的关键组件或技术:
-
数据库(MySQL/PostgreSQL)
-
缓存(Redis/Memcached)
-
消息队列(Kafka/RabbitMQ)
-
数据仓库(Hive/BigQuery)
-
实时计算引擎(Flink/Spark Streaming)
作用:覆盖数据存储、流转、分析全链路,支撑高并发与实时性需求。
6. 中间七龙珠
指中间件技术栈或服务治理工具:
-
服务注册发现(Consul/Zookeeper)
-
配置中心(Nacos/Apollo)
-
API网关(Kong/Spring Gateway)
-
链路追踪(Zipkin/SkyWalking)
-
熔断降级(Hystrix/Sentinel)
-
负载均衡(Ribbon/NGINX)
-
分布式事务(Seata)
7. 运行四基石
保障系统稳定运行的底层要素:
-
高可用架构(集群/冗余设计)
-
自动化运维(CI/CD、Kubernetes)
-
监控告警(Prometheus/Grafana)
-
容灾备份(异地多活、快照恢复)
目标:实现系统高SLA(99.99%可用性)与快速故障恢复。
8. 微服务全收
指微服务架构的核心优势,可整合上述所有技术:
-
服务拆分:业务解耦,独立部署。
-
技术异构:不同服务选用合适技术栈(如Python处理AI,Go开发网关)。
-
弹性伸缩:根据负载动态调整资源。
-
统一治理:通过服务网格(如Istio)集中管理通信、安全与监控。
典型框架:Spring Cloud、Dubbo、gRPC。
三、总结归纳
-
底层:网络协议(八件套)、运行基石(四要素)
-
中间层:数据处理(五金刚)、中间件(七龙珠)
-
上层:开发框架(十五宝)、前端(三剑客)、业务注解
-
顶层:微服务整合全栈能力