排序
Excelize 开源基础库 2.8.0 版本正式发布
Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,基于 ISO/IEC 29500、ECMA-376 国际标准。可以使用它来读取、写入由 Microsoft Excel、WPS、Apache OpenOffice、LibreOffice ...
client-go实战之十:标签选择(labels.Selector),重要
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):github.com/zq2599/blog… 系列文章链接 client-go实战之一:准备工作 client-go实战之二:RESTClient client-go实战之三:Cli...
「Go开源」vegeta: http压力测试工具库
大家好,我是渔夫子。 今天给大家推荐的是一个对HTTP接口做压力测试的工具:vegeta。 项目地址:github.com/tsenart/veg… 一、特点 命令行和Go第三方库都可以使用 命令行使用UNIX风格设计 可扩...
GO进阶源码分析之 【Go预分配 slice 内存】
切片扩容 在 1.18 版本前,切片扩容,在容量小于1024时,以2倍大小扩容。超过1024后,以1.25倍扩容。在扩容后切片的基础上,会根据长度和容量进行 roundupsize 。 在1.18版本后,接下来看一下源...
多进程 – daemon进程和优雅重启
本文会详细介绍主流的daemon进程的实现方案,以及网络编程中如何实现优雅重启,这些都是多进程的一些编程技巧! 如何创建daemon进程 为什么我们需要daemon进程? 我们平时做服务器开发都是启动一...
改了一个变量的值,一运行发现被后面不知道哪个地方的代码又改了,怎么办?
背景 在开发中经常会发生一个变量在多个地方赋值的情况。最讨厌的情况是写代码改了某个变量的值,一运行发现还是没改,因为又在后面一个不知道哪里的地方被改了。怎么办呢? 首先我认为一个变量...
基准测试分享 – golang
背景 中介绍如何进行单元测试,可以帮助我们看写的对不对,如果对性能有要求,还要看单元好不好,这时候就需要基准测试了。 通过基准测试我们得到: 函数的执行耗时是否符合预期 内存占用、内存...
比较编程语言C和Go
使用一个简单的计数程序来比较古老的C语言和现代的Go语言。Go是一种现代的编程语言,它在很大程度上源自C语言。因此,对于任何使用C语言编写程序的人来说,Go可能会感觉很熟悉。Go使得编写新程...
在 Go 语言单元测试中如何解决文件依赖问题
现如今的 Web 应用程序往往采用 RESTful API 接口形式对外提供服务,后端接口直接向前端返回 HTML 文件的情况越来越少,所以在程序中操作文件的场景也变少了。不过有些时候还是需要对文件进行操...
深入探索 Go 1.21.0 中的 maps 工具库
Go 版本:1.21.0 前言 随着 Go 1.21.0 版本的发布,新增了两个实用的泛型工具库:maps 和 slices,它们分别提供了处理映射(map)和切片常见操作的函数,减少了我们重复造轮子的过程,提高开发...
利用 Tengo 实现动态配置管理
ä¸Â次 Tengo å¨æÂÂéÂ
Âç½®åºÂç¨åÂÂä½Â骠â å¯以Ã...
同步协程的必备工具: WaitGroup
同步协程的必备工具: WaitGroup 1. 简介 本文将介绍 Go 语言中的 WaitGroup 并发原语,包括 WaitGroup 的基本使用方法、实现原理、使用注意事项以及常见的使用方式。能够更好地理解和应用 WaitG...
Go sync.Once:简约而不简单的并发利器
Go sync.Once:简约而不简单的并发利器 简介 在某些场景下,我们需要初始化一些资源,例如单例对象、配置等。实现资源的初始化有多种方法,如定义 package 级别的变量、在 init 函数中进行...
Go RWMutex:高并发读多写少场景下的性能优化利器
Go RWMutex:高并发读多写少场景下的性能优化利器 前言 在这篇文章 Go Mutex:保护并发访问共享资源的利器 中,主要介绍了 Go 语言中互斥锁 Mutex 的概念、对应的字段与方法、基本使用和...
Go Mutex:保护并发访问共享资源的利器
Go Mutex:保护并发访问共享资源的利器 前言 Go 语言以 高并发 著称,其并发操作是重要特性之一。虽然并发可以提高程序性能和效率,但同时也可能带来 竞态条件 和 死锁 等问题。为了避免...
初探 Goroutine 与 channel
一文初探 Goroutine 与 channel 前言 Go 语言的 CSP 并发模型的实现包含两个主要组成部分:一个是 Goroutine,另一个是 channel。本文将会介绍它们的基本用法和注意事项。 Goroutine Gorout...
gnet: 轻量级且高性能的 Golang 网络库
gnet: 轻量级且高性能的 Golang 网络库 Github 源码: github.com/panjf2000/g… 原文: Strike Freedomstrikefreedom.top/go-event-loop-networking-library-gnet 简介 gnet 是一个基于事件...
Go环境搭建与环境变量详解
Go简单介绍 Go是一种新的语言,是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。它具有以下特点: 编译速度快。 更加容易的依赖分析。 Go是静态类型的语言,面向...
如何使用Gin搭建一个Go Web应用程序
1. 简介 在本文中,我们将要实现一个简单的 Web 应用程序,通过 Gin 框架来搭建。主要支持用户注册和登录,用户可以通过注册账户的方式创建自己的账号,并通过登录功能进行身份验证。 通过本文...
go入门之路(二) groutine内存管理select
协程 go中最大的特点就是它的协程就是被称为groutine的家伙这玩意可以在高并发场景下不需要去创建线程去造成不必要的开销,先介绍下进程、线程、协程之间的关系吧 进程 进程是cpu分配资源的最小...