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

golang
golang专题下共有 14425 篇文章
  • Golang正确封装第三方错误方法解析
    Golang正确封装第三方错误方法解析
    Golang处理第三方库错误的核心在于封装第三方错误类型以提升代码健壮性和维护性。1.通过自定义错误结构体(如MyError)实现error接口,并保存原始错误以供调试;2.调用第三方库时返回自定义错误,隐藏其实现细节;3.使用errors.Is和errors.As判断错误类型和获取特定错误信息;4.实现Unwrap方法支持错误链处理;5.遵循错误处理最佳实践,如不忽略错误、尽早返回、提供上下文、使用错误码;6.避免过度封装,仅在必要时进行封装;7.可使用预定义错误对象优化性能;8.利用errgroup.
    Golang· Go教程   |  1年  |   golang 自定义错误 错误链 错误封装 第三方错误 355浏览 收藏
  • Golang数据库连接池优化技巧详解
    Golang数据库连接池优化技巧详解
    确定合适的Golang数据库连接池配置需根据应用负载、数据库性能及资源限制进行调整。1.了解数据库最大连接数及硬件资源,避免过载;2.分析应用并发模式,I/O密集型可适当增加连接数,CPU密集型则效果有限;3.初始连接池大小建议设为CPU核心数的2-3倍,并通过性能测试验证;4.设置最大空闲连接数约为最大连接数的一半,减少连接创建延迟;5.使用SetMaxOpenConns、SetMaxIdleConns和SetConnMaxLifetime配置连接池参数;6.连接超时建议几秒内,空闲超时根据负载设置几分
    Golang· Go教程   |  1年  |   golang 优化 数据库连接池 重试机制 连接池配置 355浏览 收藏
  • Golang闭包实现备忘录模式教程
    Golang闭包实现备忘录模式教程
    备忘录模式在Golang中可通过闭包实现,用于保存和恢复对象状态而不破坏封装性。1.通过结构体方法返回闭包函数捕获并保存状态;2.闭包调用时还原状态,避免显式定义Memento结构;3.常用于撤销操作、游戏存档、事务处理等场景;4.注意性能问题、避免保存指针、可用slice管理多个快照;5.对于复杂状态或长期服务需谨慎使用,必要时应采用深度拷贝或显式结构体。这种方式简洁灵活,但不适用于所有情况。
    Golang· Go教程   |  1年  |   golang 备忘录模式 355浏览 收藏
  • Golang热更新配置技巧全解析
    Golang热更新配置技巧全解析
    在Golang中实现配置热更新的方法是使用fsnotify库监控文件变化并重新加载配置。1.使用fsnotify监听配置文件的修改事件;2.在事件触发时调用配置重载函数;3.选择合适的配置格式(如YAML、JSON)并使用解析库加载配置;4.使用sync.RWMutex确保并发安全;5.处理错误并考虑使用默认配置或重试机制应对加载失败;6.可选定期轮询或操作系统底层API实现文件监控,但推荐使用封装好的fsnotify。
    Golang· Go教程   |  1年  |   golang 配置文件 并发安全 热更新 fsnotify 355浏览 收藏
  • Golang指针推荐原因及大对象优化解析
    Golang指针推荐原因及大对象优化解析
    在Go语言中,是否使用指针取决于数据大小和修改需求。1.当函数需要修改外部变量或处理大对象时,推荐使用指针以避免内存拷贝,提升性能;2.对于小型对象且无需修改原始数据的情况,值传递更简单安全;3.指针使用需注意空指针检查、数据竞争防护及生命周期管理;4.接口方法接收者为指针类型时,仅指针类型可实现该接口;5.除性能外,指针还用于修改外部变量、处理nil值及实现复杂数据结构。基准测试表明,大型结构体通过指针传递通常比值传递更快。
    Golang· Go教程   |  1年  |   golang 指针 性能优化 数据竞争 内存拷贝 355浏览 收藏
  • Golang 函数:如何取消长时间运行的上下文
    Golang 函数:如何取消长时间运行的上下文
    在Go中,取消长时间运行的Context可通过调用context.CancelFunc返回的函数实现,以下为取消Context的步骤:创建一个带超时时间的子上下文。在goroutine中循环监听上下文是否被取消,并在取消时停止运行。在主goroutine中调用CancelFunc取消上下文。
    Golang· Go教程   |  1年  |   golang 函数 355浏览 收藏
查看更多
课程推荐
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
    339次学习
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    205次学习
  • Go编程基础视频教程
    Go编程基础视频教程
    Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
    168次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    129次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码