mac 上微服务springboot搭建
每个人来到这个世界都是偶然的,但是离开却是必然的。珍惜生命,好好生活
微服务创建有三种方式,cli,maven,gradle
这里提供最简单的方式cli
下载安装Spring Boot CLI
1.下载spring-boot-cli-2.1.3.RELEASE-bin.tar.gz,并解压缩到某个目录。
我是手动通过链接下载安装。当然官网上提供4种安装方式。
2.打开spring-2.1.3.RELEASE文件夹中的说明书:INSTALL.txt,按照提示操作。
a)检查jdk,需要1.8,默认使用的是Groovy v2.5.6
java -version
b)添加spring环境变量
执行命令 open .bash_profile
添加springhome/bin(即刚才下载spring-boot-cli-2.1.3.RELEASE-bin.tar.gz并解压缩的地址/bin) 到环境变量。
添加如下到.bash_profile
export SPRING_HOME=/Users/yourname/spring-2.1.3.RELEASE
export PATH="$SPRING_HOME/bin:$PATH"
执行命令 source .bash_profile
执行命令 spring --version
Spring CLI v2.1.3.RELEASE //代表成功。
添加链接:(可选)
Shell auto-completion scripts are provided for BASH and ZSH. Add symlinks to the appropriate
location for your environment. For example, something like:
ln -s ./shell-completion/bash/spring /etc/bash_completion.d/spring
ln -s ./shell-completion/zsh/_spring /usr/local/share/zsh/site-functions/_spring
3.新建文件app.groovy ,启动服务
spring run app.groovy
4.浏览器访问端口
localhost:8080
控制台启动日志:(出现以下提示,没有报错,说明启动成功)
Starting application on miky.local with PID 12169 (started by xxx in /Users/xxx/webspringboot)
org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.16]
o.s.web.servlet.DispatcherServlet : Completed initialization in 12 ms
当然上面只是用springboot启动了个单个应用。真正的微服务是一种。需要多个springboot应用一起协作。那就需要涉及以下关键几点:
1.注册中心
2.服务发现
3.负载均衡
注:上面3步,一般使用 Eureka 做服务注册中心,Ribbon 做客户端服务发现和负载均衡。
这个选择的最大好处是 简单 + 实用 + 可控,不用引入额外的 Zookeeper、Etcd 做注册中心,部署和运维也都比较简单
4.服务网关
a)由统一的入口来调用微服务的 API
b)API 鉴权
5.管理端 (微服务的难点:运维难)
6.持续集成 通过持续集成平台 或者 通过编写shell 调用jekins api和docker api
参考:https://blog.csdn.net/jek123456/article/details/77440772/
其实springcloud已经整合了上面提到的点。
参考:springcloud 和 springboot区别
http://m.cnitedu.cn/java/share/20174186.html
springboot可以离开springcloud,springcloud离不开springboot。