面试官提问三个Go接口的概念, 10年gopher竟无言以对 (colobu.com)

【简介】

自 Go 1.18后, Go的interface的含义有所变化, 三个新的和Go接口有关的概念很多人还不知道: type set(类型集合)、specific type(特定类型)和structural type(结构类型)。

点击查看原文 >>

@技术头条 2022-05-06 23:30 / 原作者微博:@colobu / 0个评论
赞过的人: @IT技术博客大学习
要不要再学学下面的文章?
OpenTelemetry 实践指南:历史、架构与基本概念 (crossoverjie.top)
本文介绍了OpenTelemetry的历史、架构和基本概念。OpenTelemetry是一个用于统一日志、指标和链路追踪的开源项目,旨在简化可观测性技术栈的复杂性。文章详细介绍了OpenTelemetry的三个核心组件:客户端、OTel Collector和数据存储。通过标准化协议,OpenTelemetry实现了与多种后端系统的兼容,为开发者提供了一种灵活且可扩展的可观测性解决方案。
by @技术头条 2024-08-06 08:05 查看详情
Agent是如何工作的:概念及LangChain实现 (it.deepinmind.com)
LLM(大型语言模型)在自主Agent领域的应用受到了广泛关注。你可能已经在诸如Auto-GPT、BabyAGI等流行应用中了解过它们的用法,这些应用几乎每天都层出不穷。

理解这些应用的基本原理并不复杂,因为大多数工具的工作流程大致相同。
by @技术头条 2024-03-31 21:13 查看详情
聊聊 Go 的边界检查消除技术 (colobu.com)
在翻译的从慢速到SIMD一文中, SourceGraph工程师其中的一个优化就是边界检查消除(BCE,bounds check elimination)技术,同时他也抛给了读者一个问题:

为啥在使用 a[i:i+4:i+4] 而不是 a[i:i+4]?

本文第一部分先回答这个问题。 第二部分介绍更好的边界检查消除方法。 第三部分再全面梳理Go的边界检查消除技术。
by @技术头条 2024-03-21 23:00 查看详情
Go 中的高速数据包处理:从 net.Dial 到 AF_XDP (colobu.com)
最近编写了一个Go程序,向数百万个IP地址发送ICMP ping消息。显然,希望这个过程能尽可能快速高效地完成。因此,这促使我研究各种与网络栈交互和快速发送数据包的各种方法。这是一个有趣的旅程,所以在本文中,我将分享一些学习成果,并记录下来供将来参考:)你将看到,仅使用8个内核就可以达到1880万数据包/秒。这里还有一个GitHub仓库,其中包含了示例代码,可以方便地跟随学习。
by @技术头条 2024-03-21 22:55 查看详情
基于接口数据变异的App健壮性测试实践 (tech.meituan.com)
本文主要介绍了对网络返回数据进行变异的客户端健壮性测试实践经验。文章第一部分介绍客户端健壮性测试的基本概念;第二部分分享了基于接口返回数据变异的App健壮性测试方案设计的思路;第三部分主要解读了变异数据的构造和异常检测方案设计;第四部分介绍了精简变异数据的探索方案。
by @技术头条 2024-03-12 22:45 查看详情
最近做运开岗位面试官的一些感想 (wiki.eryajf.net)
部门一直缺一个相对资深的运维开发同学,因此一直都在寻找着,而我,也有机会作为面试官面了一些人。面试别人与自己面试是完全不同的体验,因此在这些面试的过程中,我也经受着许多考验与挑战,并促进我生发一些思考,这里做一些记录。
by @技术头条 2024-01-28 23:50 查看详情
Go运行时的并发原语 (colobu.com)
这篇文章我们来了解一下隐藏在Go运行时中的一些并发原语, 因为运行时是底座和包循环依赖等原因,运行时中很少使用标准库中的并发原语,它有自己的并发原语。
by @技术头条 2024-01-14 19:07 查看详情
Go单线程运行也会有并发问题 (colobu.com)
一个Go大佬群中严肃的讨论了一个问题:Go程序单线程多goroutine访问一个map会遇到并发读写panic么?

答案是肯定的,因为出现了这个问题所以大家才在群中讨论。

为什么呢?因为单线程意味着并行单元只有一个(多线程也可能并行单元只有一个),但是多goroutine意味着并发单元有多个,如果并发单元同时执行,即使是单线程,可能就会产生数据竞争的问题,除非这些goroutine是顺序执行的。
by @技术头条 2023-12-11 23:04 查看详情
TOP 20 Go最佳实践 (colobu.com)
在本教程中,我们将探讨Golang中的前20个最佳编码实践。这将帮助你编写有效的Go代码。
by @技术头条 2023-11-29 23:42 查看详情
iptables 以及 Go操作库 (colobu.com)
iptables 是 Linux 系统中的一个非常强大的防火墙工具,它可以用于过滤、修改、重定向和处理网络数据包。iptables 是基于 Netfilter 框架的,Netfilter 是 Linux 内核的一部分,它提供了在内核级别处理网络数据包的能力。
by @技术头条 2023-10-30 23:30 查看详情