内容简述:
1-微服架构
2-SpringBoot由来
3-SpringBoot概述
4-第一个SpringBoot应用程序
一:微服架构
1、名词解释
单机架构:系统业务量小,所有的代码都放在一个项目中,部署在一台服务器上。
整个项目所有的服务都由这台服务器提供。
集群架构:单机处理到达瓶颈把单机复制几份构成集群。集群中每台服务器就叫做这个集群的一个“节点”,所有节点构成了一个集群。每个节点都提供相同的服务,这样系统处理能力就成倍提升。
问题:用户的请求由哪个节点处理?
我们能想到的是:此时此刻负载较小的节点来处理,平衡节点压力。
解决方案:中间件(负载均衡服务器)
在访问节点前增加一个调度者角色,用户所有的请求都先交给它,然后它根据当前节点负载情况,决定将这个请求交给哪个节点处理
以上2种架构共同问题:
1:修改一处、处处修改
2:业务量的不断增大,维护、分工合作难度大
2、微服架构
分布式微服架构:通俗的讲是将一个完整系统按照业务功能拆分成一个个独立的子系统.
在分布式结构中,每个子系统就被称为“服务”
3、微服架构设计思路
二:SpringBoot由来
企业级项目大、配置、部署繁琐、开发效率低、版本控制集成难度大
三:SpringBoot概述
网址: https://spring.io/projects/spring-boot
概念:Spring Boot是简化Spring应用开发,约定优于配置(内置习惯配置,不需手动配置),去繁从简的一个快速构建准生产环境基于spring环境项目的框架,是J2EE一站式解决方案。本质是:整合市面上大部分流行技术框架。
优点:
1. 快速构建项目
2. 对主流开发框架的零配置的无缝集成
3. 项目独立运行,内嵌Servlet容器(tomcat)
4. 提供运行时应用监控。如指标,健康检查和外部配置
5. 开发、部署效率高
四:第一个SpringBoot应用程序
1、统一环境
–jdk1.8:Spring Boot 推荐jdk1.7及以上;java version "1.8.0_20"
–maven3.x:maven 3.3以上版本;Apache Maven 3.3.9
–IntelliJIDEA2017:IntelliJ IDEA 2017.3.2 x64
–SpringBoot 2.0.8:2.0.8
2、Maven配置
maven设置中的settings.xml:
第一处:
<localRepository>E:/itsoft/maven/MavenLocalRepository/repository</localRepository>
第二处:
<!--从阿里云下载-->
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
第三处:
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
备注:确定maven环境设置正确能正常使用
3、IDEA配置
让IDEA使用咱们自己配置的Maven环境,具体设置如下:
4、Spring Boot之HelloWord1
a.创建Maven工程
b.导入依赖
<!-- Inherit defaults from Spring Boot -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.8.RELEASE</version>
</parent>
<!-- Add typical dependencies for a web application -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
c.创建主程序,启动应用
@SpringBootApplication//标识这是一个Spring Boot应用
publicclassHelloApplication{
publicstaticvoidmain(String[]args) {
//将spring应用启动起来
SpringApplication.run(HelloApplication.class,args); }}
d.创建Controller、Service等其它结构代码
@Controller
publicclassHelloController{
@RequestMapping("/hello")
@ResponseBody
publicStringsayHello(){
return"Hello I Love Spring Boot"; }}
e.运行主程序测试,也可打包成JAR运行
f、Spring Boot之HelloWord2
使用Spring Initializer快速构建Spring Boot项目
网友评论