主页 | Web版 | 订阅 | 归档 | Feed

GopherDaily

20250718

每日一谚:Avoid defer in loops, or your memory might blow up


Go技术生态

Go、Python 和 Rust:2025 年你应该学习哪一种?基准测试、就业和权衡
2025 年选择编程语言不再仅仅关乎语法或偏好;它还关乎性能、可扩展性、开发速度,甚至团队的云计算费用。本文比较了 Go、Python 和 Rust 在执行速度、内存使用、开发效率、生态系统和工具以及薪资趋势和职位需求等方面的优缺点,并最终总结了何时使用每种语言以及为什么聪明的团队会混合使用它们。

前所未有的 Protobuf 解析

go-cdc-chunkers:对所有内容进行分块和重复数据删除

Hashicorp创始人谈智能体工程

介绍 TCP-in-UDP 解决方案
MPTCP 协议复杂,主要为了能够在互联网上生存,在互联网上,NAT、防火墙、IDS 或代理等中间盒可能会修改 TCP 数据包的部分内容。最坏的情况是,MPTCP 连接应该回退到“普通”TCP。如今,这种回退比以前少见——可能是因为自 2013 年以来,MPTCP 已在全球数百万部 Apple 智能手机上使用——但它们仍然可能存在,例如,在使用性能增强代理 (PEP) 的某些移动网络上,MPTCP 连接不会被绕过。在这种情况下,继续受益于 MPTCP 的解决方案是隧道 MPTCP 连接。存在不同的解决方案,但它们通常会添加额外的层,并且需要在客户端和服务器之间设置虚拟专用网络 (VPN) 并使用私有 IP 地址。这里介绍了一种更简单的解决方案:TCP-in-UDP。此解决方案依赖于 eBPF,不会为每个数据包添加额外的数据,也不需要虚拟专用网络。继续阅读以了解更多信息!

云原生技术

分布式稽核日志

GoFiber v3 + Testcontainers: Production-like Local Dev with Air

Kubernetes后量子密码学

用于 AI 产品的云平台
这是一个用于 AI 产品的云平台应用程序。

在约束条件下进行架构设计:实用指南
为什么从约束条件开始,而不是从你最喜欢的框架开始,能构建出更好、更高效的 Web 应用程序。不要急于求成使用你最喜欢的框架,让我们探讨一下基于约束的思维模式如何帮助你为任务选择合适的工具,并避免过度工程。

Argo Rollouts — 使用 Istio 进行金丝雀部署
本文是关于 Argo Rollouts 系列文章中的一篇,重点介绍不同的部署策略或功能。文章将讨论实现细节,并探讨使用它们的各种方法。文章介绍了如何使用 Istio 进行流量管理,以及如何使用 `setHeaderRoute`、`setMirrorRoute` 和 `setWeight` 等操作来定义金丝雀行为。

回顾旅程:从 Tetrate 到下一个目标
在我结束在 Tetrate 的难忘旅程之际,我回顾了从 Hadoop 到服务网格再到 AI 的历程,并展望了在开发者体验和社区建设方面的新可能性。

我为什么推荐原生 Prometheus 度量而不是 OpenTelemetry
本文探讨了在 Prometheus 中使用度量时,原生 Prometheus 度量库优于 OpenTelemetry SDK 的原因。作者认为,使用 OpenTelemetry 会导致丢失 Prometheus 核心功能,例如目标健康监控,并带来度量转换和转义问题以及其他低效和复杂性。文章详细比较了两种方法的优缺点,包括范围、数据传输、度量名称和标签、Prometheus 配置设置以及 SDK 复杂性和性能。最终结论是,如果主要关注度量指标并在 Prometheus 中使用它们,则应优先使用 Prometheus 原生工具。

ProGet 与 Snyk 的比较 - Inedo
了解 ProGet 如何在开源风险管理方面超越 Snyk。Snyk 是一款受开发者欢迎的安全工具,但它本质上是一款静态分析 (SAST) 工具,旨在查找源代码中的潜在错误和安全问题。然后,它指导并教育开发者如何修复其代码。使用第三方开源库管理风险是完全不同的问题。它涉及漏洞评估、许可证合规性和整体质量验证——这些都与您的源代码无关。ProGet 专注于托管、管理和跟踪开源包的使用,同时降低风险,而 Snyk 则专注于源代码分析,其开源附加组件与其 SAST 功能存在冲突。

AI

通过手机进行氛围式抓取和氛围式编码,为 Open Sauce 2025 创建日程应用程序
作者在咖啡店仅使用手机,通过 OpenAI Codex 和 Claude Artifacts 结合,抓取了一个会议网站,并构建了一个替代界面来与日程安排进行交互。该应用程序提供更快的加载速度和更有用的日程视图,更重要的是,它包含一个“下载日历 (ICS)”选项,允许移动电话用户(Android 和 iOS)轻松地将日程事件直接导入他们选择的日历应用程序。文章详细介绍了构建过程,包括使用 Codex 抓取日程数据和使用 Claude 构建 Web 应用程序的步骤,并分享了过程中遇到的挑战和解决方案。最终,作者成功在手机上完成了整个项目,并展示了 AI 辅助编程的强大功能。

AI 替代服务的神话
本文作者驳斥了科技界普遍认为AI将取代人类服务业的观点。作者基于自身经验,从风险投资公司(VC)的叙事和客户的期望两个方面论证了这一观点的谬误。作者认为,VC公司为了筹集更多资金和获得更多佣金,夸大了AI的市场规模,而客户则将AI视为软件而非人力替代品,因此AI产品的定价应遵循软件定价的规则。最终,作者指出,AI可以提高效率,但其经济效益远低于预期,我们应更关注AI带来的增量价值而非简单替代。

研究发现,人工智能并没有让开发者像他们想象的那样高效

我最喜欢的 AI 用例是写日志

释放claude code

介绍Chatgpt Agent

开放健康AI模型

流行工具与项目

gitleaks/gitleaks
Find secrets with Gitleaks 🔑

influxdata/telegraf
Agent for collecting, processing, aggregating, and writing metrics, logs, and other arbitrary data.

swaggo/swag
Automatically generate RESTful API documentation with Swagger 2.0 for Go.

smartcontractkit/chainlink
node of the decentralized oracle network, bridging on and off-chain computation

projectcalico/calico
Cloud native networking and network security

cloudnative-pg/cloudnative-pg
CloudNativePG is a comprehensive platform designed to seamlessly manage PostgreSQL databases within Kubernetes environments, covering the entire operational lifecycle from initial deployment to ongoing maintenance

open-telemetry/opentelemetry-collector
OpenTelemetry Collector

containerd/containerd
An open and reliable container runtime

aquasecurity/trivy
Find vulnerabilities, misconfigurations, secrets, SBOM in containers, Kubernetes, code repositories, clouds and more

gin-gonic/gin
Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.

ethereum-optimism/optimism
Optimism is Ethereum, scaled.

hypermodeinc/ristretto
A high performance memory-bound Go cache

ollama/ollama
Get up and running with Llama 3.3, DeepSeek-R1, Phi-4, Gemma 3, Mistral Small 3.1 and other large language models.

milvus-io/milvus
Milvus is a high-performance, cloud-native vector database built for scalable vector ANN search

hypermodeinc/badger
Fast key-value DB in Go.

bluenviron/mediamtx
Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.

getzep/zep
Zep | Examples, Integrations, & More

redis/go-redis
Redis Go client

volcano-sh/volcano
A Cloud Native Batch System (Project under CNCF)

oapi-codegen/oapi-codegen
Generate Go client and server boilerplate from OpenAPI 3 specifications

grafana/alloy
OpenTelemetry Collector distribution with programmable pipelines

openbao/openbao
OpenBao exists to provide a software solution to manage, store, and distribute sensitive data including secrets, certificates, and keys.

kubernetes/kubernetes
Production-Grade Container Scheduling and Management

expr-lang/expr
Expression language and expression evaluation for Go


编辑:Tony Bai

编辑主页:tonybai.com

GopherDaily项目:github.com/bigwhite/gopherdaily

Copyright 2019-2024 GopherDaily