当前位置: 首页 > 后端技术 > PHP

FastD最佳实践六:为应用添加调用链监控Zipkin

时间:2023-03-30 00:18:25 PHP

zipkin是一个开源的分布式跟踪系统,由Twitter开源,致力于收集服务的时序数据,解决微服务架构中的延迟问题,包括数据收集,存储、检索和展示。其理论模型来自于GoogleDapper论文。为什么要用zipkin随着业务的发展,系统拆分使得系统调用环节越来越复杂。一个前端请求最终可能需要多次调用后端服务才能完成。当整个请求变慢或不可用时,我们不知道该怎么办。该请求是由一项或多项后端服务引起的。这时候就需要解决如何快速读取和定位服务的故障点来对症下药。于是就有了分布式系统调用追踪的诞生。而zipkin是开源分布式系统调用跟踪的领导者Installzipkinwget-Ozipkin.jar'https://search.maven.org/remote_content?g=io.zipkin.java&a=zipkin-server&v=LATEST&c=exec'java-jarzipkin.jarinstallMolten这里提供了一个C扩展,为php提供相应的数据采集。地址:点击我的安装参考:在php.ini中添加molten安装可以通过php--iniextension=molten.somolten.enable=1molten.sink_type=4molten.tracing_cli=1molten.sink_http_uri=http查看php.ini文件位置://127.0.0.1:9411/api/v1/spansmolten.span_id_format=randommolten.sampling_rate=1使用php-m|grepmolten检查是否安装正确。结合FastDPHP框架,在FastD(3.2版本新特性)中,已经集成了相关调用链的基础类和配置,通过简单的配置就可以达到日志采集的效果。调整配置文件:app.php[//code...\FastD\ServiceProvider\MoltenServiceProvider::class,],//code...];在服务选项中,只需添加:\FastD\ServiceProvider\MoltenServiceProvider::class。配置完成后,通过正常的访问操作查看效果。Log:Summary应用上线后,我们需要心急如焚,清楚了解应用的运行状态、调用状态、请求响应状态,第一时间发现问题并解决。开发的工作往往比较简单,但是对于一个完整的系统和监控来说,却是相当重要的。通过以上系统例行监控、日志集中分析、应用调用链监控,我们的业务可以变得更加透明、清晰、可控。或许系统还不够完善,但聊胜于无。相关文章:FastD最佳实践4:构建系统可视化监控FastD最佳实践5:构建ELK日志分析