当前位置: 首页 > news >正文

河北企业建站系统信息移动端网站开发标题设置

河北企业建站系统信息,移动端网站开发标题设置,网站开发学校有哪些,线上平台搭建要多少钱PProf PProf 是什么 PProf是 golang 官方提供的性能调优分析工具#xff0c;用于分析和优化Go程序的性能。 PProf通过收集和分析程序的运行时数据来生成性能分析报告。它使用Go语言的运行时特性#xff0c;如代码注释和特殊的程序运行标记#xff0c;来收集性能数据。PPr…PProf PProf 是什么 PProf是 golang 官方提供的性能调优分析工具用于分析和优化Go程序的性能。 PProf通过收集和分析程序的运行时数据来生成性能分析报告。它使用Go语言的运行时特性如代码注释和特殊的程序运行标记来收集性能数据。PProf可以检测和测量程序中的CPU利用率、内存分配、阻塞等情况并生成可视化的报告和图表以帮助开发人员理解程序的行为和性能瓶颈。 PProf 以 profile.proto 读取分析样本的集合并生成报告以可视化并帮助分析数据支持文本和图形报告。 profile.proto 是一个 Protobuf v3 的描述文件它描述了一组 callstack 和 symbolization 信息 作用是统计分析的一组采样的调用栈是很常见的 stacktrace 配置文件格式。 有哪几种采样方式 runtime/pprof采集程序非 Server的指定区块的运行数据进行分析。net/http/pprof基于 HTTP Server 运行并且可以采集运行时数据进行分析。go test通过运行测试用例并指定所需标识来进行采集。 支持什么使用模式 Report generation报告生成。Interactive terminal use交互式终端使用。Web interfaceWeb 界面。 可以做什么 CPU ProfilingCPU 分析按照一定的频率采集所监听的应用程序 CPU含寄存器的使用情况可确定应用程序在主动消耗 CPU 周期时花费时间的位置。Memory Profiling内存分析在应用程序进行堆分配时记录堆栈跟踪用于监视当前和历史内存使用情况以及检查内存泄漏。Block Profiling阻塞分析记录 Goroutine 阻塞等待同步包括定时器通道的位置默认不开启需要调用 runtime.SetBlockProfileRate 进行设置。Mutex Profiling互斥锁分析报告互斥锁的竞争情况默认不开启需要调用 runtime.SetMutexProfileFraction 进行设置。Goroutine Profiling Goroutine 分析可以对当前应用程序正在运行的 Goroutine 进行堆栈跟踪和分析。这项功能在实际排查中会经常用到因为很多问题出现时的表象就是 Goroutine 暴增而这时候我们要做的事情之一就是查看应用程序中的 Goroutine 正在做什么事情因为什么阻塞了然后再进行下一步。 HTTP Server 使用举例 1.代码 提供一个http server最重要一步就是在 import 中添加 _ net/http/pprof 的引用 import (lognet/httptime_ net/http/pprof )var datas []stringfunc main() {go func() {for {log.Printf(len: %d, Add(go-programming-tour-book))time.Sleep(time.Millisecond * 10)}}()_ http.ListenAndServe(0.0.0.0:6060, nil) }func Add(str string) int {data : []byte(str)datas append(datas, string(data))return len(datas) } 下载安装 pprof 包go get github.com/google/pprof 。 启动程序访问 http://127.0.0.1:6060/debug/pprof/ 检查是否正常响应。  2.浏览器访问 访问 http://127.0.0.1:6060/debug/pprof/ 页面如下 allocs: 所有过去内存分配的样本 block: 导致同步阻塞的堆栈跟踪 cmdline: 当前程序的命令行调用 goroutine: 所有当前 goroutine 的堆栈跟踪 heap: 活动对象的内存分配情况。您可以指定 gc GET 参数以在获取堆样本之前运行 GC。 mutex: 争用互斥锁持有者的堆栈跟踪 profile: 默认进行 30s 的 CPU Profiling得到一个分析用的 profile 文件。您可以在秒 GET 参数中指定持续时间。获取配置文件后使用 go tool pprof 命令来调查配置文件。 threadcreate: 创建新操作系统线程的堆栈跟踪 trace: 当前程序的执行轨迹。您可以在秒 GET 参数中指定持续时间。获取跟踪文件后使用 go tool trace 命令来调查跟踪。 3.可视化界面分析profile文件 1、文件下载 浏览器页面直接下载http://127.0.0.1:6060/debug/pprof/ 或者终端命令下载wget http://127.0.0.1:6060/debug/pprof/profile 有时可能存在网络隔离问题那也可以这么做 curl http://localhost:6060/debug/pprof/heap?seconds30 heap.out# 下载heap.out到本地 go tool pprof heap.out 2、文件分析 本地执行终端命令该命令将在所指定的端口号运行一个 PProf 分析用的站点。 go tool pprof -http:6001 profile文件 如果出现错误提示 Could not execute dot; may need to install graphviz.那么意味着你需要安装 graphviz 组件。参考 安装Graphviz 3、文件内容 通过 PProf 所提供的可视化界面我们能够更方便、更直观的看到 Go 应用程序的调用链、使用情况等。另外在 View 菜单栏中PProf 还支持多种分析方式的切换如下 接下来我们将基于 CPU Profiling 所抓取的 Profile 进行一一介绍而其它 Profile 类型的分析模式也是互通的只要我们了解了一种其余的也就会了。  Top flat函数自身的运行耗时。flat%函数自身在 CPU 运行耗时总比例。sum%函数自身累积使用 CPU 总比例。cum函数自身及其调用函数的运行总耗时。cum%函数自身及其调用函数的运行耗时总比例。Name函数名。 在大多数的情况下我们可以通过这五列得出一个应用程序的运行情况知道当前是什么函数正在做什么事情占用了多少资源谁又是占用资源的大头以此来得到一个初步的分析方向。 Graph 该视图展示的为整体的函数调用流程框越大、线越粗、框颜色越鲜艳红色就代表它占用的时间越久开销越大。相反若框颜色越淡越小则代表在整体的函数调用流程中它的开销是相对较小的。 因此我们可以用此视图去分析谁才是开销大头它又是因为什么调用流程而被调用的。 Flame Graph Flame Graph火焰图它是可动态的调用顺序由上到下A - B - C - D每一块代表一个函数、颜色越鲜艳红、区块越大代表占用 CPU 的时间更长。同时它也支持点击块深入进行分析这样子我们就可以根据不同函数的多维度层级进行分析能够更好的观察其流转并发现问题。 Flame Graph(new) Peek 此视图相较于 Top 视图增加了所属的上下文信息的展示也就是函数的输出调用者/被调用者。  Source 该视图主要是增加了面向源代码的追踪和分析可以看到其开销主要消耗在哪里。 4.可视化界面分析trace文件 trace文件下载到本地后分析trace文件命令 go tool trace -http:6002 trace文件 Event timelines for running goroutines 运行 goroutine 的事件时间线。 View trace 查看踪迹 该视图显示每个 GOMAXPROCS 逻辑处理器的时间线显示每个时刻哪个 goroutine如果有在该逻辑处理器上运行。 Goroutine analysis Goroutine分析 该视图显示有关共享相同 main 函数的每组 goroutine 的信息。 Profiles 配置文件。 网络阻止配置文件 同步阻塞配置文件 系统调用阻止配置文件 调度程序延迟配置文件 User-defined tasks and regions 用户定义的任务和区域。 Garbage collection metrics 垃圾收集指标。 该图显示了最大GC暂停时间(y为零时的最大x值)更一般地说在最坏的情况下对于指定大小的任何时间窗口处理器可用于应用程序例程(“mutators”)的时间比例。 安装Graphviz 1、安装Homebrew /bin/bash -c $(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh) 官网地址https://brew.sh/index.html  2、安装graphviz程序。 brew install graphviz 参考 https://golang2.eddycjy.com/posts/ch6/01-pprof-1/ Go程序内存泄露问题快速定位 - MySpace pprof 性能分析 | Go 语言高性能编程 | 极客兔兔 https://www.cnblogs.com/jiujuan/p/14598141.html
http://www.hkea.cn/news/14482139/

相关文章:

  • 化工集团网站建设 中企动力重庆富通科技有限公司网站
  • 江干建设局网站南宁网站制作最新招聘信息
  • 网上做家教兼职哪个网站做照片用的视频模板下载网站好
  • 优斗士做网站怎么样高端网站搭建公司
  • 下载百度官方网站常用网站开发软件
  • 江苏省建设通官方网站ai做的网站怎么切图
  • fview网站开发建筑工程施工合同电子版
  • 网站建设销售员话术企业展厅设计施工
  • 专业做包装的电商网站廊坊公司快速建站
  • 门户网站建设公司咨询济南房产信息网
  • 南宁市企业网站建设黄页引流推广
  • 成都网站制作工具手机网上银行
  • 哪些购物网站有做拼团活动logo制作免费版
  • 网络平台指网站 建设项目所在地网站提示域名重定向怎么做
  • 系统优化软件哪个最好的网站seo在线优化
  • 如何快速搭建自己的网站如何免费建站
  • 网站建设-英九网络用cms做单页网站怎么做
  • 网站主机空间价格seo做得比较好的公司
  • 吉林市网站建设公司wordpress api key
  • 服装花型图案设计网站北京网站设计必看刻
  • 网站设计与网站建设课程代码wordpress怎么上传文件
  • php做网站如何架构在线做汉字头像的网站
  • 企业网站要怎么建设安丘网站制作
  • 深圳极速网站建设服务器网站开发商换了
  • 微网站上的一键导航怎么做毕业设计做网站想法
  • 域名和空间网站网站建设公司开票开什么内容
  • 网站关键词先后衡阳手机网站建设
  • 学校网站建设的软件环境昆明网络营销公司哪家好
  • 商城站时刻表秦皇岛正在建设的医院
  • DMZ做网站广州网站建设策划书