早就听说过很流行的微服务框架,但一直知不道那是个什么东东,今天咱就一探究竟。
微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台,使部署、管理和服务功能交付变得更加简单。
所谓的微服务是SOA架构下的最终产物,该架构的设计目标是为了肢解业务,使得服务能够独立运行。微服务设计原则:1、各司其职 2、服务高可用和可扩展性
Spring Boot 诞生时,正处于微服务概念在慢慢酝酿中,Spring Boot 的研发融合了微服务架构的理念,实现了在 Java 领域内微服务架构落地的技术支撑。
Spring Boot 基于 Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序。
说了这么多,到底 Spring Boot 能干啥?
1、微服务:使用Spring Boot可以生成独立的微服务功能单元;
2、自动化配置:针对很多Spring应用程序常见的应用功能,Spring Boot能自动提供相关配置;
3、依赖:告诉Spring Boot需要什么功能,它就能引入需要的库;
4、命令行界面:这是Spring Boot的可选特性,借此你只需写代码就能完成完整的应用程序,无需传统项目构建。
好了,进入正题,本文介绍如何创建、部署一个 spring boot 示例项目,并部署在服务器上。
一、首先在 ubuntu 服务器 安装java环境
sudo apt install openjdk-8-jdk
安装jdk8,如是安装了错误版本,卸载参考:https://blog.csdn.net/cui_shuang_xi/article/details/72867154
sudo update-alternatives --config java
显示 java 的安装路径,如下:
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nothing to configure.
接下来配置环境变量:
sudo nano /etc/environment
打开环境变量配置文件 ,并添加以下内容:(路径是上面的红色部分,每个人的不一样)
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java"
source /etc/environment
加载文件
echo $JAVA_HOME
检查是否生效。至此,前期服务端的准备工作结束了。
二、创建 Springboot 项目
写在前面,创建 Springboot 有多种方式,以 Spring Initializr 方式介绍。
打开网站,构建自己的工程:https://start.spring.io/
下载工程,使用 【eclipse】导入,注意:导入为 maven 工程,等待下载依赖包,过程比较漫长,耐心。
1、创建启动器
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloWord {
@RequestMapping("/hello")
@ResponseBody
public Object hello(HttpServletRequest request) {
return "hello";
}
}
2、创建启动器
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3、运行,可以看到 控制台 运行无误,打开浏览器:http://localhost:8080/hello,即可看到输出 hello
三、部署至服务器
1、生成 jar 包:右键 Eclipse -> run as -> Maven install,等待运行,在工程目录 【target】下,可以看到生成的 jar 包。
2、jar 重命名为【test.jar】并上传至服务器;
3、切换为【root】用户,不然有错误:Unable to access jarfile
4、运行,输入命令:java -jar 文件.jar
5、在网外输入 ip:8080/hello 即可看到打印信息
四、创建服务,后台运行
上一步是手动启动,但关闭命令后,便停止服务,下面是修正后的:
java -jar 文件.jar &