当前位置:首页 > 文章列表 >golang

golang
golang专题下共有 12462 篇文章
  • Go语言信号处理失败?手把手教你实现信号监听机制
    Go语言信号处理失败?手把手教你实现信号监听机制
    Golang系统信号处理失败的解决方法包括正确注册信号、避免阻塞、合理处理逻辑。首先,要确保使用signal.Notify函数将所需信号(如SIGINT、SIGTERM)注册到指定channel;其次,避免在信号处理函数中执行耗时操作,必要时应启用goroutine异步处理;最后,检查信号处理逻辑是否完整,确保程序行为正常。此外,为实现复杂信号处理,可采用workerpool模式,通过JobQueue分发任务给多个worker,提升响应效率。优雅关闭程序则可通过context包实现,在接收到信号后通知所有
    Golang· Go教程   |  2个月  |   golang Goroutine 信号处理 context signal.Notify 201浏览 收藏
  • Golanghttptest实战:HTTP接口测试教程
    Golanghttptest实战:HTTP接口测试教程
    使用Golang测试HTTPAPI接口的关键在于模拟请求并验证响应。1.导入net/http、net/http/httptest和testing包;2.创建HTTP处理程序;3.使用httptest.NewRequest创建测试请求,设置方法、URL、头部和请求体;4.使用httptest.NewRecorder创建响应记录器;5.调用处理程序并传入请求与响应记录器;6.验证状态码、头部和响应体是否符合预期;7.编写测试函数封装上述步骤。此外,httptest可用于测试复杂场景,如POST请求、头部、Co
    Golang· Go教程   |  2个月  |   golang 201浏览 收藏
  • Golang命令行工具测试方法分享
    Golang命令行工具测试方法分享
    测试Golang命令行工具的核心在于模拟输入和捕获输出。1.使用bytes.Buffer模拟os.Stdin,将输入内容写入缓冲区并替换os.Stdin;2.利用os.Pipe更精确控制输入输出流,提升测试健壮性;3.通过重定向os.Stdout/os.Stderr并读取管道内容来捕获程序输出;4.使用testify/assert库简化断言逻辑,提高测试代码可读性和可维护性。这些方法共同确保命令行工具在各种场景下的行为符合预期。
    Golang· Go教程   |  2个月  |   golang 命令行工具测试 os.Stdin os.Stdout os.Pipe 201浏览 收藏
  • 用Golang高效开发K8s控制器的实战经验
    用Golang高效开发K8s控制器的实战经验
    编写高效Kubernetes控制器需遵循以下步骤:1.理解控制器机制,利用Informer监听资源变化,Lister读取缓存,Clientset执行写操作;2.使用SharedInformerFactory统一管理多资源监听,提升性能与维护性;3.处理事件时采用workqueue实现并发安全、幂等处理及限速重试;4.合理使用Lister缓存降低APIServer压力并设置合适Resync时间;5.完善错误处理机制,结合workqueue延迟重试确保控制器稳定性。
    Golang· Go教程   |  1个月  |   golang client-go Informer workqueue K8s控制器 201浏览 收藏
  • 深入理解Golangchannel的应用
    深入理解Golangchannel的应用
    channel 的底层是通过 mutex 来控制并发的,但它为程序员提供了更高一层次的抽象,封装了更多的功能,这样并发编程变得更加容易和安全,得以让程序员把注意力留到业务上去,提升开发效率 c
    Golang· Go教程   |  2年  |   channel· golang 200浏览 收藏
  • Golang Mutex互斥锁源码分析
    Golang Mutex互斥锁源码分析
    说明:本文中的示例,均是基于Go1.17 64位机器 Mutex 特性 Mutex 就是一把互斥锁,可以想象成一个令牌,有且只有这一个令牌,只有持有令牌的 goroutine 才能进入房间(临界区),在房
    Golang· Go教程   |  2年  |   Mutex· 互斥锁· golang 200浏览 收藏
查看更多
课程推荐
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
    338次学习
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    204次学习
  • Go编程基础视频教程
    Go编程基础视频教程
    Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
    167次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    129次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码