Golang中使用recover捕获panic的操作及遇到的一个坑
摘要:说明 本文介绍一下使用recover捕获panic的操作及遇到的一个坑。 使用recover捕获panic 正常情况下,发生panic的函数会导致程序异常退出,我们可以使用defer语句在另外一个函数中捕获到当前函数panic的error并做相应的逻辑处理: package test1 import
阅读全文
posted @
2021-03-16 16:54
江湖乄夜雨
阅读(1224)
推荐(0) 编辑
Python与Golang中给列表中字典按照某个key排序以及Go中给切片中的结构体排序
摘要:Golang中使用sort包按照结构体多个字段排序的正确方法!!! type Bird struct { A1 int `json:"a1"` A2 int `json:"a2"` A3 int `json:"a3"` A4 int `json:"a4"` } func TestBirdSort(t
阅读全文
posted @
2021-03-11 17:49
江湖乄夜雨
阅读(1138)
推荐(0) 编辑
浅谈Python与Golang中的“惰性求值”
摘要:前言 Python与Golang中的“惰性求值”主要出现在闭包中。 本文主要通过几个简单案例介绍一下Python中闭包的惰性求值与Golang中闭包与Goroutine的惰性求值机制与理解。 Python中闭包的惰性求值 简单的案例 先来看一个使用Python实现闭包惰性求值的简单案例: def o
阅读全文
posted @
2021-03-05 17:31
江湖乄夜雨
阅读(543)
推荐(0) 编辑
控制Goroutine并发量的解决方案
摘要:前言 Go语言虽然开并发Goroutine特别简单,但是实际中如果不控制并发的数量会导致资源的浪费以及同时占用大量服务资源(http连接、数据库连接、文件句柄等)导致服务性能下降! 笔者之前总结过一篇在业务代码中控制并发数量的文章:Go控制协裎并发数量的用法及实际中的一个案例 ants库实现链接池的
阅读全文
posted @
2021-03-04 18:47
江湖乄夜雨
阅读(975)
推荐(0) 编辑
使用pgcli工具连接postgreSQL数据库服务
摘要:现在公司的关系型数据库使用的是postgreSQL,最近找到一个十分方便的终端工具操作postgreSQL,简单分享一下。 安装 因为这个工具是用python写的,我们既可以使用pip安装,也可以使用brew安装,笔者这里推荐大家使用brew安装: brew install pgcli 连接数据库
阅读全文
posted @
2021-03-04 11:44
江湖乄夜雨
阅读(1159)
推荐(0) 编辑
使用go-retryablehttp包实现http“链接池”效果
摘要:前言 在go中使用http的方式获取数据时每次通常都会创建一个http的Client对象处理请求,但是如果一次任务中请求的非常频繁,每一次请求都要创建一个Client对象的话势必会造成链接资源的浪费。 在实际中我们知道有一种“链接池”的概念,就是说提前在链接池中创建好链接,每一次请求前都从这个“链接
阅读全文
posted @
2021-03-03 19:12
江湖乄夜雨
阅读(1114)
推荐(0) 编辑
xorm相关操作小结
摘要:前言 最近写业务用到xorm操作postgreSQL,抽空写了一些平时会用到的常用的操作,好脑筋不如好笔记。 xorm 参考文档 中文文档-方便滤清xorm所有的知识体系 英文文档-有各种各样的实际操作 项目地址 相关技术博客 Go每日一库之xorm 上面那个作者的每日一库系列跟Go的相关文章挺不错
阅读全文
posted @
2021-03-02 21:07
江湖乄夜雨
阅读(2142)
推荐(0) 编辑