从net库源码窥探Go程序linux平台Dns解析原理(一)

前言某些架构中,业务系统服务或者微服务之间通过域名进行通信,这样就会导致在系统调用过程中创建网络连接之前先去解析一下域名,拿到域名对应的ip地址再建立连接,并发量小的情况下,这样的解析对dns域名服务器没有太大压力,但是当并发量激增的时候,每次创建网络连接都要去远端服务器去解析一

「GCTT 出品」使用 Go(Golang)实现 OAuth2.0

2018年7月1日OAuth2是一种身份验证协议,用于使用其他服务提供商来对应用程序中的用户进行身份验证和授权。本文将介绍如何构建Go应用程序来实现OAuth2协议。

Go 每日一库之定时任务库:cron

在Linux中,Cron是计划任务管理系统,通过crontab命令使任务在约定的时间执行已经计划好的工作,例如定时备份系统数据、周期性清理缓存、定时重启服务等。30 * * 表示每个小时内的第30分钟时触发;

Go 语言开源这九年:它是不是你最喜欢的语言?

作者|Go社区博客11月10日是Go语言全面走向开源的九周年纪念日。毫无疑问,过去12个月对于Go语言以及相关社区来说,代表着一段极具突破性的时光。

Go 2.0 这两个特性还是值得期待的

看过之前的文章的人应该都猜出来输出的结果了。比如上面的 doneCh 和 thingCh 可能在一次select 里面同时满足。

Go语言2021年度更新回顾

在 Go 语言的 1.16 版本中把 GO111MODULE 默认值设置为了 on 。其中,源码文件是代码编译的最小单元,代码包是代码组织的最小单元,而模块则是代码发布的最小单元。

Go 1.17.5 和 Go 1.16.12 发布:安全更新

如果因为各种原因,暂时无法升级到最新版本,可以在调用 Serve 之前设置 GODEBUG=http2server=0 环境变量来禁用 HTTP/2,但如果通过 golang.org/x/net/http2 包手动配置,则无法设置,而应该升级 golang.org/x/net/http2 到 v0.0.0-20211209124913-491a49abca63。

Go语言编程从入门到精通,数据类型

Go (或Golang )是Google 在2007 年开发的一种开源编程语言,出自Robert Griesemer 、Rob Pike 和Ken Thompson 之手。

Go 语言编译期断言

> 这篇文章是关于一个鲜为人知的让 Go 在编译期断言的方法。在这段代码中,var _ = 行确保类

Go 1.18 Beta 1发布,正式支持泛型

日前golang开发团队宣布正式发布了Go 1.18 Beta1,预计正式版本将在明年2月份发布。作为一个bata预览版,目前可以用来测试要添加的语言最大变化go泛型。目前已经可以在官方下载频道下载:泛型Go 1.