Go问答技术文章

  • 在 Go 中加速 JSON 解析
    在 Go 中加速 JSON 解析
    问题内容 我们有事务日志文件,其中每个事务都是 JSON 格式的单行。我们经常需要选择部分数据,执行一次转换,然后以特定格式将结果输入另一个系统。我编写了一个 Python 脚本来满足我
    Golang · Go问答   |  3年前  |   golang · golang 398浏览 收藏
  • gRPC 封装 HTTP 服务如何做参数校验?
    gRPC 封装 HTTP 服务如何做参数校验?
    问题内容目前我需要在Node写的RPC服务上封装HTTP服务,没有什么业务封装,就是纯粹的转发,我自己是 Go,用的iris,RPC服务是另一位同事写的。我的想法:参数应该在靠近数据库的一层进行校验
    Golang · Go问答   |  3年前  |   微服务 · gRPC · go · golang 398浏览 收藏
  • go语言,一个redis存json字符串问题?
    go语言,一个redis存json字符串问题?
    问题内容在项目场景中,常为了隐藏某个变量,不暴露给前端,会使用结构体中的json:"-"标签去处理。如密码之类的在对这个结构体转json串存redis,再取出时,密码已经不见,往往服务端做业务
    Golang · Go问答   |  3年前  |   go · 后端 · golang 398浏览 收藏
  • 一项并发任务失败后如何让兄弟任务收敛:用 errgroup 组织首错与取消
    一项并发任务失败后如何让兄弟任务收敛:用 errgroup 组织首错与取消
    多个 Goroutine 并发执行时,errgroup 可以把首个错误、兄弟任务取消和统一等待放进同一条收敛链。本文给出可直接改造的 Go 写法,并说明 Context 必须传到真正执行 I/O 的位置。
    Golang · Go问答   |  1天前  |   397浏览 收藏
  • Go 结构体复制后锁为什么会出问题:值接收者与 sync.Mutex 的所有权边界
    Go 结构体复制后锁为什么会出问题:值接收者与 sync.Mutex 的所有权边界
    解释带 sync.Mutex 的结构体为什么不能随意复制,比较值接收者、指针接收者和容器传参的差异,并给出可运行的验收方法。
    Golang · Go问答   |  1星期前  |   标准库 · 并发编程 · Go问答 · Go 并发安全 sync.Mutex 值接收者 结构体复制 397浏览 收藏
  • Go HTTP 请求超时怎么处理:context.WithTimeout 的最小配方与常见坑
    Go HTTP 请求超时怎么处理:context.WithTimeout 的最小配方与常见坑
    Go 服务调用 HTTP、数据库或 RPC 时,超时不能只靠客户端等待。本文用 context.WithTimeout 给请求链路加上可传播的截止时间,并说明 cancel、父子 Context、select 和错误判断的常见坑。
    Golang · Go问答   |  1个月前  |   golang · HTTP · Context · 并发编程 · context.Context context.WithTimeout Go HTTP 超时 397浏览 收藏
  • 打印后台处理程序概念/API 和通道:将作业从serveHTTP 传递到队列的问题
    打印后台处理程序概念/API 和通道:将作业从serveHTTP 传递到队列的问题
    这里已经得到了一些帮助,这让我在我正在尝试的这个概念上取得了进展,但它仍然不太有效,而且我遇到了一个我似乎无法解决的冲突。我在这里尝试在流程图中说明我想要的内容-请注意,客户端可以是许多将发送打印作业的客户端,因此我们无法回复当时正在处理我们作业的工作人员,但对于大多数人来说会的(高峰时段不会,因为打印处理工作可能需要时间)。typequeueelementstruct{jobidstringrwhttp.responsewriterdonechan
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • Go:如何对一段适用于 Mongo 集合的代码进行单元测试?
    Go:如何对一段适用于 Mongo 集合的代码进行单元测试?
    我正在使用go的官方mongo驱动程序。我的代码如下所示(为了使示例更简单,省略了错误处理):typeDBstruct{collection*mongo.Collection}func(dbDB)GetUsers()[]*User{res,_:=db.collection.Find(context.TODO(),bson.M{})varusers[]*Userres.All(context.TODO(),&users
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 如何从 go Fiber 中的本地上下文中提取值
    如何从 go Fiber 中的本地上下文中提取值
    我已成功使用本地上下文通过自定义中间件设置数据库查询结果。我试图了解如何对用户进行身份验证,然后从数据库中提取其详细信息并将其注入上下文中。这已经完成了。路由上最终方法上的本地数据实际上是一个接口,我想从之前的身份验证中间件设置的数据中提取字段。如何将此接口类型处理为某种形式(如结构或json),以便我可以获得用于执行某些逻辑的字段和值?user:=c.locals("user")fmt.println("checkingforlocals",user)从上面的用户是结构体用户{
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 位移位 << 和乘法 * 优先级
    位移位 << 和乘法 * 优先级
    在go演示中尝试了此代码:packagemainimport("fmt")funcmain(){log2dim:=uint32(9)size:=1
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 不同文件上的相同包名
    不同文件上的相同包名
    同一文件夹下的不同文件存在相同的包名。a.gopackageabctypebstruct{}b.gopackageabcfunc(b*B)Run(){}文件b.go中定义的函数可以在不导入任何内容的情况下访问a.go吗?将代码分成两个不同文件的原因是什么?
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 使用 golang 列出 GCR 中的 docker 存储库
    使用 golang 列出 GCR 中的 docker 存储库
    我想使用go列出我在GCR中的所有存储库。我遇到过这个库。但是,我看到的唯一List函数似乎是用于列出特定存储库的图像/标签。(即,它需要先验了解存储库名称/URL)知道是否有一个列出存储库的选项(以便稍后可以列出每个存储库的图像)?
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 优雅地终止 Windows 上的进程
    优雅地终止 Windows 上的进程
    我正在用Go编写一个服务器应用程序,并使用包装器将其作为Windows服务运行。需要正常关闭服务器(以正确关闭资源和连接),在UNIX中,它将通过SIGTERM信号进行处理。没什么大不了的。虽然在Windows上情况看起来很不同。我在本指南中看到信号实际上存在于Windows上(?),并且定义了SIGTERM,尽管其他页面表明它们不存在,或者使用WM_CLOSE等其他机制。告诉无头进程优雅终止的更好方法是什么?在Go中应该如何实现?服务器被设计为多平台,因
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 按列连接二维数组
    按列连接二维数组
    我在golang上有一个二维数组,类似于arraywhichcontains[1,2,3,4][2,3,4,5][3,4,5,6]我想加入数组列,即结果应该是1,2,32,3,43,4,54,5,6我的方法是创建4个数组并执行以下操作:a:=[]int{}for_,row:=rangearray{append(a,array[1])append(b,arr
    Golang · Go问答   |  2年前  |   397浏览 收藏
  • 使用 dataplane api 添加新服务器到 HAProxy,并在 Golang 中进行速率限制
    使用 dataplane api 添加新服务器到 HAProxy,并在 Golang 中进行速率限制
    我正在通过我的golang代码向Haproxy添加新的后端服务器。我可以看到添加新服务器时有一个名为最大连接数的参数,可用于限制连接数。还有一个名为maxqueue的参数,如果达到最大连接限制,它将对连接进行排队。但我找不到指定队列超时的选项。而且我无法从文档中找到默认队列超时时间是多少。此外,在向后端添加新服务器时,如何添加基于请求数(滑动窗口)的速率限制?我可以看到有一个提及粘表的选项,但我找不到其实现的示例。我指的是以下文档。https://www.haproxy.com/do
    Golang · Go问答   |  2年前  |   397浏览 收藏
查看更多
课程推荐
  • 前端进阶之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推荐
  • SuperCLUE中文大模型评测基准:功能、能力维度与应用指南
    SuperCLUE
    SuperCLUE是权威的中文大语言模型综合评测基准,涵盖语言理解、知识应用、AI Agent智能体及安全性等12项核心能力。通过多轮对话与客观测试,定期发布榜单与技术报告,为模型研发、优化及行业选型提供科学依据。
    164次使用
  • C-Eval中文评测基准:大语言模型多学科能力评估指南
    C-Eval
    深入了解C-Eval中文评估套件,涵盖52个学科与4级难度。本文详解其功能特点、Zero-shot/Few-shot使用方法及代码示例,助您全面评测LLM中文理解与泛化能力。
    88次使用
  • LangGPT提示词框架:结构化Prompt设计方法与开源工具指南
    LangGPT
    LangGPT是一种受编程语言启发的结构化提示词设计工具,提供双层框架、模块化模板及变量功能,帮助用户高效编写高质量Prompt。该项目已在GitHub免费开源,适用于内容创作、编程辅助等多场景。
    15次使用
  • ClickPrompt:AI提示词生成与优化工具,支持Stable Diffusion、ChatGPT及代码辅助
    ClickPrompt
    ClickPrompt是一款专为AI提示词编写者设计的开源在线工具,支持Stable Diffusion绘图、ChatGPT对话及GitHub Copilot代码辅助。提供Prompt自动生成、一键运行、社区分享及可视化优化功能,帮助用户高效获取精准AI输出。
    50次使用
  • PromptHero官网:AI提示词搜索、优化与学习平台,支持Midjourney/Stable Diffusion
    PromptHero
    PromptHero是专业的AI提示词搜索引擎与优化平台,支持Stable Diffusion、Midjourney等主流模型。提供海量提示词库、分类搜索、在线课程及社区互动,助力用户高效生成高质量AI图像与文本。
    37次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码