Go

关注
收录了Go频道下的 244 篇内容
  • 全部
  • 文章
  • 视频
  • 话题
  • 电子书
2021 年,这8种编程语言最流行
2021 年,这 8 种编程语言最流行

哪种编程语言最流行?学什么编程语言最容易升职加薪?

入门参考:从Go中的协程理解串行和并行
入门参考:从 Go 中的协程理解串行和并行

Go 语言的设计亮点之一就是原生实现了协程,并优化了协程的使用方式。使得用 Go 来处理高并发问题变得更加简单。今天我们来看一下 Go 中的协程。

解读Go语言的2020:变革前夜
解读 Go 语言的 2020:变革前夜

我们对 Go 语言有着很多的期望。

这5个程序员,改变了世界
这 5 个程序员,改变了世界

致敬那些为软件开发奠定坚实基础的计算机科学先驱。

最简单的 Go Dockerfile 编写姿势,没有之一!

最简单的 Go Dockerfile 编写姿势,没有之一!

Golang 单元测试:有哪些误区和实践?
Golang 单元测试:有哪些误区和实践?

单元测试作为开发的有力武器,应该在软件开发的各个流程中发挥它的价值。原始的开发模式流程,应该逐步向 devops 的方向转变。本文是一个转型的具体实践过程,以一个实际的业务应用项目为例,介绍了在展开单测实践过程中遇到的一些常见问题的思考,并着重介绍了几种 mock 方法,对于一些相对复杂依赖项较多的业务也可以作为借鉴。

go-zero 之 rest 实战与原理

go-zero 是一个集成了各种工程实践的 web 和 rpc 框架,其中 rest 是 web 模块,该模块基于 Go 语言原生的 http 包进行构建,是一个高性能的,简单易用的 web 框架。使用 rest 能够快速构建 restful 风格 api 服务,同时具备服务监控和弹性服务治理能力

使用 Go 实现 Async/Await 模式
使用 Go 实现 Async/Await 模式

Golang 是一种并发编程语言。它具有强大的特性,如 Goroutines 和 Channels,可以很好地处理异步任务。另外,goroutines 不是 OS 线程,这就是为什么您可以在不增加开销的情况下根据需要启动任意数量的 goroutine 的原因,它的堆栈大小初始化时仅 2KB

在生产环境用了一个月Go语言,我有4点体会
在生产环境用了一个月 Go 语言,我有 4 点体会

Go 语言怎么样?我在生产环境用了一个月的 Go 语言,有许多想说的。

go-zero 如何扛住流量冲击(二)

`go-zero` 中的 `tokenlimit` 限流方案适用于瞬时流量冲击,现实请求场景并不以恒定的速率。令牌桶相当预请求,当真实的请求到达不至于瞬间被打垮。当流量冲击到一定程度,则才会按照预定速率进行消费。

深入浅出 Go - sync.Map 源码分析
深入浅出 Go - sync.Map 源码分析

Go 的 map 在并发场景下,只读是线程安全的,读写则是线程不安全的。Go1.9 提供了并发安全的 sync.Map,通过阅读源码我们知道 snyc.Map 通过读写分离的机制,降低了锁的粒度,以此来提高并发性能

Java 微服务能像 Go 一样快吗?
Java 微服务能像 Go 一样快吗?

“Java 微服务能像 Go 一样快吗?”为此,我们创建了一系列微服务并进行了基准测试,本文将和大家分享我们的测试结果。

一例 Go 编译器代码优化 bug 定位和修复解析
一例 Go 编译器代码优化 bug 定位和修复解析

本文中介绍了 Go 编译器的整体编译流程脉络和一个编译优化错误导致数据越界访问的 bug,并分析了对这个 bug 的排查和修复过程。

go-zero 如何扛住流量冲击(一)

不管是在单体服务中还是在微服务中,开发者为前端提供的 API 接口都是有访问上限的,当访问频率或者并发量超过其承受范围时候,我们就必须考虑限流来保证接口的可用性或者降级可用性。即接口也需要安装上保险丝,以防止非预期的请求对系统压力过大而引起的系统

熔断原理与实现 Golang 版

在微服务中服务间依赖非常常见,比如评论服务依赖审核服务而审核服务又依赖反垃圾服务,当评论服务调用审核服务时,审核服务又调用反垃圾服务,而这时反垃圾服务超时了,由于审核服务依赖反垃圾服务,反垃圾服务超时导致审核服务逻辑一直等待,而这个时候评论

数据结构与算法系列之递归(GO)
数据结构与算法系列之递归(GO)

打破对递归的固有思维

Go 语言开源发布十一年,未来将重点支持Go模块和泛型
Go 语言开源发布十一年,未来将重点支持 Go 模块和泛型

Go 语言发布十一周年了。回想 Go 语言的十周年庆典已经恍如隔世,2020 年是艰难的一年,但我们一直在推动 Go 的发展,也带来了不少值得回忆的美好瞬间。

聊聊Go代码覆盖率技术与最佳实践
聊聊 Go 代码覆盖率技术与最佳实践

Go 代码覆盖率技术底层实现与最佳实践,内容有点干。

Dubbo-go Server 端开启服务过程

导读:随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引导读者进

Go发起HTTP2.0请求流程分析(后篇)——标头压缩
Go 发起 HTTP2.0 请求流程分析 (后篇)——标头压缩

在一个连接上,client 和 server 维护一个相同的 HPACK 索引列表,多个请求在发送和接收 Header 数据时可以分为两种情况

Go语言内存管理三部曲(三)图解GC算法和垃圾回收原理
Go 语言内存管理三部曲(三)图解 GC 算法和垃圾回收原理

白话 Go 语言的垃圾回收机制、图解 Go 语言 GC 的三色标记清楚算法。

Go发起HTTP2.0请求流程分析(中篇)——数据帧&流控制
Go 发起 HTTP2.0 请求流程分析 (中篇)——数据帧 & 流控制

本篇主要分为三个部分:数据帧,流控制器以及通过分析源码逐步了解流控制。 本有意将这三个部分拆成三篇文章,但它们之间又有联系,所以最后依旧决定放在一篇文章里面。由于内容较多,笔者认为分三次分别阅读三个部分较佳。

浅析 Golang 垃圾回收机制
浅析 Golang 垃圾回收机制

介绍 Golang 的垃圾回收机制

Go 语言内存管理三部曲(二)解密栈内存管理
Go 语言内存管理三部曲(二)解密栈内存管理

Go 应用程序运行时,每个 goroutine 都维护着一个自己的栈区,这个栈区只能自己使用不能被其他 goroutine 使用。栈区的初始大小是 2KB(比 x86_64 架构下线程的默认栈 2M 要小很多),在 goroutine 运行的时候栈区会按照需要增长和收缩

关于 GO 语言,这篇文章讲的很明白

摘要:本文从 Go 的语法,类型系统,编码风格,语言工具,编码工具和使用案例等几方面对 Go 语言进行了学习和探讨。

Go语言内存管理三部曲(一)内存分配原理
Go 语言内存管理三部曲(一)内存分配原理

现代高级编程语言管理内存的方式分为两种:自动和手动,像 C、C++ 等编程语言使用手动管理内存的方式,工程师编写代码过程中需要主动申请或者释放内存;而 PHP、Java 和 Go 等语言使用自动的内存管理系统,有内存分配器和垃圾收集器来代为分配和回收内存。

go-zero流数据处理利器
go-zero 流数据处理利器

流处理 (Stream processing) 是一种计算机编程范式,其允许给定一个数据序列 (流处理数据源),一系列数据操作 (函数) 被应用到流中的每个元素。同时流处理工具可以显著提高程序员的开发效率,允许他们编写有效、干净和简洁的代码。

如何使用gRPC、Ballerina和Go开发高效的微服务
如何使用 gRPC、Ballerina 和 Go 开发高效的微服务

在这篇文章里,我们将通过真实的微服务案例来研究 gRPC 的关键概念,了解将 gRPC 作为服务间通信的好处及其用法。

用go语言实现快排
用 go 语言实现快排

用 go 语言实现快排,用好名字表明算法思路。

    出行场景下数据智能化和生态建设历程
    出行场景下数据智能化和生态建设历程

    任化伟 | 滴滴 地图生态业务负责人

    立即下载
    PWA 逼近原生应用的利器:Fugu Project

    撖书良 | 英特尔 高级软件工程师

    立即下载
    搜索商业化的技术变革历程

    杨逍 | 百度 主任架构师

    立即下载