摘要: QPS是什么 我们先回忆一下,QPS的概念如下所示: QPS(Query Per Second):每秒请求数,就是说服务器在一秒的时间内处理了多少个请求。 那我们怎么估出每秒钟能处理多少请求呢? OK,用日志来估计!那日志怎么记录呢,细分下来,有两种方式。 方式一:自己在接口里记录 这种方式指的是在 阅读全文
posted @ 2021-10-23 17:45 brady-wang 阅读(2715) 评论(0) 推荐(2)
摘要: 真实面试小场景: 经过八股和算法的交锋,老三松了口气,都hold住了。只见面试官微微一笑,“其实,我真正想问的是……你觉得扫码登录应该怎么实现。” 老三:“啊……这个,哦……那个,这个就这么,然后……额……嗯……” 面试官:“了解了,回去等通知吧。” 完…… 好了,铺垫结束,进入我们今天的主题,扫码 阅读全文
posted @ 2021-10-23 17:41 brady-wang 阅读(843) 评论(0) 推荐(0)
摘要: https://blog.csdn.net/weixin_43443216/article/details/88086217 阅读全文
posted @ 2021-10-23 16:24 brady-wang 阅读(34) 评论(0) 推荐(0)
摘要: # 描述 sync.Once 是 Golang package 中使方法只执行一次的对象实现,作用与 init 函数类似。但也有所不同。 init 函数是在文件包首次被加载的时候执行,且只执行一次 sync.Onc 是在代码运行中需要的时候执行,且只执行一次 当一个函数不希望程序在一开始的时候就被执 阅读全文
posted @ 2021-10-23 14:08 brady-wang 阅读(124) 评论(0) 推荐(0)
摘要: sync.Once.Do(f func())是一个挺有趣的东西,能保证once只执行一次,无论你是否更换once.Do(xx)这里的方法,这个sync.Once块只会执行一次。 package main import ( "fmt" "sync" "time" ) var once sync.Onc 阅读全文
posted @ 2021-10-23 14:05 brady-wang 阅读(147) 评论(0) 推荐(0)
摘要: runtime.Gosched(),用于让出CPU时间片,让出当前goroutine的执行权限,调度器安排其它等待的任务运行,并在下次某个时候从该位置恢复执行。这就像跑接力赛,A跑了一会碰到代码runtime.Gosched()就把接力棒交给B了,A歇着了,B继续跑。 runtime.Goexit( 阅读全文
posted @ 2021-10-23 11:28 brady-wang 阅读(265) 评论(0) 推荐(0)
摘要: unsafe,顾名思义,是不安全的,Go定义这个包名也是这个意思,让我们尽可能的不要使用它,如果你使用它,看到了这个名字,也会想到尽可能的不要使用它,或者更小心的使用它。 虽然这个包不安全,但是它也有它的优势,那就是可以绕过Go的内存安全机制,直接对内存进行读写,所以有时候因为性能的需要,会冒一些风 阅读全文
posted @ 2021-10-23 10:36 brady-wang 阅读(62) 评论(0) 推荐(0)