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

golang
golang专题下共有 324 篇文章
  • Golanggoto语句使用规范与跳转限制
    Golanggoto语句使用规范与跳转限制
    goto在Go语言中受到限制,因为它容易导致代码结构混乱,降低可读性和维护性。Go语言设计强调简洁和结构化控制流,因此严格限制goto的使用场景。goto只能在函数内部跳转,且不能跨越变量声明。其主要用途包括跳出多层循环、集中处理错误和实现状态机。使用时应遵循规范:仅在必要时使用、避免向前跳转、保持代码清晰并避免跨越变量声明。尽管goto本身不会显著影响性能,但滥用可能导致代码难以优化,间接影响执行效率。
    Golang· Go教程   |  3星期  |   golang 限制 代码结构 goto语句 使用规范 417浏览 收藏
  • Golang多文件打包与读取教程
    Golang多文件打包与读取教程
    Golang的archive/zip库通过手动处理目录结构实现压缩与解压缩功能。压缩时,addFileToZip函数判断是否为目录并设置相应属性,若为目录则添加斜杠并设置权限;非目录文件则使用zip.Deflate算法压缩,并将文件内容写入zip包中。解压缩时,decompressFile函数根据文件信息判断是否为目录,若是则先创建对应目录结构,再将文件内容写入磁盘。此外,该库不支持密码保护,需使用第三方库如github.com/alexmullins/zip实现;性能优化可通过流式处理、调整压缩级别、并
    Golang· Go教程   |  3星期  |   golang 压缩 性能优化 解压缩 archive/zip 414浏览 收藏
  • Golang对象池对比:sync.Pool与手动管理
    Golang对象池对比:sync.Pool与手动管理
    在Go语言中,实现并发安全的对象池主要有两种方式:使用sync.Pool或手动管理对象池。sync.Pool适用于生命周期短、可重新创建的对象,如缓冲区或结构体实例,其优点包括使用简单、内置并发安全和自动清理机制,但缺点是不保证对象长期存在,不适合持有连接等长期资源;手动实现对象池则适用于需要控制资源总量、复用成本高的对象,如数据库连接,常见实现方式是通过带缓冲的channel,虽然灵活性高且能精细控制生命周期与回收策略,但也需自行处理并发安全、合理设置池大小及对象状态重置逻辑。两者对比来看,sync.P
    Golang· Go教程   |  3星期  |   golang 并发安全 资源管理 对象池 sync.Pool 412浏览 收藏
  • Golang提升DevOps可靠性,蓝绿部署代码详解
    Golang提升DevOps可靠性,蓝绿部署代码详解
    蓝绿部署是一种通过维护两个独立环境实现零停机更新的策略。其核心在于新版本先部署到非活跃环境,测试通过后切换流量以实现无缝更新。使用Golang实现蓝绿部署时,可通过结构体模拟环境状态,并编写部署与流量切换逻辑。实际部署中需关注以下关键点:1.使用基础设施即代码工具保障环境一致性;2.采用兼容或可逆的数据库迁移策略;3.根据平台选择合适的流量切换方式如KubernetesService、云服务TargetGroup或Nginx配置;4.部署后实施健康检查与监控告警机制。此外还需考虑负载均衡配置、日志记录、自
    Golang· Go教程   |  3星期  |   golang DevOps 蓝绿部署 部署可靠性 流量切换 409浏览 收藏
  • Golang错误处理与自动恢复方案解析
    Golang错误处理与自动恢复方案解析
    处理临时性错误的核心是识别可恢复错误后进行带退避的重试,结合上下文超时控制,重试失败则触发降级逻辑,同时引入熔断器防止雪崩,并通过日志与监控保障可观测性,从而提升系统稳定性与用户体验,最终形成“识别→重试→超时→降级→熔断→监控”的完整弹性处理链路。
    Golang· Go教程   |  2星期  |   golang 自动重试 熔断器 临时性错误 降级逻辑 409浏览 收藏
  • Golang令牌桶算法实现API限流详解
    Golang令牌桶算法实现API限流详解
    使用Golang实现API限流的推荐方法是采用golang.org/x/time/rate包实现令牌桶算法,该方法每秒生成10个令牌、桶容量为20,通过限流中间件对每个IP进行并发控制,结合sync.RWMutex保证并发安全,并可扩展支持动态配置与分布式限流,最终构建稳定的API防护体系。
    Golang· Go教程   |  2星期  |   golang 并发安全 令牌桶算法 API限流 golang.org/x/time/rate 409浏览 收藏
查看更多
课程推荐
  • 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次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码