上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 234 下一页

2021年6月11日

这可能是最容易理解的 Go Mutex 源码剖析

摘要: 上一篇文章《一文完全掌握 Go math/rand》,我们知道 math/rand 的 global rand 有一个全局锁,我的文章里面有一句话:“修复方案: 就是把 rrRand 换成了 globalRand, 在线上高并发场景下, 发现全局锁影响并不大.”, 有同学私聊我“他们遇到线上服务的锁 阅读全文

posted @ 2021-06-11 10:36 ExplorerMan 阅读(125) 评论(0) 推荐(0)

当 Go struct 遇上 Mutex

摘要: struct 是我们写 Go 必然会用到的关键字, 不过当 struct 遇上一些比较特殊类型的时候, 你注意过你的程序是否正常吗 ? 一段代码 type URL struct { Ip string Port string mux sync.RWMutex params url.Values } 阅读全文

posted @ 2021-06-11 10:35 ExplorerMan 阅读(106) 评论(0) 推荐(0)

Go sync.Pool 浅析

摘要: sync.Pool 应该是 Go 里面明星级别的数据结构,有很多优秀的文章都在介绍这个结构,本篇文章简单剖析下 sync.Pool。不过说实话 sync.Pool 并不是我们日常开发中使用频率很高的的并发原语。 尽管用的频率很低,但是不可否认的是 sync.Pool 确实是 Go 的杀手锏,合理使用 阅读全文

posted @ 2021-06-11 10:34 ExplorerMan 阅读(123) 评论(0) 推荐(0)

golang面向对象分析

摘要: 说道面向对象(OOP)编程, 就不得不提到下面几个概念: 抽象 封装 继承 多态 其实有个问题Is Go An Object Oriented Language?, 随便谷歌了一下, 你就发现讨论这个的文章有很多: reddit google group 那么问题来了 Golang是OOP吗? 使用 阅读全文

posted @ 2021-06-11 10:33 ExplorerMan 阅读(76) 评论(0) 推荐(0)

一次错误使用 go-cache 导致出现的线上问题

摘要: 话说一个美滋滋的上午, 突然就出现大量报警, 接口大量请求都响应超时了. 排查过程 查看服务器的监控系统, CPU, 内存, 负载等指标正常 排查日志, 日志能够响应的结果也正常. request.log 中响应时长高达数秒 查看数据库, codis 监控, 各项指标正常 不得已, 只能打开线上 p 阅读全文

posted @ 2021-06-11 10:32 ExplorerMan 阅读(399) 评论(0) 推荐(0)

Go timer 是如何被调度的?

摘要: 本篇文章剖析下 Go 定时器的相关内容。定时器不管是业务开发,还是基础架构开发,都是绕不过去的存在,由此可见定时器的重要程度。 我们不管用 NewTimer, timer.After,还是 timer.AfterFun 来初始化一个 timer, 这个 timer 最终都会加入到一个全局 timer 阅读全文

posted @ 2021-06-11 10:31 ExplorerMan 阅读(75) 评论(0) 推荐(0)

2021年6月10日

Python异步Request操作: aiohttp

摘要: 目录 1. Tutorial 2. 其他库推荐 2.1. aiohttp-requests 2.2. aiofiles 2.3. grequests 3. 问题记录 3.1. Multipart.FormData 示例 3.2. with open("xxx") 会被自动关闭 3.3. filena 阅读全文

posted @ 2021-06-10 15:33 ExplorerMan 阅读(650) 评论(0) 推荐(0)

小白爬虫第四弹之爬虫快跑(多进程 + 多线程)

摘要: PS:使用多线程时好像在目录切换的问题上存在问题,可以给线程加个锁试试 Hello 大家好!我又来了。你是不是发现下载图片速度特别慢、难以忍受啊!对于这种问题 一般解决办法就是多进程了!一个进程速度慢!我就用十个进程,相当于十个人一起干。速度就会快很多啦!(为什么不说多线程?懂点 Python 的小 阅读全文

posted @ 2021-06-10 15:25 ExplorerMan 阅读(222) 评论(0) 推荐(0)

python 爬虫之requests模块设置代理

摘要: 文章目录为什么设置代理?设置代理常用获取代理IP地址测试IP地址可用性为什么设置代理?我们都知道上网连接到互联网时会有一个【ip】地址。 而网站都有请求的临界点,当我们对一个网站发起多次请求时,网站发现请求次数超过了临界点,就会自动屏蔽掉我们的【ip】,这时就再也无法访问此网站了。 这就是基础的一种 阅读全文

posted @ 2021-06-10 14:33 ExplorerMan 阅读(1545) 评论(0) 推荐(0)

2021年6月3日

python : itertools 中的 islice : 获取迭代器结果的切片,消耗迭代器

摘要: islice(iterable, [start, ] stop [, step]):创建一个迭代器,生成项的方式类似于切片返回值: iterable[start : stop : step],将跳过前start个项,迭代在stop所指定的位置停止,step指定用于跳过项的步幅。与切片不同,负值不会用 阅读全文

posted @ 2021-06-03 20:33 ExplorerMan 阅读(325) 评论(0) 推荐(0)

上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 234 下一页

导航