您的位置:首页 > 其它

一睹Web服务真面目,有商业价值的Web服务是这样的?

2020-03-09 09:15 78 查看

Spring Boot是Java开发时常用框架,有非常丰富的组件和易用的功能。为了满足实际需求,应用于生产的Web项目功能和架构都日趋复杂:多层架构,数据中台,动静分离,集群化部署,自动化运维,等等。


1,全技术栈

不同于一个Demo演示,用于商业、有价值的一个Web服务是功能全面的,有服务保障和监控机制。特别强调一下缓存系统,如果都是直接读写数据库而没有加入缓存机制,那么一旦用户量多起来,这个系统崩掉几乎是一定的。


1)数据库

2)缓存系统

3)消息队列

4)文件服务

5)鉴权认证

6)异步任务调度

7)日志系统

8)服务监控

9)。。。


2,系统架构

示意图如下:

3,自动构建

开发完成、测试通过后,提交代码将触发自动构建系统。


阿里云容器镜像服务提供Docker镜像仓库托管,配置项目代码Git仓库和构建规则,结合Dockerfile实现云端编译打包,不再需要常用的Jenkins构建服务器。 

4,一键部署

Docker是一个开源的应用容器引擎,将应用以及依赖打包到一个可移植的镜像中,部署到服务器并运行在Container容器实例中。

资源编排Docker-compose定义和运行多个容器组成的应用系统,通过docker-compose.yml文件声明各个服务,作为一个整体来完成应用的创建和启动。

我们使用Docker快捷高效部署应用,先看操作步骤和用时:

操作

脚本

用时

资源编排,配置镜像

docker-compose.yml

-

安装Docker,Ubuntu服务器可用脚本

docker.sh

-

拉取镜像,有更新时下载

pull.sh

-

启动服务容器

up.sh

10s

查看运行日志

logs.sh

-

停止服务

down.sh

15s


以完整部署Web服务脚手架为例,代码脚本文件:

https://github.com/jextop/StarterDeploy

├── docker.sh            # Ubuntu环境下自动安装Docker

├── docker-compose.yml # 资源编排文件,配置各个服务

├── pull.sh              # 拉取需要的Docker镜像

├── up.sh               # 一键启动依赖的运行环境

├── logs.sh              # 查看容器运行日志

├── down.sh            # 停止运行环境


1) 安装Docker

Ubuntu服务器可以运行脚本docker.sh自动安装

https://docs.docker.com/install/linux/docker-ce/ubuntu/

https://docs.docker.com/docker-for-windows/install/

2) pull.sh拉取镜像

批量拉取需要的镜像,完成后docker images查看:

3) up.sh启动容器

脚本中封装了docker-compose up -d命令,启动后docker ps查看容器实例:

4) logs.sh查看日志

定制命令突出显示重要信息:

docker-compose logs -ft | grep --color -i -e error -e warn -e version -e exception

5) 打开管理后台,查看服务

6) down.sh停止服务

运行docker-compose down --remove-orphans停止并删除容器:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: