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

golang
golang专题下共有 13976 篇文章
  • Golang数组与切片区别及扩容解析
    Golang数组与切片区别及扩容解析
    数组是固定长度的数据结构,而切片是对数组的封装,提供动态扩容能力。具体来说,数组声明时需指定长度,存储连续内存空间,而切片包含指向底层数组的指针、长度和容量,实现灵活操作;1.切片扩容策略为:容量小于1024翻倍,大于等于1024增加25%;2.扩容会引发内存分配和拷贝,影响性能,建议预分配容量;3.多个切片可能共享底层数组,修改一个会影响其他切片,需用copy避免副作用;4.使用建议包括优先使用切片、预分配容量、注意截取后的共享问题、减少频繁扩容,并理解数组与切片赋值行为差异。
    Golang· Go教程   |  6个月  |   golang 底层实现 数组 切片 扩容机制 328浏览 收藏
  • Golang实现OAuth2.0第三方登录教程
    Golang实现OAuth2.0第三方登录教程
    1.使用go-oauth2/oauth2搭建认证服务,实现authorize和token接口。2.用coreos/go-oidc对接Google等平台实现第三方登录。3.注意HTTPS、CSRF防护、安全存储token及权限最小化。本文介绍了在Golang中实现OAuth2.0服务的准备工作、基础结构搭建、主流平台集成方式及安全性注意事项,帮助开发者构建稳定且安全的授权流程。
    Golang· Go教程   |  6个月  |   golang 安全性 第三方登录 OAuth2.0 认证服务 479浏览 收藏
  • 用Golang开发Kong网关插件教程
    用Golang开发Kong网关插件教程
    要配置Kong支持Go插件需完成三步:安装KongGateway并确保版本兼容、修改配置启用Go插件运行环境、安装Go并配置go-pdk包;编写Go插件需实现New函数、定义Config结构体及Parse方法、通过Access等方法处理请求逻辑;开发时要注意使用-buildmode=plugin编译、查看日志调试、保持schema与配置一致,并注意缓存问题。
    Golang· Go教程   |  6个月  |   golang 插件 Kong 微服务网关 go-pdk 108浏览 收藏
  • Golang用blackfriday实现Markdown转换器
    Golang用blackfriday实现Markdown转换器
    blackfriday库的核心功能是遵循CommonMark规范将Markdown转换为HTML并支持多种扩展,优势在于高性能、可定制性和广泛的功能集。1.它支持表格、代码块高亮、任务列表等常用扩展,提升内容表现力;2.作为Go原生实现,处理速度快,适合实时渲染和大规模文档处理;3.提供WithExtensions()和WithRenderer()等配置选项,允许启用/禁用特定语法并自定义输出格式;4.可通过实现Renderer接口进行深度定制,满足生成非HTML格式的需求;5.支持禁用原始HTML标签,
    Golang· Go教程   |  6个月  |   golang html 定制 markdown blackfriday 386浏览 收藏
  • Golang实现内存键值缓存系统详解
    Golang实现内存键值缓存系统详解
    1.TTL策略适合大多数场景,LRU适合访问模式不规律的数据,LFU适合数据访问模式稳定的高命中率场景,FIFO实现简单但效果一般。2.使用sync.RWMutex读写锁保证并发安全,允许多个goroutine同时读取缓存但写入时独占锁。3.通过分片锁降低锁竞争概率,利用sync.Pool减少内存分配,压缩数据减少内存占用,并可选用高性能缓存库优化性能。文章介绍了基于Golang内置map和互斥锁实现简易缓存系统的方法,支持过期时间机制并探讨了不同缓存策略的选择及优化手段。
    Golang· Go教程   |  6个月  |   golang 并发安全 缓存系统 过期策略 内存键值 328浏览 收藏
  • Golang中type的两种用法详解
    Golang中type的两种用法详解
    type在Go中有类型定义和类型别名两种核心用途,区别如下:1.类型定义创建全新类型,不能与原类型直接赋值,用于封装、提高可读性和类型安全;2.类型别名仅是已有类型的别名,可互换使用,用于简化表达或重构过渡;此外type还可定义结构体、接口及组合类型命名。
    Golang· Go教程   |  6个月  |   golang type 类型别名 类型定义 377浏览 收藏
查看更多
课程推荐
  • 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次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码