首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
🐭Go每日一库
luckzack
创建于2023-10-13
订阅专栏
日拱一卒,功不唐捐。
等 190 人订阅
共122篇文章
创建于2023-10-13
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Go每日一库之146:bbs-go(bbs框架)
## 概要 [bbs-go](https://github.com/mlogclub/bbs-go) 是一款基于Go语言研发的`开源`、`前后端分离`、`精美小巧`、`跨平台`的社区系统。初期该项目仅用过学习和交流,开源之后越来越多的小伙伴儿开始喜欢和关注他,这也是我长期升级和维护的动力。 bbs-
Go每日一库之114:go-fuzz
## 推荐 go-fuzz 的背景 我们在日常开发中经常会编写测试和对应的测试用例,大家是否常常会有以下疑惑: - 现有的测试用例是否完全覆盖了各种边界场景?会不会有意料之外的 case? - 代码测试覆盖率都达到 100% 了,代码上线时为啥还会战战兢兢? - 写测试用例太费心费力了,有没有一款能
GO 每日一库之1:flag
## 缘起 我一直在想,有什么方式可以让人比较轻易地保持每日学习,持续输出的状态。写博客是一种方式,但不是每天都有想写的,值得写的东西。 有时候一个技术比较复杂,写博客的时候经常会写着写着发现自己的理解有偏差,或者细节还没有完全掌握,要去查资料,了解了之后又继续写,如此反复。 这样会导致一篇博客的耗
Go每日一库之9:log
简介 在日常开发中,日志是必不可少的功能。虽然有时可以用fmt库输出一些信息,但是灵活性不够。Go 标准库提供了一个日志库log。本文介绍log库的使用。 快速使用 log是 Go 标准库提供的,不需要另外安装。可直接使用: package main import ( "log"
Go每日一库之23:buntdb
简介 buntdb是一个完全用 Go 语言编写的内存键值数据库。它支持 ACID、并发读、自定义索引和空间信息数据。buntdb只用一个源码文件就实现了这些功能,对于想要学习数据库底层知识的童鞋更是不容错过。 感谢@kiyonlin推荐! 快速使用 先安装: $ go get github.com/
Go每日一库之26:jj
简介 在前面两篇文章中,我们分别介绍了快速读取 JSON 值的库gjson和快速设置 JSON 值的库sjson。今天我们介绍它们的作者tidwall的一个基于gjson和sjson的非常实用的命令行工具jj。它是使用 Go 编写的快速读取和设置 JSON 值的命令行程序。 快速使用 Mac 上可以
Go每日一库之96:phantomjs
## 1. 什么是Phantomjs [PhantomJS](https://phantomjs.org/)是一个基于webkit的JavaScript API。它使用QtWebKit作为它核心浏览器的功能,使用webkit来编译解释执行JavaScript代码。任何您可以在基于webkit浏览器做
Go每日一库之36:nutsdb
## 简介 [`nutsdb`](https://github.com/xujiajun/nutsdb)是一个完全由 Go 编写的简单、快速、可嵌入的持久化存储。`nutsdb`与我们之前介绍过的[`buntdb`](https://go-quiz.github.io/2020/03/21/goda
Go每日一库之52:commonregex
## 简介 有时,我们会遇到一些需要使用字符串的匹配和查找的任务。并且我们知道这种情况下,使用正则表达式是最简洁和优雅的。为了完成某个任务特地去系统地学习正则表达式费时费力,而且一段时间不用又很容易遗忘。下次遇到问题还要再重复这个过程。[`commonregex`](https://github.c
Go每日一库之91:gomock
## 1 gomock 简介 testing包里 介绍了 Go 语言中单元测试的常用方法,包括子测试(subtests)、表格驱动测试(table-driven tests)、帮助函数(helpers)、网络测试和基准测试(Benchmark)等。这篇文章介绍一种新的测试方法,mock/stub 测
Go每日一库之48:cron
## 简介 [`cron`](https://github.com/robfig/cron)一个用于管理定时任务的库,用 Go 实现 Linux 中`crontab`这个命令的效果。之前我们也介绍过一个类似的 Go 库——[`gron`](https://go-quiz.github.io/2020
Go每日一库之121:timer(时间轮算法定时器)
当业务要处理大量的定时任务时,如果每个任务都创建一个Golang原生的timer的话,会占用较多的cpu资源,这类场景,可以用时间轮算法优化timer的资源消耗。本次介绍一款多级时间轮库antlabs/timer(以下timer特指antlabs/timer库),处理类似场景的优化。 ## **功能
Go每日一库之122:gofumpt(增强代码格式化)
# 前言 gofmt 是 golang 自带的代码自动格式化工具,是保证 Go 代码风格一致的大杀器。我们这次要推荐的 **gofumpt 在 gofmt 的基础上添加了一系列更加严格的格式化规则,并保证了对 gofmt 的兼容**。 gofumpt 有助于进一步提升代码质量,它已经成为 gopls
Go每日一库之163:goreplay(流量回放)
今天给大家推荐一款使用Go语言编写的流量回放工具 -- **goreplay**;工作中你一定遇到过需要在服务器上抓包的场景,有了这个工具就可以助你一臂之力,**goreplay**的功能十分强大,支持流量的放大、缩小,并且集成了`ElasticSearch`,将流量存入ES进行实时分析;
Go每日一库之7:fsnotify(跨平台文件监听)
简介 上一篇文章Go 每日一库之 viper中,我们介绍了 viper 可以监听文件修改进而自动重新加载。 其内部使用的就是fsnotify这个库,它是跨平台的。今天我们就来介绍一下它。 快速使用 先安装: $ go get github.com/fsnotify/fsnotify 后使用: pac
Go每日一库之79:testing
## 简介 [`testing`](https://golang.google.cn/pkg/testing/)是 Go 语言标准库自带的测试库。在 Go 语言中编写测试很简单,只需要遵循 Go 测试的**几个约定**,与编写正常的 Go 代码没有什么区别。Go 语言中有 3 种类型的测试:单元测试
Go每日一库之149:PDF处理相关库
**PDF处理场景:** - pdf渲染 - pdf校验 - pdf加水印 - pdf获取页数 - pdf合并 - pdf拆分 - 修复受损pdf - pdf转png - 识别pdf中的字体 - pdf解密 ... ### 一、HTML页面渲染PDF 根据html页面渲染pdf,我使用过以下两种方案
Go每日一库之168:redsync(redis分布式锁)
今天给大家推荐的是基于redis的Go版本的分布式锁工具:[redsync]()。该工具也是redis官网上推荐的。redsync 基于redis的高可用、高性能、防死锁、防误删的分布式锁实现,具有高性能、高可用、防死锁、防误删的特点。 ## 一、分布式锁基础知识 **什么是分布式锁** 锁,在编程
Go每日一库之40:jsonrpc
## 简介 在[上一篇文章](https://go-quiz.github.io/2020/05/08/godailylib/rpc)中我们介绍了 Go 标准库`net/rpc`的用法。在默认情况下,`rpc`库内部使用`gob`格式传输数据。我们仿造`gob`的编解码器实现了一个`json`格式的
Go每日一库之12:carbon(日期和时间)
简介 一线开发人员每天都要使用日期和时间相关的功能,各种定时器,活动时间处理等。标准库time使用起来不太灵活,特别是日期时间的创建和运算。carbon库是一个时间扩展库,基于 PHP 的carbon库编写。提供易于使用的接口。本文就来介绍一下这个库。 快速使用 第三方库需要先安装: $ go ge
下一页