今天面试golang碰到了一道考并发和锁的题目,没有完成,所以把它记录下来,仅为以后复习。
场景:在一个高并发的web服务器中,要限制IP的频繁访问。现模拟100个IP同时并发访问服务器,每个IP要重复访问1000次。每个IP三分钟之内只能访问一次。修改以下代码完成该过程,要求能成功输出 success:100
以上代码有一些坑。当时也是没有做出来,回来请教一位大佬,得以解决。
主要用到了闭包,原子操作和锁实现
原文:https://blog.csdn.net/qq_28163175/article/details/75287877
添加小编微信:grey0805,欢迎指教 ☺