首页
学习
活动
专区
工具
TVP
发布

Go 技术

关于 Go 语言的技术文章
专栏成员
14
文章
4413
阅读量
11
订阅数
轻松调用腾讯元器 API:我用 Go 语言封装了一个库
腾讯元器 是腾讯混元大模型团队推出的智能体创作工具,方便您通过添加提示词设定、插件、知识库等功能捏出自己喜欢的智能体。除了在官网直接与智能体交互以外,还支持通过 API 方式与智能体进行交互。
陈明勇
2024-06-14
2002
Go 语言 mongox 库:简化操作、安全、高效、可扩展、BSON 构建
在 Go 语言里使用 MongoDB 官方提供的 mongo-go-driver 库进行集合操作时,你是否感到结构体与 MongoDB 集合之间的映射,以及构建 BSON 数据这些操作极其繁琐?特别是在构建 BSON 数据时,各种字段、逗号和括号的排列组合是否让你觉得仿佛在进行一场复杂的拼图游戏?
陈明勇
2024-06-08
1264
Go 语言揭秘:接口类型是 nil 但不等于 nil?
在使用 Go 语言编码的过程中,我们可能会遇到一种情况:当使用接口类型参数(如 any 或 interface{})接收其他参数时,给定的参数值明明是 nil,但是使用不等式判断 x == nil 却不成立,这是为什么?本文将会带你揭秘。
陈明勇
2024-05-30
1540
Go 事件驱动编程:实现一个简单的事件总线
在当今微服务和分布式系统盛行的背景下,事件驱动架构(Event-Driven Architecture,EDA)扮演着一个至关重要的角色,此架构的设计使得服务间可以通过事件进行同步或异步通信,替代了传统的直接接口调用。基于事件的交互方式,促进了服务之间的松耦合,提高系统的可扩展性。
陈明勇
2024-05-13
2550
深入浅出 Go 并发协同等待利器:sync.WaitGroup
本文接下来要介绍的内容与 Go 语言中的 sync.WaitGroup 并发原语有关,它用于等待一组并发操作完成。如果你面临的场景中,需要将一个复杂任务划分为多个子任务,并等待这些子任务执行完毕后(无先后顺序的限制)才能继续后续操作,那么,sync.WaitGroup 是你解决这类场景问题的理想选择。
陈明勇
2024-04-29
1570
从 0 到 1 创建、测试并发布属于自己的 Go 开源库
在日常开发中,我们经常使用由组织或个人开发和维护的第三方开源库,这些库大大提高了我们的开发效率,让我们能够专注于实现业务逻辑而不是重复造轮子。如果你对提高代码复用感兴趣,并希望将自己封装的高质量代码发布为一个开源库,那么这篇文章正是为你准备的。
陈明勇
2024-04-22
1300
Go singleflight 源码剖析
前面的一篇文章 Go singleflight:防缓存击穿利器 详细介绍 singleflight 包的使用,展示如何利用它来避免缓存击穿。而本篇文章,我们来剖析 singleflight 包的源码实现和工作原理,探索单飞的奥秘。
陈明勇
2024-04-16
1970
Go singleflight:防缓存击穿利器
在构建高性能的服务时,缓存是优化数据库压力和提高响应速度的关键技术。使用缓存也会带来一些问题,其中就包括 缓存击穿,它不仅会导致数据库压力剧增,引起数据库性能的下降,严重时甚至会击垮数据库,导致数据库不可用。
陈明勇
2024-04-14
2902
效率提升 80%:go-mongox 让复杂的 BSON 数据编写变得简单
在开发使用 MongoDB 的 Go 应用中,我们避免不了要编写 BSON 格式的数据。对于简单的 BSON 格式数据,我们可以轻松快捷地进行编写。而面对复杂的 BSON 格式数据,我们可能需要自己构建多层嵌套的文档,这不仅耗时而且容易出错,一次微小的遗漏或错误就可能导致无法获得预期的结果,增加了开发的难度和调试的时间。
陈明勇
2024-04-07
2310
Go JWT 全面指南
在当今微服务和分布式系统盛行的背景下,安全、高效的用户身份验证机制显得尤为重要。为了有效管理用户的访问权限并验证用户身份,我们经常会采用各种身份验证方案。而 JSON Web Tokens(JWT)便是其中一种流行的技术,因其简洁、灵活且易于跨语言实现的特性,被广泛应用于系统的身份验证和信息交换。
陈明勇
2024-03-06
4591
Go 1.22 slices 库的更新:高效拼接、零化处理和越界插入优化
Go 1.22 版本于 2024 年 2 月 6 日发布,引入了几个重要的特性和改进。在标准库层面上,该版本对 slices 库进行了更新,更新内容包括以下三个方面:
陈明勇
2024-02-19
7990
Go1.22 for 循环的两处重要更新
Go 1.22 版本于 2024 年 2 月 6 日发布,引入了几个重要的特性和改进。在语言层面上,这个版本对 for 循环进行了两处更新:
陈明勇
2024-02-08
2920
Go 定时器:Timer 和 Ticker
在日常开发中,我们可能会遇到需要延迟执行或周期性地执行一些任务。这个时候就需要用到 Go 语言中的定时器。
陈明勇
2024-01-23
6414
Go 简单设计和实现可扩展、高性能的泛型本地缓存
相信大家对于缓存这个词都不陌生,但凡追求高性能的业务场景,一般都会使用缓存,它可以提高数据的检索速度,减少数据库的压力。缓存大体分为两类:本地缓存和分布式缓存(如 Redis)。本地缓存适用于单机环境下,而分布式缓存适用于分布式环境下。在实际的业务场景中,这两种缓存方式常常被结合使用,以利用各自的优势,实现高性能的数据读取。本文将会探讨如何极简设计并实现一个可扩展、高性能的本地缓存。
陈明勇
2024-01-16
48211
没有更多了
社区活动
AI代码助手快速上手训练营
鹅厂大牛带你玩转AI智能结对编程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档