GopherDaily

GopherDaily

2024-05-21

每日一谚:Go pkgs are not hierarchical.


Go技术生态

使用 Ollama 和 Go创建 GenAI 应用程序的简单方法
Parakeet 是一个使用 Ollama 和 Golang 创建 GenAI 应用程序的库,提供简化的查询、对话管理和上下文丰富的交互功能,使其易于查看和使用。

Gopher的Rust第一课:Rust的依赖管理
Rust的依赖管理,比较复杂,这里仅是涉及基础内容,供大家参考

使用Go语言实现pping
使用Go语言实现 pping,介绍了如何使用gopacket来捕获和解析网络数据包,如何设置捕获时长和过滤捕获的数据包, how to in CGO下 静态 compile a library like libpcap, understand TCP/IP 协议栈 basics, make data statistics and refresh, and how to use pflag to 解析 command line parameters.

psql 的隐藏查询
这篇博文讨论了 PostgreSQL 中信息查询的概念,解释了这些用于检查数据库元数据的命令如何转换为“pg_目录”表上的查询,以及如何在其他上下文中使用这些命令。

为什么我在 Go 单元测试中不使用第三方断言库
作者认为 Go 内置的单元测试框架就足够了,像 Testify 这样的第三方断言库是不必要的,因为直接使用 Go 泛型编写辅助函数更容易。

测试驱动的HTML 模板
本文讨论了在服务器端呈现的 Web 应用程序中测试 HTML 模板的重要性,使用使用 CSS 选择器检查有效 HTML 和提取元素的单元测试,并演示了如何在 Go 和 Java 中执行此操作。

Go中的clean架构:综合指南
该指南提供了在 Go 中实现 Clean 架构的综合指南,强调框架、数据库和用户界面的关注点和独立性,确保应用程序的可维护、可测试和可扩展。

第 6 集:探索并发陷阱:Rust 与 C++ 和 Go
这篇博文讨论了 Rust 和 C++ 并发编程中数据竞赛的挑战,强调了 Rust 严格的可变性方法及其避免空指针的重要性,并为 Rust 开发人员提供了维护代码完整性和可靠性的见解。

揭开 Go 正则表达式的神秘面纱
该文档介绍了如何使用 Go 中的正则表达式 (regex) 来验证用户输入、解析和提取数据以及日志分析,并提出了字符串操作函数、专用解析库或自定义解析逻辑等替代方案。

云原生技术

如何提高基于云的生成式 AI 性能
本文提供了有关提高基于云的生成 AI 性能的建议,重点介绍了高延迟、资源密集型模型、扩展工作负载、模型训练和安全性等问题,并建议进行主动管理和培训。

Kubernetes 中监控、日志记录和运行时安全性的 6 个关键实践
本文提供了 Kubernetes 中监控、日志记录和运行时安全性的六种关键实践,包括行为分析、检测威胁、检测攻击的所有阶段、进行深入分析调查、确保容器不可变性以及使用审计日志。

eBPF-Powered Load Balancing for SO_REUSEPORT
The article discusses the implementation of custom load balancing using SO\_REUSEPORT and eBPF, specifically focusing on a hot standby setup, to achieve efficient traffic distribution between primary and standby services with minimal disruption.

工作流,从无状态到有状态
作者讨论了他从使用 Staffware 引擎提交会议到使用 Camunda 平台构建工作流引擎的历程,以及他如何调整软件以满足持久存储的需求和处理现有流程实例不同版本的能力。

改进 DevSeCops 的 12 条原则
本文提供了改进 devsecops 的 12 条原则,包括采用客户至上的思维方式、将版本控制与敏捷用户故事联系起来、向 alpha 组发布新功能、要求设计安全、认识到单元测试是不够的、自动化主题专家的测试、验证代码的安全性和质量、建立非功能性操作要求、有意义地引导 SLO 和警报优先级, 实施可观测性并监视数据管道,并锁定管理控制和外部访问。

完成 Kubernetes 历史上最大规模的迁移
Kubernetes 项目已成功将所有内置云提供商集成迁移到外部插件,将核心 Kubernetes 存储库减少了 150 万行代码,并将二进制文件大小减少了约 40%,未来计划探索与云提供商集成的新方法并改进云控制器测试。

什么是向量数据库,它是如何工作的,以及如何从头开始创建一个!
矢量数据库旨在处理高维、非结构化数据,由于它们能够支持相似性搜索、提供性能和可扩展性,并且非常适合需要快速分析大型数据集的应用程序,因此在 AI 和机器学习应用程序中变得越来越必要。

AI

流行工具与项目

influxdata/telegraf
用于收集、处理、聚合和写入指标、日志和其他任意数据的代理。

gptscript-ai/gptscript
自然语言编程

FiloSottile/mkcert
一个简单的零配置工具,用于使用您想要的任何名称制作本地受信任的开发证书。

googleapis/google-api-go-client
自动生成的 Google API for Go。

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

tmc/langchaingo
LangChain for Go,用 Go 编写基于 LLM 的程序的最简单方法

miekg/dns
Go 中的 DNS 库

go-playground/validator
💯Go Struct 和字段验证,包括 Cross Field、Cross Struct、Map、Slice 和 Array 潜水

redis/go-redis
Redis Go 客户端

schollz/croc
轻松安全地将内容从一台计算机发送到另一🐊 📦台计算机

kubescape/kubescape
Kubescape 是一个开源的 Kubernetes 安全平台,适用于 IDE、CI/CD 管道和集群。它包括风险分析、安全性、合规性和错误配置扫描,为 Kubernetes 用户和管理员节省宝贵的时间、精力和资源。

kubesphere/kubesphere
专为 Kubernetes 多云、数据中心和边缘管理⎈ 🖥 ☁️量身定制的容器平台

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

helm/helm
Kubernetes 包管理器

grpc-ecosystem/grpc-gateway
遵循 gRPC HTTP 规范的 gRPC 到 JSON 代理生成器

rancher/rke2

karmada-io/karmada
开放、多云、多集群 Kubernetes 编排

grpc/grpc-go
gRPC 的 Go 语言实现。基于 HTTP/2 的 RPC

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

shopspring/decimal
Go 中的任意精度定点十进制数

WireGuard/wireguard-go
仅镜像。官方存储库位于 https://git.zx2c4.com/wireguard-go

open-telemetry/opentelemetry-go
OpenTelemetry Go API 和 SDK

spf13/viper
用獠牙进行配置

go-gorm/gorm
Golang 出色的 ORM 库旨在对开发人员友好

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


编辑:Tony Bai

编辑主页:tonybai.com

GopherDaily主页:gopherdaily.tonybai.com

GopherDaily归档:gopherdaily.tonybai.com/more

GopherDaily项目:github.com/bigwhite/gopherdaily

订阅GopherDaily

取消订阅GopherDaily

Copyright 2019-2024 GopherDaily