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

网站的后台怎么做杭州seo哪家好

网站的后台怎么做,杭州seo哪家好,一级a做爰全过程片老鸭子网站,网站频道运营怎么做Go 自带接口性能分析工具 pprof,较为常用的有以下 4 种分析: CPU Profiling: CPU 分析,按照一定的频率采集所监听的应用程序 CPU(含寄存器)的使用情况,可确定应用程序在主动消耗 CPU 周期时花费时间的位置…

Go 自带接口性能分析工具 pprof,较为常用的有以下 4 种分析:

  • CPU Profiling: CPU 分析,按照一定的频率采集所监听的应用程序 CPU(含寄存器)的使用情况,可确定应用程序在主动消耗 CPU 周期时花费时间的位置;
  • Memory Profiling: 内存分析,在应用程序进行堆分配时记录堆栈跟踪,用于监视当前和历史内存使用情况,以及检查内存泄漏;
  • Block Profiling: 阻塞分析,记录 goroutine 阻塞等待同步(包括定时器通道)的位置;
  • Mutex Profiling: 互斥锁分析,报告互斥锁的竞争情况。

接入方式:

package mainimport ("net/http"_ "net/http/pprof"
)func main() {http.ListenAndServe("0.0.0.0:6060", nil)
}

它使用默认的 http.DefaultServeMux 结构,注册了 /debug/pprof/ 路由,在浏览器访问可以访问 CPU/Memory/Block/Mutex/Goroutine 等性能分析页面。

对于线上服务来说,需要针对该路由做好限制,否则可能直接暴露到系统外部,造成数据安全问题。

如果是内部服务,自己电脑的浏览器看不到页面,就很麻烦了。而 Pyroscope 这个项目就非常爽~

它有一个非常漂亮的 UI 界面,展示 Agent 采集的数据,能直观地展示程序各个函数的调用耗时,从而找出性能瓶颈。

架构图如下:

在这里插入图片描述

接入方式也非常简单,本地搭建服务的话(macOS),输入以下命令:

brew install pyroscope-io/brew/pyroscope
pyroscope server

对应的服务需要加入以下代码:

package mainimport ("github.com/pyroscope-io/client/pyroscope"
)func initPyroScope() {runtime.SetMutexProfileFraction(5)runtime.SetBlockProfileRate(5)_, _ = pyroscope.Start(pyroscope.Config{ApplicationName: app.ServerName,                 // 应用名称ServerAddress:   "http://pyroscope.test.com.cn", // 上报地址Logger:          pyroscope.StandardLogger,Tags:            map[string]string{"hostname": os.Getenv("HOSTNAME")},ProfileTypes: []pyroscope.ProfileType{pyroscope.ProfileCPU,pyroscope.ProfileAllocObjects,pyroscope.ProfileAllocSpace,pyroscope.ProfileInuseObjects,pyroscope.ProfileInuseSpace,pyroscope.ProfileGoroutines,pyroscope.ProfileMutexCount,pyroscope.ProfileMutexDuration,pyroscope.ProfileBlockCount,pyroscope.ProfileBlockDuration,},})
}func main() {initPyroScope()// ...
}

其中,ApplicationNameServerAddress 需要自行替换。

如果是本地,ServerAddress 请改成 "http://127.0.0.1:4040",接着运行 benchmark 压测:

ab -c 100 -n 10000 'http://127.0.0.1:8099/api/xxx-service/v1/yyy/get_test?gid=23333'

可以得到火焰图(好漂亮啊):

火焰图1

此时可以看到最耗时的是 HTTP 服务的调用,还有 JSON 的序列化:

火焰图2

说明我们的程序接口,在某个输入参数的情况下,没有出现逻辑上的瓶颈。

我们可以多变换输入参数,根据业务逻辑找到最复杂最消耗性能的模块,有针对性进行性能优化。


文章来源于本人博客,发布于 2022-06-12,原文链接:https://imlht.com/archives/391/

http://www.mmbaike.com/news/88.html

相关文章:

  • 拉了专线可以直接做网站吗优化关键词是什么意思
  • 柳市专业网站托管seo黑帽技术有哪些
  • 龙华做网站公司2023广东又开始疫情了吗
  • 苏州建设网站找网络公司软件开发app制作公司
  • 湖南易图做推广送网站推广软件
  • 天津专业做网站的公司有哪些湖南网站设计外包费用
  • 页面菜单 wordpressseo网站培训班
  • 网站建设需要什么技术网址大全是ie浏览器吗
  • c2b做的好的网站中国万网域名注册服务内容
  • 100个免费推广网站下载网站google搜索优化
  • 企业在网站建设上的不足seo文章范文
  • 在线设计网站免费惊艳的网站设计
  • 安徽网站建设网站运营广州seo站内优化
  • 用sublime text做网站网络推广怎么找客户资源
  • wordpress免邮箱注册seo需要什么技术
  • 怎么获取图片到wordpress建站seo推广
  • 想弄个网站谷歌seo优化公司
  • 简道云crm管理系统深圳排名seo公司
  • 网站建设与优化计入什么科莫windows优化大师如何卸载
  • 昌平网站建设网站注册时间查询
  • 帮企业做网站赚钱吗福州搜索排名提升
  • wordpress修改文章页面模板最新seo新手教程
  • 成都高新区国土规划建设局网站谷歌chrome官网
  • 西安网站公司建设上海百度推广排名优化
  • 怎么做网站的seo活动推广朋友圈文案
  • 编程网站开发关联词有哪些小学
  • 自己家的电脑宽带50m做网站服务器百度软文推广怎样收费
  • 网站搭建 审查如何进行搜索引擎的优化
  • 广州做网站建设哪家公司好微信营销方法
  • 西乡做网站公司深圳全网推广排名