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

GopherDaily

2024-08-16

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


Go技术生态

都2024年了,当初那个“Go,互联网时代的C语言”的预言成真了吗?
对于Go与C的作用与地位

Go Maps解析:键值对实际上是如何存储的
该文档解释了 Go 映射的工作原理,Go 映射是一种充当键值存储的内置类型,包括其结构、键值对、哈希值以及添加和删除键值对的过程。

Go 中的加密:AES 加密
这篇博客文章讨论了 Go 中 AES 加密的使用,解释了其不同的操作模式、在 Go 中使用 AES 的挑战,以及 AES 在 Go 标准库中的实现。

Go 1.23 个人喜欢的主要功能 - 探索 Go 1.23 的最佳升级
Go 1.23 版本引入了一个范围大于函数特性,用于通过集合进行高效迭代,用于管理和比较复杂类型的“唯一”包,以及对切片、映射和“iter”包的改进,用于提高迭代器功能和内存效率。

Coding Horrors: The Tales of Codebase Complexity
The blog series "Coding Horrors: The Frightening Tales of Codebase Complexity" features prominent developer Daniel Beck's experiences and lessons learned from dealing with complex software environments, including the dangers of shortcuts, the importance of understanding code workings, and the importance of well-documented changes.

云原生技术

在 eBPF 中重新实现我的 Linux Rust 调度器
这篇博文讨论了在 eBPF 中重新实现 Linux Rust 调度器“scx_ Rustland”,重点是改进对延迟敏感的工作负载而不是 CPU 密集型工作负载,并建议对 Apache 进行改进,同时指出它不是一个通用的调度器。

了解 Kafka Producer
本文深入分析了 Kafka Producer 的使用方法和原理、实现细节和常见问题,包括其核心组件、消息发送过程以及消息批处理和重试的各种设置。

Kubernetes 中的数据库:这是个好主意吗?
本文讨论了将数据库放置在 Kubernetes/Docker 中的利弊,认为虽然它在管理无状态应用程序方面表现出色,但对于有状态服务(如 PostgreSQL 和 MySQL)等数据库来说,它也有缺点,包括较低的可靠性、安全性、性能和复杂性成本。

宣布快速比较和合并 JSON 文档
Dolt 是世界上第一个版本控制的 SQL 数据库,它宣布能够快速区分和合并 JSON 文档,使其适合存储关系数据和半结构化文档的混合,使其可用于游戏开发等各个领域的数据管理。

实时鼠标指针 - 我们实现和支持实时鼠标指针的旅程
Canva的协作团队在他们的设计编辑器中成功地实现了实时鼠标指针,结合使用websockets和Redis,后来过渡到WebRTC技术,以减少延迟、负载和成本。

Kubernetes 1.31:PodAffinity 中的 MatchLabelKeys 升级到测试版
Kubernetes 1.31 在 PodAffinity 和 PodAntiAffinity 中引入了 'MatchLabelKeys' 和 'MismatchLabelKeys',增强了多功能滚动更新的调度,并提供了服务隔离。

云计算的未来:以 Kubernetes 为核心
Kubernetes 最初由 Google 开发,是云计算的基石,提供应用程序的自动化部署、扩展和自动化,尽管其复杂性很高,但对于云原生架构、多云和混合云部署、边缘计算和物联网至关重要。

AI

流行工具与项目

aws/karpenter-provider-aws
Karpenter 是一个 Kubernetes 节点自动缩放器,专为灵活性、性能和简单性而构建。

gogf/gf
GoFrame 是 Golang 的一个模块化、功能强大、高性能的企业级应用开发框架。

ollama/ollama
启动并运行 Llama 3.1、Mistral、Gemma 2 和其他大型语言模型。

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

go-gitea/gitea
喝杯茶吧!无痛自托管一体化软件开发服务,包括 Git 托管、代码审查、团队协作、包注册表和 CI/CD

opencost/opencost
Kubernetes 工作负载和云成本的成本监控

thanos-io/thanos
高可用性 Prometheus 设置,具有长期存储功能。CNCF孵化项目。

Permify/permify
受 Google Zanzibar 启发的开源授权即服务,旨在为任何应用程序构建和管理细粒度且可扩展的授权系统。

kubernetes-sigs/karpenter
Karpenter 是一个 Kubernetes 节点自动缩放器,专为灵活性、性能和简单性而构建。

milvus-io/milvus
云原生矢量数据库,为下一代 AI 应用程序提供存储

harness/gitness
Gitness 是一个开源开发者平台,具有源代码控制管理、持续集成和持续交付功能。

chaitin/SafeLine
充当反向代理,保护您的 Web 服务免受攻击和利用。

BishopFox/sliver
对手仿真框架

golang/go
Go 编程语言

caddyserver/caddy
快速且可扩展的多平台 HTTP/1-2-3 Web 服务器,具有自动 HTTPS 功能

fatedier/frp
一种快速反向代理,可帮助您将 NAT 或防火墙后面的本地服务器暴露到 Internet 上。

bluenviron/mediamtx
即用型SRT / WebRTC / RTSP / RTMP / LL-HLS媒体服务器和媒体代理,允许读取、发布、代理、录制和播放视频和音频流。

spf13/cobra
现代 Go CLI 交互的指挥官

hashicorp/terraform
Terraform 使你能够安全且可预测地创建、更改和改进基础结构。它是一种源可用工具,可将 API 编码为声明性配置文件,这些文件可以在团队成员之间共享、视为代码、编辑、审查和版本控制。

helm/helm
Kubernetes 包管理器

metallb/metallb
使用标准路由协议的 Kubernetes 网络负载均衡器实现

alist-org/alist
🗂️A file list/WebDAV program that supports multiple storages, powered by Gin and Solidjs. / 一个支持多存储的文件列表/WebDAV程序,使用 Gin 和 Solidjs。

uber-go/zap
在 Go 中实现超快、结构化、分级的日志记录。

istio/istio
连接、保护、控制和观察服务。

rclone/rclone
"rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files


编辑:Tony Bai

编辑主页:tonybai.com

GopherDaily项目:github.com/bigwhite/gopherdaily

Copyright 2019-2024 GopherDaily