做微服务开发有一段时间了,积累了很多好用的工具,今天就来做一个全景工具推荐,聊聊那些能大幅提升微服务开发和运维效率的利器。
微服务,架构,虽然,有,很多,好处,比如,独立,部署,独立,扩展,技术,栈,灵活,等等,但是,也,带来,了,很多,挑战,比如,服务,数量,多,运维,复杂,调用,链,长,问题,排查,困难,分布式,事务,数据,一致性,等等,要,应对,这些,挑战,光,靠,人工,是,不够,的,需要,借助,各种,工具,来,提升,效率,降低,复杂度。
这,几年,做,微服务,开发,和,运维,我,积累,了,很多,好用,的,工具,覆盖,了,开发,测试,部署,运维,监控,排查,等,各个,环节,今天,这篇,文章,就,来,做,一个,全景,工具,推荐,按照,微服务,的,生命周期,各个,环节,分类,推荐,那些,能,大幅,提升,效率,的,利器。
一、开发阶段工具
先说说,开发,阶段,的,工具,这,是,微服务,生命周期,的,第一个,环节,好,的,开发,工具,能,大大,提升,开发,效率,减少,重复,劳动。
1. 代码编辑器/IDE
首先,是,代码,编辑器,和,IDE,这,是,开发,的,基础,工具,好,的,IDE,能,大大,提升,编码,效率。
如果,用,Java,做,微服务,推荐,IntelliJ IDEA,这,是,目前,最好,的,Java,IDE,没有,之一,智能,提示,代码,补全,重构,调试,版本控制,等等,功能,都,非常,强大,而且,对,Spring Boot,Spring Cloud,等,微服务,框架,有,很,好,的,支持,能,大大,提升,Java,微服务,开发,的,效率,虽然,是,付费,软件,但是,绝对,物有所值,很多,公司,都,会,给,员工,购买,授权。
如果,用,Go,做,微服务,推荐,GoLand,也是,JetBrains,家,的,产品,和,IDEA,一样,强大,对,Go,语言,有,很,好,的,支持,智能,提示,代码,补全,重构,调试,等等,功能,都,很,强大,能,大大,提升,Go,微服务,开发,的,效率。
如果,用,Node.js,Python,等,语言,做,微服务,推荐,VS Code,这,是,微软,出,的,轻量级,代码,编辑器,免费,开源,插件,丰富,通过,安装,不同,的,插件,能,支持,各种,语言,和,框架,而且,轻量,快速,启动,快,占用,资源,少,很,适合,前端,和,脚本,语言,开发,很多,人,都,喜欢,用,VS Code。
2. API调试工具
微服务,开发,中,经常,需要,调试,API,所以,好,的,API,调试,工具,很,重要。
首推,Postman,这,是,目前,最,流行,的,API,调试,工具,功能,非常,强大,支持,各种,HTTP,方法,各种,参数,类型,各种,认证,方式,还,支持,环境,变量,集合,管理,批量,执行,测试,脚本,等等,功能,能,大大,提升,API,调试,的,效率,而且,支持,团队,协作,能,共享,API,集合,很,适合,团队,使用。
还有,一个,国产,的,工具,叫,Apipost,也,很,不错,功能,和,Postman,类似,但是,更,符合,国内,用户,的,使用,习惯,而且,支持,生成,接口,文档,Mock,数据,等等,功能,很,实用,很多,国内,团队,都,喜欢,用。
如果,喜欢,命令行,工具,推荐,curl,和,httpie,curl,是,最,经典,的,命令行,HTTP,工具,功能,强大,几乎,所有,系统,都,自带,httpie,是,一个,更,现代,的,命令行,HTTP,工具,输出,更,友好,语法,更,简单,很,适合,在,命令行,调试,API。
3. 数据库工具
微服务,开发,中,经常,需要,操作,数据库,所以,好,的,数据库,工具,也,很,重要。
推荐,DataGrip,也是,JetBrains,家,的,产品,是,目前,最好,的,数据库,工具,之一,支持,几乎,所有,主流,数据库,MySQL,PostgreSQL,Oracle,SQL Server,MongoDB,Redis,等等,都,支持,智能,提示,代码,补全,数据,浏览,编辑,导出,导入,ER图,等等,功能,都,很,强大,能,大大,提升,数据库,操作,的,效率,虽然,是,付费,软件,但是,物有所值。
如果,想要,免费,的,工具,推荐,DBeaver,这,是,一个,免费,开源,的,数据库,工具,支持,几乎,所有,主流,数据库,功能,也,很,强大,虽然,界面,和,体验,不如,DataGrip,但是,免费,够用,很,适合,个人,用户,和,小,团队。
如果,只,用,MySQL,推荐,Navicat for MySQL,这,是,一个,很,经典,的,MySQL,管理,工具,界面,友好,功能,强大,容易,上手,很多,人,都,喜欢,用,但是,是,付费,软件,而且,只,支持,MySQL,和,少量,其他,数据库,不如,DataGrip,和,DBeaver,支持,的,数据库,多。
4. 代码质量工具
微服务,开发,中,代码,质量,很,重要,所以,好,的,代码,质量,工具,也,很,重要。
推荐,SonarQube,这,是,一个,开源,的,代码,质量,管理,平台,能,静态,分析,代码,检查,代码,中的,bug,漏洞,坏味道,代码,重复,率,测试,覆盖率,等等,能,帮助,团队,提升,代码,质量,而且,支持,几乎,所有,主流,编程语言,Java,Go,Python,JavaScript,等等,都,支持,很多,公司,都,会,把,SonarQube,集成,到,CI/CD,流程,中,每次,提交,代码,都,自动,检查,代码,质量,不,合格,的,代码,不,允许,合并,很,有效。
还有,一些,IDE,插件,也,很,有用,比如,Alibaba Java Coding Guidelines,这,是,阿里巴巴,出,的,Java,代码,规范,插件,能,检查,Java,代码,是否,符合,阿里巴巴,的,代码,规范,帮助,开发者,写出,更,规范,的,代码,很多,公司,都,要求,开发者,安装,这个,插件。
还有,Checkstyle,PMD,FindBugs,等,工具,也,很,有用,能,检查,Java,代码,的,规范,和,潜在,问题,帮助,提升,代码,质量。
二、测试阶段工具
再说说,测试,阶段,的,工具,微服务,架构,下,测试,很,重要,因为,服务,之间,有,依赖,集成,测试,和,端到端,测试,都,很,重要,好,的,测试,工具,能,大大,提升,测试,效率,和,覆盖率。
1. 单元测试工具
单元测试,是,测试,的,基础,好,的,单元测试,工具,能,帮助,开发者,写出,更,好,的,单元测试。
如果,用,Java,推荐,JUnit 5,和,Mockito,JUnit 5,是,Java,最,主流,的,单元测试,框架,功能,强大,使用,方便,Mockito,是,最,主流,的,Mock,框架,能,模拟,依赖,的,对象,和,方法,让,单元测试,更,纯粹,更,快速,两个,配合,使用,能,写出,很,好,的,Java,单元测试。
如果,用,Go,推荐,Go,自带,的,testing,包,和,testify,Go,自带,的,testing,包,已经,很,好用,了,能,满足,大部分,单元测试,需求,testify,是,一个,第三方,库,提供,了,更,方便,的,断言,和,Mock,功能,能,让,Go,单元测试,写,起来,更,方便,更,易读。
如果,用,JavaScript/TypeScript,推荐,Jest,这,是,目前,最,流行,的,JavaScript,测试,框架,功能,强大,使用,方便,支持,断言,Mock,快照,测试,覆盖率,等等,功能,很,适合,前端,和,Node.js,项目,的,单元测试。
2. 接口测试工具
微服务,架构,下,接口,测试,很,重要,好,的,接口,测试,工具,能,大大,提升,接口,测试,的,效率。
推荐,Postman,刚才,开发,阶段,已经,推荐,过,了,它,不仅,能,调试,API,还,能,写,接口,测试,用例,支持,测试,脚本,断言,变量,等等,能,做,接口,自动化,测试,而且,支持,集合,运行,能,批量,执行,接口,测试,用例,很,方便,很多,团队,都,用,Postman,做,接口,自动化,测试。
还有,一个,工具,叫,JMeter,也,很,常用,这,是,Apache,出,的,开源,测试,工具,不仅,能,做,接口,测试,还,能,做,性能,测试,压力,测试,功能,很,强大,但是,界面,比较,老旧,使用,起来,不如,Postman,方便,适合,做,性能,测试,和,复杂,的,接口,测试。
如果,喜欢,代码,方式,写,接口,测试,推荐,REST Assured,这,是,一个,Java,的,接口,测试,框架,能用,代码,的,方式,写,接口,测试,用例,支持,断言,参数化,等等,功能,能,集成,到,CI/CD,流程,中,自动,执行,很,适合,Java,技术栈,的,团队。
3. 性能测试工具
微服务,架构,下,性能,测试,很,重要,因为,服务,之间,有,调用,性能,问题,可能,会,放大,好,的,性能,测试,工具,能,帮助,发现,性能,瓶颈。
推荐,JMeter,刚才,已经,提,过,了,这,是,最,常用,的,开源,性能,测试,工具,功能,强大,支持,各种,协议,HTTP,HTTPS,FTP,JDBC,等等,都,支持,能,做,压力,测试,负载,测试,分布式,测试,等等,而且,有,很多,插件,能,扩展,功能,很多,公司,都,用,JMeter,做,性能,测试。
还有,一个,工具,叫,Gatling,也,很,不错,这,是,一个,基于,Scala,的,性能,测试,工具,能用,代码,的,方式,写,性能,测试,用例,支持,DSL,写,起来,很,方便,而且,性能,很,好,能,模拟,大量,并发,用户,报告,也,很,漂亮,很,适合,做,高并发,性能,测试。
如果,需要,更,专业,的,性能,测试,推荐,LoadRunner,这,是,HP,出,的,商业,性能,测试,工具,功能,非常,强大,支持,各种,协议,各种,场景,能,做,非常,复杂,的,性能,测试,但是,是,付费,软件,而且,价格,不,便宜,适合,大,企业,做,专业,的,性能,测试。
4. Mock工具
微服务,架构,下,服务,之间,有,依赖,测试,的,时候,经常,需要,Mock,依赖,的,服务,所以,好,的,Mock,工具,很,重要。
推荐,WireMock,这,是,一个,开源,的,HTTP,Mock,工具,能,模拟,HTTP,接口,返回,指定,的,响应,支持,各种,匹配,规则,URL,方法,请求头,请求体,等等,都,能,匹配,而且,支持,录制,和,回放,能,录制,真实,的,接口,响应,然后,回放,很,方便,很多,团队,都,用,WireMock,做,接口,Mock。
还有,一个,工具,叫,MockServer,也,很,不错,功能,和,WireMock,类似,能,模拟,HTTP,和,HTTPS,接口,返回,指定,的,响应,支持,各种,匹配,规则,而且,支持,Java,API,能,在,代码,中,使用,很,方便。
如果,用,Spring Boot,推荐,Spring Cloud Contract,这,是,Spring Cloud,提供,的,契约,测试,工具,能,定义,服务,之间,的,契约,然后,根据,契约,生成,Mock,和,测试,用例,能,保证,服务,之间,的,接口,一致性,很,适合,Spring Cloud,微服务,架构,的,团队。
三、部署阶段工具
再说说,部署,阶段,的,工具,微服务,架构,下,服务,数量,多,部署,复杂,好,的,部署,工具,能,大大,提升,部署,效率,降低,部署,复杂度。
1. 容器化工具
微服务,架构,下,容器化,是,标配,好,的,容器化,工具,能,大大,提升,部署,效率。
首推,Docker,这,是,目前,最,流行,的,容器化,工具,几乎,成,了,容器,的,代名词,能,把,应用,和,依赖,打包,成,一个,镜像,然后,在,任何,安装,了,Docker,的,环境,运行,保证,环境,一致性,避免,"在我机器上能跑",的,问题,而且,轻量,快速,启动,快,占用,资源,少,很,适合,微服务,部署,现在,几乎,所有,做,微服务,的,团队,都,在,用,Docker。
还有,Docker Compose,这,是,Docker,官方,的,编排,工具,能,用,一个,YAML,文件,定义,多个,容器,的,应用,然后,一键,启动,停止,重建,很,适合,开发,和,测试,环境,部署,多个,服务,但是,不,适合,生产,环境,生产,环境,需要,用,更,强大,的,容器,编排,工具,比如,Kubernetes。
2. 容器编排工具
微服务,架构,下,服务,数量,多,需要,容器,编排,工具,来,管理,大量,的,容器。
首推,Kubernetes,简称,K8s,这,是,目前,最,流行,的,容器,编排,工具,是,Google,开源,的,现在,由,CNCF,维护,功能,非常,强大,能,自动化,部署,扩展,和,管理,容器化,应用,支持,服务,发现,负载均衡,自动,扩缩容,滚动,更新,自愈,存储,编排,配置,管理,等等,功能,几乎,成,了,容器,编排,的,事实,标准,现在,很多,公司,都,在,用,Kubernetes,部署,微服务。
Kubernetes,虽然,功能,强大,但是,也,比较,复杂,学习,成本,高,运维,也,复杂,如果,团队,没有,足够,的,Kubernetes,经验,可以,考虑,用,一些,托管,的,Kubernetes,服务,比如,阿里云,容器服务,ACK,腾讯云,容器服务,TKE,等等,云,厂商,帮,你,管理,Kubernetes,集群,你,只,需要,关注,应用,部署,就,行,能,大大,降低,Kubernetes,的,使用,门槛。
如果,觉得,Kubernetes,太,复杂,也,可以,考虑,用,Docker Swarm,这,是,Docker,官方,的,容器,编排,工具,比,Kubernetes,简单,容易,上手,但是,功能,也,比,Kubernetes,少,一些,适合,小,团队,和,简单,的,场景,但是,现在,用,的,人,越来越,少,了,大部分,人,都,选择,Kubernetes。
3. CI/CD工具
微服务,架构,下,持续,集成,和,持续,部署,很,重要,好,的,CI/CD,工具,能,大大,提升,部署,效率,实现,自动化,部署。
推荐,Jenkins,这,是,最,经典,的,开源,CI/CD,工具,功能,非常,强大,插件,丰富,支持,几乎,所有,的,构建,工具,和,版本,控制,工具,能,实现,自动化,构建,测试,部署,等等,很多,公司,都,在,用,Jenkins,做,CI/CD,但是,Jenkins,比较,老旧,界面,不,太,友好,配置,也,比较,复杂,需要,一定,的,学习,成本。
还有,一个,工具,叫,GitLab CI,也,很,流行,这,是,GitLab,自带,的,CI/CD,功能,如果,团队,用,GitLab,做,代码,管理,那么,用,GitLab CI,做,CI/CD,很,方便,不需要,额外,搭建,工具,而且,配置,简单,用,YAML,文件,定义,CI/CD,流程,容易,上手,很多,团队,都,喜欢,用,GitLab CI。
还有,GitHub Actions,也,很,不错,这,是,GitHub,自带,的,CI/CD,功能,如果,团队,用,GitHub,做,代码,管理,那么,用,GitHub Actions,很,方便,而且,有,很多,现成,的,Action,能,直接,使用,很,方便,很多,开源,项目,都,用,GitHub Actions,做,CI/CD。
如果,想要,更,简单,的,CI/CD,工具,推荐,Drone,这,是,一个,轻量级,的,CI/CD,工具,基于,Docker,配置,简单,用,YAML,文件,定义,CI/CD,流程,容易,上手,轻量,快速,很,适合,小,团队,使用。
四、运维阶段工具
再说说,运维,阶段,的,工具,微服务,架构,下,运维,很,复杂,好,的,运维,工具,能,大大,提升,运维,效率,降低,运维,复杂度。
1. 服务注册与发现
微服务,架构,下,服务,注册,与,发现,是,基础,好,的,服务,注册,与,发现,工具,能,让,服务,之间,互相,发现,和,调用。
推荐,Nacos,这,是,阿里巴巴,开源,的,服务,注册,与,发现,和,配置,管理,工具,功能,强大,使用,方便,支持,服务,注册,与,发现,配置,管理,动态,配置,推送,等等,功能,而且,有,很,好,的,中文,文档,和,社区,很,适合,国内,团队,使用,现在,很多,用,Spring Cloud,的,团队,都,在,用,Nacos,做,服务,注册,与,发现,和,配置,管理。
还有,Consul,也,很,常用,这,是,HashiCorp,开源,的,服务,注册,与,发现,工具,支持,服务,注册,与,发现,健康,检查,KV,存储,等等,功能,而且,支持,多,数据中心,很,强大,很多,国外,团队,喜欢,用,Consul。
还有,Eureka,这,是,Netflix,开源,的,服务,注册,与,发现,工具,曾经,是,Spring Cloud,的,默认,服务,注册,与,发现,组件,但是,现在,已经,停止,开发,了,不,推荐,新,项目,使用,建议,用,Nacos,或者,Consul,替代。
如果,用,Kubernetes,部署,微服务,那么,可以,直接,用,Kubernetes,自带,的,服务,发现,功能,不需要,额外,部署,服务,注册,与,发现,工具,Kubernetes,的,Service,和,DNS,能,实现,服务,发现,很,方便。
2. 配置中心
微服务,架构,下,配置,管理,很,重要,好,的,配置,中心,能,集中,管理,配置,动态,推送,配置,不用,重启,服务。
推荐,Nacos,刚才,已经,提,过,了,它,不仅,能,做,服务,注册,与,发现,还,能,做,配置,管理,支持,配置,的,集中,管理,动态,推送,版本,管理,灰度,发布,等等,功能,很,强大,而且,和,Spring Cloud,集成,很,好,用,起来,很,方便,很多,团队,都,用,Nacos,做,配置,中心。
还有,Apollo,也,很,常用,这,是,携程,开源,的,配置,中心,功能,非常,强大,支持,配置,的,集中,管理,动态,推送,版本,管理,灰度,发布,权限,管理,审计,日志,等等,功能,很,完善,适合,大,团队,和,复杂,的,场景,很多,大,公司,都,在,用,Apollo,做,配置,中心。
还有,Spring Cloud Config,这,是,Spring Cloud,官方,的,配置,管理,工具,支持,从,Git,SVN,本地,文件,系统,等,地方,读取,配置,但是,功能,比较,简单,不,支持,动态,推送,需要,配合,Spring Cloud Bus,才能,实现,动态,刷新,而且,没有,管理,界面,配置,管理,不,太,方便,现在,用,的,人,越来越,少,了,大部分,人,都,选择,Nacos,或者,Apollo。
3. API网关
微服务,架构,下,API,网关,是,入口,好,的,API,网关,能,统一,处理,请求,路由,鉴权,限流,熔断,日志,等等,功能。
推荐,Spring Cloud Gateway,这,是,Spring Cloud,官方,的,API,网关,基于,Spring 5,Spring Boot 2,和,Project Reactor,技术,栈,性能,好,功能,强大,支持,路由,断言,过滤器,限流,熔断,等等,功能,而且,和,Spring Cloud,生态,集成,很,好,用,起来,很,方便,很多,用,Spring Cloud,的,团队,都,在,用,Spring Cloud Gateway。
还有,Kong,也,很,常用,这,是,一个,开源,的,API,网关,基于,Nginx,和,OpenResty,性能,很,好,功能,强大,支持,路由,鉴权,限流,熔断,日志,监控,等等,功能,而且,有,很多,插件,能,扩展,功能,还有,企业,版,提供,更,多,功能,和,支持,很多,公司,都,在,用,Kong,做,API,网关。
还有,Nginx,本身,也,能,做,API,网关,通过,配置,能,实现,反向代理,负载均衡,路由,等等,功能,但是,功能,比较,基础,不,支持,动态,配置,和,复杂,的,鉴权,限流,等等,功能,适合,简单,的,场景,不,适合,复杂,的,微服务,架构。
如果,用,Kubernetes,部署,微服务,那么,可以,用,Kubernetes,的,Ingress,做,网关,或者,用,Istio,做,服务,网格,实现,更,强大,的,网关,功能。
4. 服务治理工具
微服务,架构,下,服务,治理,很,重要,好,的,服务,治理,工具,能,实现,限流,熔断,降级,负载均衡,等等,功能,保证,系统,的,稳定性。
推荐,Sentinel,这,是,阿里巴巴,开源,的,服务,治理,工具,功能,强大,支持,限流,熔断,降级,系统,负载,保护,热点,参数,限流,等等,功能,而且,有,很,好,的,控制台,能,实时,监控,和,配置,规则,很,方便,很多,用,Spring Cloud,的,团队,都,在,用,Sentinel,做,服务,治理。
还有,Hystrix,这,是,Netflix,开源,的,熔断,工具,曾经,是,Spring Cloud,的,默认,熔断,组件,但是,现在,已经,停止,开发,了,不,推荐,新,项目,使用,建议,用,Sentinel,或者,Resilience4j,替代。
还有,Resilience4j,也,很,不错,这,是,一个,轻量级,的,容错,库,支持,熔断,限流,重试,隔离,等等,功能,而且,轻量,快速,不,依赖,任何,框架,能,在,任何,Java,项目,中,使用,很多,人,喜欢,用,Resilience4j,做,服务,容错。
五、监控与排查工具
最后,说说,监控,与,排查,工具,微服务,架构,下,问题,排查,很,困难,好,的,监控,和,排查,工具,能,大大,提升,问题,排查,效率。
1. 日志工具
微服务,架构,下,日志,很,重要,好,的,日志,工具,能,集中,收集,和,分析,日志,方便,问题,排查。
推荐,ELK,技术栈,Elasticsearch,Logstash,Kibana,这,是,目前,最,流行,的,日志,收集,和,分析,工具,Logstash,负责,收集,和,处理,日志,Elasticsearch,负责,存储,和,搜索,日志,Kibana,负责,可视化,和,分析,日志,三个,配合,使用,能,实现,日志,的,集中,收集,存储,搜索,分析,可视化,功能,很,强大,很多,公司,都,在,用,ELK,做,日志,管理。
还有,一个,更,轻量,的,方案,叫,EFK,Elasticsearch,Fluentd,Kibana,把,Logstash,换成,Fluentd,Fluentd,更,轻量,更,快速,占用,资源,更,少,很多,人,喜欢,用,EFK,替代,ELK。
如果,用,Kubernetes,部署,微服务,推荐,Loki,这,是,Grafana, Labs,出,的,日志,工具,和,Grafana,集成,很,好,轻量,快速,成本,低,很,适合,Kubernetes,环境,的,日志,管理,很多,用,Kubernetes,的,团队,都,在,用,Loki,做,日志,管理。
2. 指标监控工具
微服务,架构,下,指标,监控,很,重要,好,的,指标,监控,工具,能,实时,监控,系统,的,各种,指标,及时,发现,问题。
推荐,Prometheus,加,Grafana,这,是,目前,最,流行,的,指标,监控,方案,Prometheus,负责,收集,和,存储,指标,数据,支持,强大,的,PromQL,查询,语言,能,做,复杂,的,查询,和,计算,Grafana,负责,可视化,指标,数据,能,做,很,漂亮,的,监控,大盘,两个,配合,使用,能,实现,指标,的,收集,存储,查询,可视化,告警,功能,很,强大,现在,几乎,成,了,指标,监控,的,事实,标准,很多,公司,都,在,用。
Prometheus,还,支持,丰富,的,客户端,库,几乎,所有,主流,编程语言,都,有,客户端,库,能,很,方便,地,在,应用,中,埋点,暴露,指标,而且,有,很多,现成,的,exporter,能,监控,各种,系统,和,服务,比如,MySQL,Redis,Kafka,Kubernetes,等等,都,有,现成,的,exporter,很,方便。
3. 链路追踪工具
微服务,架构,下,调用,链,长,问题,排查,困难,好,的,链路,追踪,工具,能,追踪,请求,在,各个,服务,的,调用,链,和,耗时,方便,问题,排查。
推荐,Jaeger,这,是,Uber,开源,的,链路,追踪,工具,现在,由,CNCF,维护,兼容,OpenTracing,标准,功能,强大,支持,分布式,链路,追踪,性能,分析,根因,分析,等等,功能,而且,界面,友好,使用,方便,很多,公司,都,在,用,Jaeger,做,链路,追踪。
还有,Zipkin,也,很,常用,这,是,Twitter,开源,的,链路,追踪,工具,是,最早,的,分布式,链路,追踪,工具,之一,兼容,OpenTracing,标准,功能,也,很,强大,但是,界面,和,体验,不如,Jaeger,现在,用,的,人,越来越,少,了,大部分,人,都,选择,Jaeger。
还有,SkyWalking,这,是,华为,开源,的,链路,追踪,工具,现在,已经,捐给,Apache,了,功能,非常,强大,不仅,支持,链路,追踪,还,支持,指标,监控,日志,分析,等等,功能,是,一个,全功能,的,APM,工具,而且,对,Java,应用,支持,特别,好,能,无,侵入,地,埋点,很多,国内,公司,都,在,用,SkyWalking,做,链路,追踪,和,APM。
4. 告警工具
微服务,架构,下,告警,很,重要,好,的,告警,工具,能,在,系统,出,问题,的,时候,及时,通知,相关,人员,快速,处理,问题。
推荐,Alertmanager,这,是,Prometheus,官方,的,告警,工具,和,Prometheus,集成,很,好,支持,告警,规则,配置,告警,分组,抑制,静默,等等,功能,而且,支持,多种,告警,通知,方式,邮件,短信,钉钉,企业微信,Slack,等等,都,支持,很,方便,很多,用,Prometheus,的,团队,都,在,用,Alertmanager,做,告警。
还有,一个,工具,叫,Grafana Alerting,也,很,不错,这,是,Grafana,自带,的,告警,功能,能,直接,在,Grafana,大盘,上,配置,告警,规则,支持,多种,告警,通知,方式,很,方便,如果,已经,在,用,Grafana,做,监控,大盘,那么,用,Grafana Alerting,做,告警,很,方便,不需要,额外,部署,工具。
六、写在最后
微服务,架构,虽然,复杂,但是,有,了,这些,工具,的,帮助,能,大大,降低,复杂度,提升,效率,让,微服务,开发,和,运维,变得,更,简单,更,高效。
今天,推荐,的,这些,工具,都是,我,这,几年,做,微服务,开发,和,运维,积累,的,好用,的,工具,覆盖,了,开发,测试,部署,运维,监控,排查,等,各个,环节,希望,能,给,正在,做,微服务,的,朋友,一些,参考。
当然,工具,只是,辅助,最重要,的,还是,人,和,流程,好,的,工具,配合,好,的,流程,和,优秀,的,人,才能,发挥,最大,的,作用,所以,不要,迷信,工具,要,根据,团队,的,实际,情况,选择,适合,的,工具,不要,盲目,追求,新,工具,和,技术,适合,自己,的,才,是,最,好,的。
而且,工具,也,在,不断,发展,和,变化,新,的,工具,不断,出现,老,的,工具,不断,更新,所以,要,保持,学习,的,心态,关注,新,的,工具,和,技术,不断,优化,自己,的,工具,链,提升,效率。
最后,希望,大家,都,能,找到,适合,自己,团队,的,工具,链,提升,微服务,开发,和,运维,的,效率,让,微服务,架构,发挥,最大,的,价值。
也,欢迎,大家,在,评论,区,分享,你们,用,的,微服务,工具,一起,交流,一起,进步。
评论(0)
暂无评论,快来抢沙发~
评论功能仅对会员开放,请先登录
登录