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

golang
golang专题下共有 11880 篇文章
  • Golang防腐层实现:隔离外部依赖转换策略
    Golang防腐层实现:隔离外部依赖转换策略
    防腐层模式在Go中通过适配器实现,核心是定义适配器接口并为每个外部系统实现具体适配器。1.定义核心领域模型,如User结构体;2.定义适配器接口,声明所需操作;3.实现具体适配器,处理外部系统调用与数据转换;4.在业务逻辑中依赖适配器接口;5.使用依赖注入切换适配器。策略选择取决于外部系统复杂度和数据需求,性能优化可通过缓存、批量处理、并行及优化转换逻辑实现。接口变更时只需修改适配器,不影响核心逻辑。该模式并非适用于所有场景,适合频繁集成且外部系统多变的情况。
    Golang· Go教程   |  16小时  |   golang 适配器 外部依赖 防腐层模式 领域模型 219浏览 收藏
  • Golang反射指针处理与Value使用详解
    Golang反射指针处理与Value使用详解
    在Golang反射系统中,指针主要通过reflect.Value体现和操作。1.reflect.Value可持有指针类型值,但仅代表指针本身而非所指值;2.使用Elem()方法解引用获取指针指向的实际值,若非指针或接口则panic;3.修改指针指向的值需确保reflect.Value满足可修改条件(如变量地址、可导出字段等);4.多重指针需多次调用Elem()访问最终值;5.可使用reflect.New()创建指针类型的值;6.结构体嵌套指针需逐层解引用访问字段。
    Golang· Go教程   |  16小时  |   golang 指针 反射 reflect.Value Elem() 138浏览 收藏
  • Golang单例实现:sync.Once与atomic原理解析
    Golang单例实现:sync.Once与atomic原理解析
    实现并发安全的单例模式的关键在于确保多线程环境下仅创建一个实例且过程线程安全,Golang中常用sync.Once或atomic包实现。1.sync.Once通过once.Do保证初始化函数仅执行一次,适合大多数场景;2.使用atomic包结合双重检查锁定可实现类似效果,但更复杂且易出错,不推荐常规使用。sync.Once底层依赖原子操作与互斥锁结合,确保唯一goroutine执行初始化。对于耗时初始化,可通过懒加载、异步初始化、分阶段初始化、缓存或预热优化,以减少阻塞和提升性能。
    Golang· Go教程   |  16小时  |   golang 并发安全 单例模式 sync.Once atomic 348浏览 收藏
  • 用Golang开发云原生批处理,ArgoWorkflows插件实战分享
    用Golang开发云原生批处理,ArgoWorkflows插件实战分享
    Golang批处理框架与ArgoWorkflows集成的优势在于利用Go的高效并发、Kubernetes的云原生能力及Argo的声明式工作流管理。1.Go的goroutine和channel机制实现任务调度与执行的高并发;2.通过Kubernetes实现容器化部署与自动伸缩;3.ArgoWorkflows提供可视化工作流定义与插件扩展机制;4.结合元数据存储、API接口与监控日志系统,构建完整高效的批处理平台。
    Golang· Go教程   |  17小时  |   golang 云原生 批处理 Kubernetes ArgoWorkflows 484浏览 收藏
  • Golang指针逃逸优化技巧详解
    Golang指针逃逸优化技巧详解
    在Go语言中,减少指针逃逸的核心方法包括:①明确变量作用域,将变量定义在函数内部;②优先使用值传递而非指针传递(尤其小型结构体);③利用sync.Pool重用频繁创建的对象;④避免闭包捕获指针变量;⑤不将局部变量赋值给全局变量;⑥使用strings.Builder优化字符串拼接;⑦预分配切片容量以减少扩容;⑧通过gobuild-gcflags'-m'分析逃逸情况。这些做法可有效降低堆内存分配频率,减轻GC压力,从而提升程序性能。
    Golang· Go教程   |  18小时  |   golang 性能优化 GC压力 栈分配 指针逃逸 247浏览 收藏
  • Golang并发缓存过期与LRU清理方法
    Golang并发缓存过期与LRU清理方法
    要实现Go中并发安全且支持定时清理和LRU淘汰的缓存,可组合使用标准库并设计结构。1.使用sync.RWMutex+map保障并发安全;2.每个条目记录过期时间,后台goroutine定期删除过期项;3.用container/list实现LRU,通过链表+哈希映射维护访问顺序;4.插入时更新顺序并判断容量,结合定时清理实现双重机制共存。
    Golang· Go教程   |  19小时  |   golang 并发缓存 缓存过期 LRU淘汰 102浏览 收藏
查看更多
课程推荐
  • 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通道如何传递数据,反射等等。
    128次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码