失踪人口回来啦!
有读者问我为什么这么久都没有出Redis Lua中学教程,表示村头厕所已经好久没有纸了。其实我早就要写这篇中学教程了,奈何最近太忙了,就一拖再拖,直到今天我终于又开始动笔了。忘记Lua相关概念的同学可以先回顾一下小学教程。
靠脸吃饭
失踪人口回来啦!
有读者问我为什么这么久都没有出Redis Lua中学教程,表示村头厕所已经好久没有纸了。其实我早就要写这篇中学教程了,奈何最近太忙了,就一拖再拖,直到今天我终于又开始动笔了。忘记Lua相关概念的同学可以先回顾一下小学教程。
Redis提供了丰富的指令集,但是仍然不能满足所有场景,在一些特定场景下,需要自定义一些指定来完成某些功能。因此,Redis提供了Lua脚本支持,用户可以自己编写脚本来实现想要的功能。
Redis客户端与服务器之间使用TCP协议进行通信,并且很早就支持管道(pipelining)技术了。在某些高并发的场景下,网络开销成了Redis速度的瓶颈,所以需要使用管道技术来实现突破。
在前面介绍压缩列表ziplist的时候我们提到过,zset内部有两种存储结构,一种是ziplist,另一种是跳跃列表skiplist。为了彻底理解zset的内部结构,我们就再来介绍一下skiplist。
本文是Google工程师Steve Merritt的一篇博客,向大家介绍他自己和身边的同事解决编程问题的方法。
原文地址:https://blog.usejournal.com/how-a-googler-solves-coding-problems-ec5d59e73ec5
经过前面对Redis源码的了解,令人印象深刻的也许就是Redis各种节约内存手段。而Redis对于内存的节约可以说是费尽心思,今天我就再来介绍一种Redis为了节约内存而创造的存储结构——压缩列表(ziplist)。
王小锤是一家电商网站的Java程序员,下午刚打开电脑,公司的运营妹子小美就过来找他:“小锤,你能帮我导一份数据吗?我需要昨天成为SVIP用户,并且之前给过差评的这些账号,不过要把一个叫大宝的账号去掉,他老板亲戚。”对于小美的需求,小锤从来没有拒绝过,这次也不例外。
原文链接:https://medium.com/@daily_javascript/a-friendly-guide-to-big-o-ea781c5f68f0
并不是每个公司在面试的时候都会问关于算法复杂度大O的问题,但是如果你想要到Facebook、Google或Amazon这样的公司工作的话,这是你必须要了解的知识。如果你没有很好的数学功底,那么你去看课本上关于大O的概念的话将会是一场灾难。