Skip to main content

12 posts tagged with "golang"

View All Tags

· 7 min read
sado

1) 一般限流

一般我们会选择 `漏斗桶/令牌桶` 算法来进行限流, 确实能够保护系统不被拖垮。其`核心思想`有两点:
1) 设置指标, 固定一个漏斗或者固定发送令牌的速度
2) 超过指标限制流量进入

根据这两个特点, 我们很容易推出会遇到什么`问题`:
1) 指标不好定, 设置流量的阈值是什么?
2) 当突然出现流量高峰的时候, 是需要人工介入去调整的

总结就是传统限流比较被动, 不能够自适应流量的变化

· 4 min read
sado

A go bloom filter , base on different implement like `redis` ...

what?

上一篇在提到缓存击穿的时候, 有一种解决办法就是布隆过滤器


布隆过滤器(英語:Bloom Filter)是1970年由布隆提出的。 它实际上是一个很长的二进制向量和一系列随机映射函数。 布隆过滤器可以用于检索一个元素是否在一个集合中。 它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难

· 7 min read
sado

一、前言

​ 上文介绍了 trace 的 由来, 以及简单应用, 今天我们就来实际用代码操作一下, 看看到底如何简单, 方便的在项目中接入 trace

​ 一般我们会采用中间件的方式在web库中接入, 各大主流的web库(如gin,iris)都有自己的中间件方式, 整体上都是大同小异的, 由于作者的项目中使用的是iris库, 今天我们采用 iris 来进行demo演示