首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
有疑说
掘友等级
Principal Engineer
|
Shopee
前微信搜一搜、看一看后台开发 高级工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
47
文章 47
沸点 0
赞
47
返回
|
搜索文章
有疑说
Principal Engineer @Shopee
·
8月前
关注
go-redis 超时机制
使用 go-redis 作为 client 访问 redis。ReadTimeout 配置为 1 ms,但请求整体耗时 76 ms 成功返回(没有超时)为什么 ReadTi...
赞
评论
分享
有疑说
Principal Engineer @Shopee
·
9月前
关注
深入理解 Redis cluster GOSSIP 协议
GOSSIP 是一种分布式系统中常用的协议,用于在节点之间传播信息,维护集群拓扑结构。通过 GOSSIP 协议,Redis Cluster 中的每个节点都与其他节点进行通信...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
9月前
关注
如何应对系统热点的挑战
背景 假设单个有状态实例支撑 1 W QPS,如果有 500 个实例,你可能会期望它们能够支撑 500 * 1W = 500W QPS 的流量。然而,实际情况可能会更为复杂...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
10月前
关注
go-redis 连接池配置
连接池是各种服务绕不过去的模块,它在调用链路的上下游之间建立了一个缓冲区。客户端可以从连接池中获取连接来执行数据库操作,完成后将连接返回给连接池,而不是每次都建立新的连接。...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
如何快速定位现网 BUG
“幸福的家庭都是相似的,不幸的家庭却各有各的不幸”,托尔斯泰的名言。在 BUG 定位这件事情上,其实也有类似的现象:”菜鸟们的紧张无措都是相似的,老鸟们的方法却各有各的不同...
4
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
译|There Are No Reference Types in Go
有一天,我用谷歌搜索一个 Go 问题,谷歌将我引导到 Go FAQ 页面。问题解决后,我阅读了整个 FAQ。我注意到一个问题,为什么数组是值,而 map、slice 和 ...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
Go 语言没有引用类型,指针也与众不同
面向对象编程强调数据和操作绑定,方法是有状态的,本身可能会修改数据。因此编程时确定方法是否会修改原始数据尤其关键。多数从其他语言转到 Go 语言的开发者,都会首先了解 Go...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
译|What “accept interfaces, return structs” means in Go
“接受接口、返回结构” 的一般原则,我在前一篇文章中写到,也多次在代码评审时向同事介绍,但经常遇到“为什么”的疑问。特别是因为这不是一条硬性规定。该想法的关键在于保持灵活性...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
如何用好 Go interface
interface 是 Go 语言最精髓的特性之一,一直以来想写一篇关于 interface 的文章,但是一直没敢写。持续几年之久,还是斗胆总结下。...
2
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
一个优雅的 LRU 缓存实现
Golang 的各种组件很灵活也很强大,但对于初级入门的使用者来说,要用好着实不易。最近,在开发一个可以拿来即用的 golang 库。第一个组件选择了缓存,主要是因为这个组...
6
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
Go 函数式编程:Higher-order function
在请求处理过程中,应用程序会接受和处理请求,然后返回响应结果。在该过程中,还存在一些通用的功能,例如:鉴权、监控、链路追踪。众多 RPC 框架会提供称之为 Middlewa...
3
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
译|Eventually Consistent
一年前,我写过一致性模型的文章的第一个版本。因为当时写的很匆忙,而且这个主题非常重要,值得更缜密的对待,所以我并不是很满意。ACM Queue 为将其发布到自己觉得杂志上,...
2
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
内存管理 - 物理内存
本篇从我自己的角度来写对物理内存管理的理解。逐步揭开相关的细节: 1. 内核是使用什么地址访问物理内存的? 2. 物理内存为何需要分区? 3. 伙伴系统和 SLAB 系统 ...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
MySQL 设计与查询规范
想象一下自己是一名伐木工人,突然有天有人想你推销一款新的工具——链锯。你也买了一把,不过你不懂得怎么用。你估摸着按照自己原来擅长的砍树方法,把链锯大力地挥向树干……...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
译|High-Performance Server Architecture
介绍 本文的目的是分享我多年来关于如何开发某种应用程序的一些想法。更准确地说,将写的与一大类程序有关,这些程序旨每秒处理大量离散的消息或请求。低级优化通常是搞砸设计的人最后...
5
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
诠释 Channels orchestrate; mutexes serialize
channel 是 Go 语言独有的一个特性,相比 goroutine 更加抽象,也更加难以理解。毕竟后者可以类比线程、进程......
3
评论
分享
有疑说
Principal Engineer @Shopee
·
2年前
关注
内容型产品架构:推模型还是拉模型?
无论是信息流、论坛、信箱,还是私聊、群聊、通知,推拉模型是内容型(包括:社交型)产品架构的核心。做出正确选择的关键在于对 产品形态 和系统组件 清晰的认识 模型 推模型(写...
4
2
分享
有疑说
Principal Engineer @Shopee
·
3年前
关注
如何维护好一个微服务
微服务火了这么久,服务越拆越多,但是很少有人知道如何维护好一个微服务。本文以微博的 “用户资料” 服务举例来谈谈。 反之,则意味着该服务存在问题,需要修正。 不符合 4、5...
3
1
分享
有疑说
Principal Engineer @Shopee
·
3年前
关注
Golang 面向对象编程
是,也不是。尽管 Go 有类型和方法,并且允许面向对象风格的编程,但没有类型层次结构。Go 的『接口』概念提供了一种不同的实现方式,在某些方面更通用。同时,缺少类型层次结构...
1
评论
分享
有疑说
Principal Engineer @Shopee
·
3年前
关注
译 | Packages as layers, not groups
四年前,我写了一篇名为 《标准包布局》 的文章试图阐述:包布局。即使对高级 Go 开发人员来说,这也是最困难的话题之一。然而,大多数开发人员还在艰难地将代码组织到目录结构中...
3
2
分享
下一页
个人成就
文章被点赞
150
文章被阅读
39,775
掘力值
1,565
关注了
2
关注者
54
收藏集
3
关注标签
10
加入于
2019-02-20