Spring框架及Spring Cloud框架主要组件概括
Spring是Java领域的主流技术框架集合,包含众多项目:
- Spring顶级项目:
- Spring IO platform:用于系统部署,是可集成的现代化应用版本平台,在使用maven dependency引入spring jar包时发挥作用。
- Spring Boot:简化产品级Spring应用和服务创建,简化配置文件,用嵌入式web服务器,含开箱即用微服务功能,可与spring cloud联合部署。
- Spring Framework:即通常说的spring框架,开源的Java/Java EE全功能栈应用程序框架,其他spring项目如spring boot依赖于此。
- Spring Cloud:微服务工具包,提供分布式系统的配置管理、服务发现、断路器、智能路由等开发工具包。
- Spring XD:运行时环境(服务器软件,非开发框架),组合spring技术采集和处理大数据。
- Spring Data:数据访问及操作工具包,封装多种数据及数据库访问技术。
- Spring Batch:批处理框架,具备任务调度、日志记录/跟踪等功能。
- Spring Security:为基于Spring的企业应用提供声明式安全访问控制解决方案。
- Spring Integration:面向企业应用集成的编程框架,支持多种通信方式。
- Spring Social:连接社交服务API的工具包,可连接如Twitter、Facebook等。
- Spring AMQP:消息队列操作工具包,主要封装RabbitMQ操作。
- Spring HATEOAS:支持实现超文本驱动的REST Web服务的开发库。
- Spring Mobile:Spring MVC的扩展,简化手机上Web应用开发。
- Spring for Android:Spring框架扩展,简化Android本地应用开发,提供RestTemplate访问Rest服务。
- Spring Web Flow:管理Web应用页面流程,将页面跳转流程单独管理并可配置。
- Spring LDAP:操作LDAP的Java工具包,基于Spring的JdbcTemplate模式简化LDAP访问。
- Spring Session:session管理工具包,可将session保存到redis等进行集群化管理。
- Spring Web Services:基于Spring的Web服务框架,提供SOAP服务开发,支持多种方式创建Web服务。
- Spring Shell:提供交互式Shell,可用简单Spring编程模型开发命令。
- Spring Roo:Spring开发辅助工具,用命令行生成自动化项目。
- Spring Scala:为Scala语言编程提供spring框架封装。
- Spring BlazeDS Integration:开发RIA工具包,可集成Adobe Flex、BlazeDS、Spring及Java技术创建RIA。
- Spring Loaded:实现java程序和web应用热部署的开源工具。
- Spring REST Shell:调用Rest服务的命令行工具。
目前Spring主要聚焦于Spring Boot(用于开发微服务)和Spring Cloud相关框架开发,Spring Cloud子项目包括:
- Spring Cloud Config:配置管理开发工具包,支持将配置放远程服务器,支持本地存储、Git及Subversion。
- Spring Cloud Bus:事件、消息总线,在集群中传播状态变化,可与Spring Cloud Config联合实现热部署。
- Spring Cloud Netflix:针对多种Netflix组件的开发工具包,含Eureka、Hystrix、Zuul、Archaius等。
- Netflix Eureka:云端负载均衡,基于REST服务,用于定位服务,实现负载均衡和故障转移。
- Netflix Hystrix:容错管理工具,控制服务和第三方库节点,增强容错能力。
- Netflix Zuul:边缘服务工具,提供动态路由、监控等功能。
- Netflix Archaius:配置管理API,含系列配置管理API,提供多种功能。
- Spring Cloud for Cloud Foundry:通过Oauth2协议绑定服务到CloudFoundry(开源PaaS云平台)。
- Spring Cloud Sleuth:日志收集工具包,封装Dapper、Zipkin和HTrace操作。
- Spring Cloud Data Flow:大数据操作工具,通过命令行操作数据流。
- Spring Cloud Security:安全工具包,为应用添加OAuth2安全控制。
- Spring Cloud Consul:封装Consul操作,Consul是服务发现与配置工具,可与Docker容器无缝集成。
- Spring Cloud Zookeeper:操作Zookeeper的工具包,用于服务注册和发现。
- Spring Cloud Stream:数据流操作开发包,封装与Redis、Rabbit、Kafka等发送接收消息操作。
- Spring Cloud CLI:基于Spring Boot CLI,可命令行快速建立云组件。
评论