Go教程技术文章

  • 低延迟Golang网关开发详解
    低延迟Golang网关开发详解
    用net包裸写TCP/UDP服务+goroutine池+零拷贝解析是ARM64边缘设备实现sub-10ms延迟最可靠方式,因HTTP/gin等框架引入3–50ms调度与序列化开销,不适用于设备直连网关场景。
    Golang · Go教程   |  4个月前  |   360浏览 收藏
  • Golang结构体对齐优化内存使用
    Golang结构体对齐优化内存使用
    网关结构体字段顺序不合理会导致单实例多占30%~50%内存,因高频创建、批量分配及缓存行失效加剧GC压力与延迟;需按对齐优先级(8字节>4字节>1/2字节)重排字段,并用unsafe.Sizeof和Offsetof验证padding。
    Golang · Go教程   |  4个月前  |   417浏览 收藏
  • Golang静态资源服务怎么处理
    Golang静态资源服务怎么处理
    http.FileServer直接挂载根路径会404,因其严格匹配请求路径前缀且不自动补全斜杠;正确方式是用http.StripPrefix("/static/",fs)映射子路径,并注意尾部斜杠、绝对路径和缓存控制。
    Golang · Go教程   |  4个月前  |   481浏览 收藏
  • Go语言解析嵌套JSON结构体详解
    Go语言解析嵌套JSON结构体详解
    本文详解如何在Go中将JSON数据准确解析为分层结构体,重点解决因字段可见性、类型定义或解码参数错误导致的空数组问题,并提供可运行示例与最佳实践。本文详解如何在Go中将JSON数据准确解析为分层结构体,重点解决因字段可见性、类型定义或解码参数错误导致的空数组问题,并提供可运行示例与最佳实践。在Go语言中,将JSON字符串反序列化为结构体是常见操作,但初学者常因结构体字段可见性、嵌套定义或json.Unmarshal调用方式不当,导致解析失败(如Gatewa
    Golang · Go教程   |  4个月前  |   486浏览 收藏
  • Go语言实现请求重试机制:指数退避与最大次数控制
    Go语言实现请求重试机制:指数退避与最大次数控制
    retry.Attempts(3)表示总共执行3次(含首次),即最多重试2次;需写retry.Attempts(4)才能重试3回;必须配retry.Context(ctx)响应取消、retry.DelayType(retry.BackOffDelay)启用指数退避、retry.RetryIf过滤错误,且HTTP重试须克隆Body并区分临时性错误。
    Golang · Go教程   |  4个月前  |   golang Go语言 397浏览 收藏
  • GolangMutex与RWMutex使用详解
    GolangMutex与RWMutex使用详解
    在Golang中,sync.Mutex和sync.RWMutex用于解决并发访问共享资源时的数据竞争问题,1.sync.Mutex是互斥锁,同一时间只允许一个goroutine访问临界区,适用于读写频率相近或写较多的场景,典型应用包括保护共享变量、结构体字段和配合sync.Once进行一次性初始化;2.sync.RWMutex是读写锁,允许多个读操作并发执行但写操作独占,适用于读远多于写的场景如配置管理、缓存系统和状态监控,能显著提升并发性能;3.选择时应根据读写比例决定,读写接近用Mutex,读远多于写
    Golang · Go教程   |  4个月前  |   347浏览 收藏
  • Go语言GOPATH设置详解
    Go语言GOPATH设置详解
    Go1.16+默认启用Modules,GOPATH非项目必需,但goinstall、goget(非模块)等仍依赖它;未设或设错会导致安装失败、路径报错等问题。
    Golang · Go教程   |  4个月前  |   368浏览 收藏
  • Golang路由分发实现全解析
    Golang路由分发实现全解析
    Golang中实现路由分发可通过标准库net/http或第三方框架。使用http.ServeMux可注册路径处理器,支持基本匹配;手动解析URL可实现动态路由如/post/123;推荐使用Gin等框架,支持参数提取、正则约束与组路由;也可自定义简易路由器理解原理,通过方法+路径映射处理函数。项目中应根据复杂度选择方案,学习用标准库,生产用Gin或Echo。
    Golang · Go教程   |  4个月前  |   464浏览 收藏
  • Golang文件缓存实现:内存与HTTP策略详解
    Golang文件缓存实现:内存与HTTP策略详解
    Go文件缓存分内存层(map+sync.RWMutex或第三方库)和HTTP层(ETag/Last-Modified/Cache-Control),协同降低IO压力与带宽消耗;内存缓存适用于中小规模静态文件,需配合过期清理与写时失效。
    Golang · Go教程   |  4个月前  |   360浏览 收藏
  • K8sCRDController-Runtime实战教程
    K8sCRDController-Runtime实战教程
    CRDYAML必须用spec.versions数组(非弃用的spec.version),每个版本含name、served、storage字段,且仅一个设storage:true;OpenAPIv3类型需严格书写(如integer非int);controller-runtime中需显式AddToScheme并确保类型与CRDgroup/kind完全匹配;OwnerReference应用meta.IsControlledBy校验;Webhook的caBundle必须正确注入ValidatingWebhookC
    Golang · Go教程   |  4个月前  |   122浏览 收藏
  • Golang数据库抽象层实现方法
    Golang数据库抽象层实现方法
    Go数据库最佳实践是分层抽象:用标准sql.DB/sql.Tx作为契约,按业务定义窄接口,SQL外置模板化管理,驱动注册与连接池配置分离,事务显式传递,方言差异用buildtag处理。
    Golang · Go教程   |  4个月前  |   445浏览 收藏
  • Golangstrings.Join字符串拼接技巧
    Golangstrings.Join字符串拼接技巧
    strings.Join用于高效拼接字符串切片,通过指定分隔符连接元素。其函数签名为funcJoin(elems[]string,sepstring)string,参数elems为待拼接的字符串切片,sep为分隔符,返回拼接后的完整字符串。例如用逗号和空格拼接["Alice","Bob","Charlie"]得到"Alice,Bob,Charlie"。该方法适用于生成CSV行、构建URL路径、组合日志信息及构造SQL查询等场景。使用时需确保切片类型为[]string,非字符串类型需先转换;若切片为空则返回
    Golang · Go教程   |  4个月前  |   161浏览 收藏
  • Golang默认配置合并技巧
    Golang默认配置合并技巧
    viper支持默认值、文件配置、环境变量三者叠加,但需按顺序调用SetDefault(加载前)、ReadInConfig(中间)、BindEnv(加载后)才能实现“环境变量>文件>默认值”的正确优先级,否则覆盖失效。
    Golang · Go教程   |  4个月前  |   223浏览 收藏
  • Go语言工作池实现全解析
    Go语言工作池实现全解析
    工作池是解决goroutine失控的节流阀:固定worker数、带缓冲channel、显式生命周期管理三者缺一不可;缓冲区大小需权衡背压与积压,sync.WaitGroup必须指针传递且Add在go前调用,关闭jobs后需wg.Wait再closeresults。
    Golang · Go教程   |  4个月前  |   245浏览 收藏
  • Golang指针方法:值接收者与指针接收者区别
    Golang指针方法:值接收者与指针接收者区别
    指针类型方法本质是定义在指针类型(如T或typePT)上的方法;值接收者无法修改原始值,指针接收者可修改;Go自动处理取址/解引用,但接口实现和不可寻址值受限。
    Golang · Go教程   |  4个月前  |   237浏览 收藏
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
查看更多
AI推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    375次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    445次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    452次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    398次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    224次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码