1. 什么是SpringBoot
- Spring是如何简化java开发的?
- 基于POJO的轻量级和最小侵入性编程
- 通过IOC,因爱注入(DI)和面向接口实现轻松耦合
- 基于切面(AOP)和惯例进行声明式编程
- 通过切面和模板减少样式代码
- SpringBoot介绍:
- SpringBoot本身并不提供Spring框架的核心特性以及扩展功能。只是用于快速、敏捷地开发新一代基于Spring框架地应用程序。
- SpringBoot以约定大于配置的核心思想,默认帮我们进行了很多设置
- 集成了大量常用的第三方库配置(Redis、MongoDB、Jpa、RabbitMQ、Quartz等),SpringBoot中这些第三方库几乎可以零配置的开箱使用即可
- 不是新框架,SpringBoot整合了所有框架
- SpringBoot的主要优点:
- 为所有Spring开发者更快的入门
- 开箱即用,提供各种默认配置来简化项目配置
- 内嵌式容器简化Web项目
- 没有冗余代码生成和XML配置的要求
2. 什么是微服务架构
- 单体应用架构:(all in one)
- 将一个应用中的所有应用服务都封装在一个应用中
- 无论是ERP、CRM或是其他什么系统,都吧数据库访问,web访问等等,各个功能放到一个war包内
- 好处是:易于开发和测试;十分方便;当需要扩展使,只需要将wai复制多份,然后放到多个服务器上,再做个负载均衡就可以了
- 缺点:
- 哪怕是要修改一个很小的地方,都需要停掉整个服务,重新打包、部署这个应用war包。
- 特别是对于一个大型应用,我们不可能把所有的内容都放到一个应用里,我们如何维护、如何分工合作都是一个问题
- 微服务架构
- 打破all in one的架构方式,把每个功能元素独立出来,把独立出来的功能元素的动态组合,需要的功能元素才去组合,
- 需要多一些时可以整合多个元素。所以微服务架构是对功能元素进行复制,而没有对整个应用进行复制
- 优点:
- 节省了调用资源
- 每个功能元素的服务都是一个可替换的、可独立升级的软件代码
- 高内聚,低耦合
http://www.cnblogs.com/liuning8023/p/4493156.html
- 缺点:
- 给部署和运维带来了很大的难度
第一个Springboot程序
- 直接输入https://start.spring.io/跳转到Initialzr界面
然后就会下载一个demo.zip文件(自动下载完成)