slices in Go 1.21-牛翰网

slices in Go 1.21

Go 1.21中新增的 slices包中提供了很多与切片相关的函数,适用于任意类型的切片。 本文内容来自官方文档 BinarySearch 函数签名如下: func BinarySearch[S ~[]E, E cmp.Ordered](x S, target E...
11个月前
04415
每日一库:cobra 简介-牛翰网

每日一库:cobra 简介

当你需要为你的 Go 项目创建一个强大的命令行工具时,你可能会遇到许多挑战,比如如何定义命令、标志和参数,如何生成详细的帮助文档,如何支持子命令等等。为了解决这些问题,github.com/spf13...
11个月前
0619
每日一库:使用Viper处理Go应用程序的配置-牛翰网

每日一库:使用Viper处理Go应用程序的配置

在开发Go应用程序时,处理配置是一个常见的需求。配置可能来自于配置文件、环境变量、命令行参数等等。Viper是一个强大的库,可以帮助我们处理这些配置。 什么是Viper? Viper是一个应用程序配...
11个月前
03412
每日一库:Prometheus-牛翰网

每日一库:Prometheus

什么是 Prometheus Prometheus 是一个开源的系统监控和警报工具,最初由 SoundCloud 开发,并于 2012 年发布为开源项目。它是一个非常强大和灵活的工具,用于监控应用程序和系统的性能,并根据...
11个月前
0426
WASI support in Go-牛翰网

WASI support in Go

原文在这里。 由 Johan Brandhorst-Satzkorn, Julien Fabre, Damian Gryski, Evan Phoenix, and Achille Roussel 发布于 2023年9月13日 Go 1.21添加了一个新的端口,通过新的GOOS值wasip1来定位...
11个月前
05314
每日一库:lumberjack -- 日志轮换和管理-牛翰网

每日一库:lumberjack — 日志轮换和管理

在开发应用程序时,记录日志是一项关键的任务,以便在应用程序运行时追踪问题、监视性能和保留审计记录。Go 语言提供了灵活且强大的日志记录功能,可以通过多种方式配置和使用。其中一个常用的...
11个月前
011110
go 1.21:cmp-牛翰网

go 1.21:cmp

## 标准库 `cmp` 原文在[这里](https://pkg.go.dev/cmp) go 1.21 新增 `cmp` 包提供了与有序变脸比较相关的类型和函数。 ### Ordered 定义如下: ```go type Ordered interface { ~int | ~int8 ...
11个月前
09813
每日一库:pprof简介-牛翰网

每日一库:pprof简介

## pprof简介 `pprof`是Go语言的一个性能分析库,它可以帮助开发者找出程序中的性能瓶颈。`pprof`提供了CPU分析、内存分析、阻塞分析等多种性能分析功能。 以下是`pprof`的主要特性: 1. **CPU...
11个月前
04212
embed简介-牛翰网

embed简介

`go embed` 是 Go 1.16 中引入的特性,它允许将文件嵌入到 Go 代码中,以便在运行时访问这些文件。这对于将静态资源(如 HTML、CSS、JavaScript 文件)直接嵌入到 Go 二进制文件中,以及简化文...
11个月前
04411