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

golang
golang专题下共有 1417 篇文章
  • Go语言信号处理失败?手把手教你实现信号监听机制
    Go语言信号处理失败?手把手教你实现信号监听机制
    Golang系统信号处理失败的解决方法包括正确注册信号、避免阻塞、合理处理逻辑。首先,要确保使用signal.Notify函数将所需信号(如SIGINT、SIGTERM)注册到指定channel;其次,避免在信号处理函数中执行耗时操作,必要时应启用goroutine异步处理;最后,检查信号处理逻辑是否完整,确保程序行为正常。此外,为实现复杂信号处理,可采用workerpool模式,通过JobQueue分发任务给多个worker,提升响应效率。优雅关闭程序则可通过context包实现,在接收到信号后通知所有
    Golang· Go教程   |  2个月  |   golang Goroutine 信号处理 context signal.Notify 201浏览 收藏
  • Go语言实战|手把手教你搭建RBAC权限管理系统
    Go语言实战|手把手教你搭建RBAC权限管理系统
    在Golang中实现RBAC需要定义角色、权限和用户并建立其关系,具体步骤包括:1.定义User、Role和Permission结构体;2.建立角色与权限、用户与角色的关联;3.编写权限验证函数。设计灵活模型应考虑角色分层、权限细化、资源权限和动态权限。在Web应用中可通过中间件集成RBAC实现请求级别的权限控制。性能优化方法包括缓存、索引、权限预加载和策略模式,其中缓存是最有效的手段。
    Golang· Go教程   |  2个月  |   golang 权限 角色 权限控制 RBAC 253浏览 收藏
  • Go语言必备!手把手教你玩转JSON序列化与反序列化
    Go语言必备!手把手教你玩转JSON序列化与反序列化
    在Golang中高效处理JSON的关键是选择合适工具和优化流程。1.优先使用标准库encoding/json,适用于大多数场景;性能敏感应用可选用第三方库jsoniter以提升效率。2.利用结构体标签控制序列化行为,如omitempty控制空字段不被序列化。3.避免频繁内存分配,重用缓冲区并使用流式处理减少内存压力。4.对未知字段使用json.RawMessage实现延迟解析。5.自定义时间戳等复杂类型的序列化逻辑,通过实现Marshaler与Unmarshaler接口完成。6.处理嵌套结构时,内部结构体
    Golang· Go教程   |  2个月  |   golang JSON 反序列化 序列化 encoding/json 240浏览 收藏
  • Go语言实战:手把手教你解决OAuth2令牌刷新失败问题
    Go语言实战:手把手教你解决OAuth2令牌刷新失败问题
    令牌刷新失败常见原因及解决方法:1.检查刷新令牌是否有效,过期或撤销需重新授权;2.核对客户端ID/密钥是否正确;3.验证权限范围是否一致;4.排查网络连接问题;5.分析错误日志定位问题;6.实现重试机制并限制次数;7.检查授权服务器配置;8.使用封装的刷新逻辑与自定义TokenSource优雅处理刷新流程。
    Golang· Go教程   |  2个月  |   golang 错误处理 OAuth2 令牌刷新 TokenSource 263浏览 收藏
  • Go语言性能优化攻略:超实用提速技巧大放送
    Go语言性能优化攻略:超实用提速技巧大放送
    Golang性能优化需从多方面入手。1.Profiling和Benchmarking:使用gotoolpprof分析CPU和内存瓶颈,通过gotest-bench=.进行基准测试;2.并发控制:合理管理Goroutine数量,避免过度调度,可使用sync.WaitGroup或channel控制并发;3.内存管理:减少不必要的内存分配,使用sync.Pool复用临时对象以降低GC压力;4.数据结构选择:根据场景选择slice、map、list等合适的数据结构;5.算法优化:采用时间复杂度更低的算法提升性能;
    Golang· Go教程   |  2个月  |   golang 内存管理 性能优化 并发控制 pprof 450浏览 收藏
  • Go语言那些事儿:手把手教你玩转结构体方法与使用技巧
    Go语言那些事儿:手把手教你玩转结构体方法与使用技巧
    Golang结构体方法是绑定在结构体上的函数,通过接收者指定作用对象,支持值接收者和指针接收者两种形式。1.值接收者操作结构体副本,不影响原数据;2.指针接收者操作结构体本身,可修改原始值;3.方法集规则决定调用权限,T的方法集包含receiver为T的方法,*T还包含receiver为*T的方法;4.结构体方法可用于封装行为、实现接口与多态、链式调用及组合嵌入等面向对象特性;5.使用时需注意初始化结构体、避免空指针、选择合适接收者及防止循环引用等问题。
    Golang· Go教程   |  2个月  |   golang 结构体 170浏览 收藏
查看更多
课程推荐
  • 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次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码