二、微服务架构
https://www.processon.com/view/604b00d71e08537ac5bcda02
我们项目的流程
1、拉取gitlib代码
2、maven代码检查
3、maven构建
4、生成镜像
git rev-parse --short HEAD获取最新的commit id
使用dockerfile的docker build创建镜像,
docker tag 标记镜像,
docker push将本地的镜像上传到镜像仓库,
docker rmi 删除本地镜像
5、拉取镜像,发布测试或者生产
三、集群和分布式,https://www.cnblogs.com/yinwenbin/p/11862793.html
微服务中不同中心是分布式
微服务中同一个中心下多个服务是集群
四、ELK
一个完整的集中式日志系统,是离不开以下几个主要特点的。参考:https://zhuanlan.zhihu.com/p/121099453
1、收集 - 能够采集多种来源的日志数据
2、传输 - 能够稳定的把日志数据传输到中央系统
3、存储 - 如何存储日志数据
4、分析 - 可以支持 UI 分析
5、警告 - 能够提供错误报告,监控机制
ELK其实并不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写,Elasticsearch,Logstash 和 Kibana。
Logstash 数据收集引擎
Elasticsearch 是一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化搜索以及分析
Kibana 为Elasticsearch提供分析和可视化的 Web 平台
五、ETL
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程;
目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算;
Spark,拥有Hadoop MapReduce所具有的优点;
但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,
因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法