GopherDaily

GopherDaily

2024-03-06

每日一谚:Sort your fields in your struct from largest to smallest


Go技术生态

在Go中预分配切片内存的影响(续)
该文档讨论了在 Golang 的切片内存中预分配内存的性能影响,并对基本和复杂方案进行了测试,并得出结论,使用预分配内存可以显著提高性能,但也可能导致内存泄漏和浪费。

使用 eBPF 将跟踪与分析关联起来
Polar Signal 的 Parca Agent 引入了一项功能,允许开发人员将跟踪与配置文件相关联,使他们能够查看所有服务中整个请求使用的所有 CPU 时间。

十亿行挑战:比我想象的要多得多
作者分享了他使用 Go 语言参加 One Billion Row Challenge 的经验,并分享了他从该过程中学到的经验教训,包括微小更改对大规模操作速度的影响、分析和跟踪工具的重要性以及标准库在提高性能方面的潜力。

在 Golang 中实现延迟作业计划程序
本文讨论了 Golang 中延迟作业调度程序的实现,包括实现作业接口和调度程序接口,以及通过根据作业执行时间维护作业的优先级队列来优化调度程序。

Golang — 具有 Goroutine、Channel 和 Wait Group 的并发模式。
Nitin Bhasker 的文章讨论了 Golang 与 Goroutine、Channel 和 Wait Group 的并发模式,解释了如何使用这些元素来处理多个任务。

了解 Go 中 make 和 new 之间的区别
这篇博文解释了 Go 编程语言的“make”和“new”函数之间的区别,它们在内存分配和初始化方面有不同的用途,以及何时使用它们。

动态 ETL 管道:使用 MinIO 的 Web 数据和 Weaviate 使用 Unstructured-IO 的 AI 进行水合
本文讨论了动态 ETL 管道,它是非结构化 IO、MinIO 的对象存储以及 Weaviate 的 AI 和元数据功能的组合,可将非结构化 Web 数据转换为结构化的、可分析的格式,将其转化为任何组织的宝贵资产。

云原生技术

时序数据库和数据湖如何协同工作
本文讨论了如何集成时序数据库 (TSDB) 和数据湖,以创建强大的数据管理框架,提供实时分析和全面的历史数据分析。

您应该使用的新式 Git 命令和功能
Martin Heinz 介绍了开发人员应该使用的现代 Git 命令和功能,包括用于切换分支的“git switch”、用于将文件还原到上次提交版本的“git restore”、用于处理大型存储库中的单个子树/目录的“sparse checkout”、用于同时在单个应用程序中处理多个功能的“git worktree”, 和“git bisect”,用于查找引入错误的提交。

了解 GraalVM、AOT 和 JIT
本文档全面介绍了 GraalVM,这是一种可以运行 Java 的 Java 虚拟机 (JVM),其他语言及其功能,包括实时 (JIT) 编译器和提前 (AOT) 编译器。

Mastering the Core: A Guide to Linux Kernel Customization
The article "Mastering the Core: A Guide to Linux Kernel Customization" by George Whittaker provides a detailed exploration of kernel customization, explaining its benefits such as optimized performance, enhanced security, bespoke hardware support, and tailored use cases.

为什么您的组织需要动态机密和轮换
CyberArk 博客讨论了各种主题,包括组织需要保护所有身份以防止攻击和数据泄露、动态机密和轮换的重要性,以及时间、权利和批准 (TEA) 在保护云管理控制台方面的作用。

使用 Generational ZGC 将暂停时间弯曲到您的意愿
Netflix 在 JDK 21 及更高版本上从 G1 切换到 Generational ZGC,因为并发垃圾回收具有显著优势,包括减少尾部延迟、效率、操作简单性、内存开销以及使用透明的大页面。

在LLM驱动的应用中处理片状测试
本文讨论了测试大型语言模型 (LLM) 的挑战,强调了它们的非确定性、制造性、对提示注入的敏感性和创新的误用,并提出了四种类型的测试来避免 LLM 驱动的应用程序中的片状测试:基于属性的测试、基于示例的测试、自动评估测试和对抗性测试。

自定义 OpenTelemetry 收集器容器映像
Addo Zhang 的文章讨论了自定义 OpenTelemetry Collector 容器映像的过程,使用 OpenTelemetry Collector Builder (OCB) 工具构建适合个人需求的发行版。

The 2038 Problem
The "2038 problem" is a potential issue with Unix-based systems that store dates and timezones, which could cause significant system failures or erratic behavior if not addressed in the coming 14 years.

Demystifying Kafka Exactly Once Semantics (EOS)
The article "Demystifying Kafka Exactly Once Semantics (EOS)" by Abhipranay Chauhan explains the difference between "Just Once Delivery" and "Just Once Semantics", and how Kafka supports "Just Once SemanticS", which is often misunderstood.

Kubernetes 中的 Canary 部署
Soumya Biswas 讨论了如何使用 Kubernetes 的内置功能来实现 Canary 部署,该过程逐步向用户推出应用程序的更新版本,新版本将根据当前需求进行扩展或扩展。

使欧洲用户能够安全地与第三方进行消息传递互操作
为了遵守《数字市场法》(DMA),WhatsApp 和 Messenger 进行了重大更改,以实现与第三方消息服务的互操作性,同时保持端到端加密和隐私保证。

研讨会回顾:使用 Vault 进行 Linkerd 证书管理
本文档提供了有关如何使用 Vault(一种用于在 Kubernetes 中创建零信任环境的工具)管理 Linkerd 证书管理的详细指南,以使用 mTLS 保护通信。

Mastering Kubernetes: Overcoming Complexity and Accelerating Your Learning Journey
Fabio Fernandes' article "Mastering Kubernetes: overcoming complexity and accelerating your learning journey" on Medium aims to help readers understand and master the Kubernetes framework, a tool for managing applications more efficiently.

用于高效容器管理的自定义 Docker 桥接网络
本文提供了有关如何使用 Docker network create 命令和其他参数(如子网、网关和驱动程序)创建自定义 Docker 桥接网络以实现高效容器管理的指南。

AI

卡住了?结对编程与使用 AI 助手相比的优势
文章讨论了结对编程和 AI 辅助的好处,表明结对编程提供了更丰富的学习环境,并有助于与队友建立更牢固的关系,而 ChatGPT 等 AI 辅助可以成为重复性任务的省时工具。

Anthropic 的最新 AI 机器人能否击败 Gemini 和 ChatGPT?
人类学家推出了他们最新的人工智能机器人克劳德 3,据说它优于 GPT-4 和 ChatGPT 等知名玩家,并将颠覆人工智能领域。

流行工具与项目

hashicorp/terraform-provider-aws
Terraform AWS 提供商

googleapis/google-cloud-go
适用于 Go 的 Google Cloud 客户端库。

goharbor/harbor
一个开源的可信云原生注册表项目,用于存储、签名和扫描内容。

stefanprodan/podinfo
适用于 Kubernetes 的 Go 微服务模板

go-task/task
任务运行器/更简单 用 Go 编写替代方案

trap-bytes/403jump
HTTP 403 绕过工具

kubernetes/dashboard
适用于 Kubernetes 集群的通用 Web UI

aaamoon/copilot-gpt4-service
将 Github Copilot 转换为 ChatGPT

kubernetes-sigs/external-dns
为 Kubernetes 入口和服务配置外部 DNS 服务器(AWS Route53、Google CloudDNS 等)

AndreyMashukov/go-crypto-bot
在 Golang 上实现的多线程加密机器人

pulumi/pulumi
Pulumi -任何编程语言的基础设施即代码.使用熟悉的语言🚀在任何云上直观地构建基础架构

charmbracelet/bubbletea
强大的小 TUI 框架 🏗

grafana/k6
使用 Go 和 JavaScript 的现代负载测试工具 - https://k6.io

jaegertracing/jaeger
CNCF Jaeger,分布式追踪平台

ccfos/nightingale
一个多合一的可观测性解决方案,旨在结合 Prometheus 和 Grafana 的优势。它管理警报规则,并在漂亮的 Web UI 中可视化指标、日志和跟踪。

kubevirt/kubevirt
Kubernetes 虚拟化 API 和运行时,用于定义和管理虚拟机。

pingcap/tidb
TiDB 是一个开源、云原生、分布式、兼容 MySQL 的数据库,用于弹性扩容和实时分析。在以下位置免费试用 AI 驱动的 Chat2Query: https://tidbcloud.com/free-trial

cilium/cilium
基于 eBPF 的网络、安全性和可观测性

argoproj-labs/argocd-image-updater
Argo CD 的自动容器映像更新

golang-jwt/jwt
社区维护的 https://github.com/dgrijalva/jwt-go 克隆

google/uuid
基于 RFC 4122 和 DCE 1.1 的 UUID 的 Go 包:身份验证和安全服务。

open-telemetry/opentelemetry-collector-contrib
OpenTelemetry Collector 的 Contrib 存储库

golang/mock
GoMock 是 Go 编程语言的模拟框架。

cometbft/cometbft
CometBFT(Tendermint Core 的分支):一种分布式的、拜占庭式的容错、确定性的状态机复制引擎

btcsuite/btcd
用 Go (golang) 编写的另一种全节点比特币实现


编辑:Tony Bai

编辑主页:tonybai.com

GopherDaily主页:gopherdaily.tonybai.com

GopherDaily归档:gopherdaily.tonybai.com/more

GopherDaily项目:github.com/bigwhite/gopherdaily

订阅GopherDaily

取消订阅GopherDaily

另一个邮件列表:https://gopher-daily.com

Copyright 2023 GopherDaily