首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
thinkeridea
掘友等级
Go 开发工程师
一枚有点想法,喜技术,爱钻研的码农。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
16
文章 16
沸点 0
赞
16
返回
|
搜索文章
最新
热门
【Go】优雅的读取http请求或响应的数据-续
之前发布 【Go】优雅的读取http请求或响应的数据 文章,网友 “wxe” 咨询:“优化前后的请求耗时变化有多大”,之前只分析了内存分配,这篇文章用单元测试的方式分析优化前后的耗时情况,本文源码。 非常感谢 “wxe” 网友的提问,让我在测试过程中发现一个 json 序列化的…
【Go】优雅的读取http请求或响应的数据
从 http.Request.Body 或 http.Response.Body 中读取数据方法或许很多,标准库中大多数使用 ioutil.ReadAll 方法一次读取所有数据,如果是 json 格式的数据还可以使用 json.NewDecoder 从 io.Reader 创建…
【Go】slice的一些使用技巧
slice 是 Go 语言十分重要的数据类型,它承载着很多使命,从语言层面来看是 Go 语言的内置数据类型,从数据结构来看是动态长度的顺序链表,由于 Go 不能直接操作内存(通过系统调用可以实现,但是语言本身并不支持),往往 slice 也可以用来帮助开发者申请大块内存实现缓冲…
【Go】深入剖析slice和array
今天借助 Go 的 unsafe 包来探索 array 和 slice 的各种奥妙。 slice 是在 array 的基础上实现的,需要先详细了解一下数组。 根据维基的介绍,了解到数组是存储在一段连续的内存中,每个元素的类型相同,即是每个元素的宽度相同,可以根据元素的宽度计算元…
【Go】一次读锁重入导致的死锁故障
这次的经历让我未来会更加小心,下面来回顾一下死锁发生的过程与代码演进的过程吧。 我的程序中有一块缓存,数据会组织好放到内存中,会根据数据源(MySQL)更新而刷新缓存,是读多写少的应用场景。 内存中有一个很大数据列表,缓存模块会按数据维度进行分组,每次访问根据维度查找到这个列表…
【Go】使用压缩文件优化io (二)
上一篇文章《使用压缩文件优化io (一)》中记录了日志备份 io 优化方案,使用文件流数据压缩方案优化 io 性能,效果十分显著。这篇文章记录数据分析前置清洗、格式化数据的 io 优化方案,我们有一台专用的日志前置处理服务器,所有业务日志通过这台机器从 OSS 拉取回来清洗、格…
【Go】使用压缩文件优化io (一)
最近遇到一个日志备份 io 过高的问题,业务日志每十分钟备份一次,本来是用 Python 写一个根据规则扫描备份日志问题不大,但是随着业务越来越多,单机上的日志文件越来越大,文件数量也越来越多,导致每每备份的瞬间 io 阻塞严重, CPU 和 load 异常的高,好在备份速度很…
个人成就
文章被点赞
58
文章被阅读
22,655
掘力值
487
关注了
1
关注者
21
收藏集
1
关注标签
11
加入于
2019-07-01