运维八一 运维八一
首页
运维杂记
编程浅尝
周积跬步
专栏
生活
关于
收藏
  • 分类
  • 标签
  • 归档
Source (opens new window)

运维八一

运维,运维!
首页
运维杂记
编程浅尝
周积跬步
专栏
生活
关于
收藏
  • 分类
  • 标签
  • 归档
Source (opens new window)
  • Go

    • 前言

    • Go基础知识

    • Go基本语法

    • 实战项目:简单web服务

    • 基本数据类型

    • 内置运算符

    • 分支和循环

    • 函数 function

    • 结构体 struct

    • 方法 method

    • 实战项目:跟踪函数调用链

      • v0_1 使用 defer 跟踪函数的执行过程
      • v0_2 自动获取所跟踪函数的函数名
      • v0_3 增加 Goroutine 标识
      • v0_4 让输出的跟踪信息更具层次感
      • v0_5 利用代码生成自动注入 Trace 函数
      • 总结
        • 总结
    • 接口 interface

    • 并发 concurrency

    • 指针

    • 实战项目:实现轻量级线程池

    • 实战项目:实现TCP服务器

    • go常用包

    • Gin框架

    • go随记

  • Python

  • Shell

  • Java

  • Vue

  • 前端

  • 编程浅尝
  • Go
  • 实战项目:跟踪函数调用链
lyndon
2022-06-07
目录

总结

# 总结

关于这个实战项目,有两点注意事项:

  • 第一,在代码中注入函数调用跟踪代码仅适用于日常调试代码和阅读理解代码时使用,被注入了跟踪设施的代码是不适合上生产环境的;
  • 第二,在这里使用到了 Go 核心团队不推荐使用的 Goroutine id,这也是由这个实战项目的性质所决定的。如果代码是上生产,建议还是尽量听从 Go 核心团队的建议,不要依赖 Goroutine ID。
上次更新: 2022/06/12, 15:48:09
v0_5 利用代码生成自动注入 Trace 函数
接口类型

← v0_5 利用代码生成自动注入 Trace 函数 接口类型→

最近更新
01
ctr和crictl显示镜像不一致
03-13
02
alpine镜像集成常用数据库客户端
03-13
03
create-cluster
02-26
更多文章>
Theme by Vdoing | Copyright © 2015-2024 op81.com
苏ICP备18041258号-2
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式