短链的实现

问题的起因是这个: 这是我的刷题日志。当时是 2017.3.4 号,做了这道题之后,一直想写下是否有更好的解题思路。但是一直没(lan)有(lan)时(lan)间(lan)。 正巧今天在复习数据结构的时候看到了 LZW 压缩器。这就可以拉出来好好扯一下了。 其实现在流行的,或者网上的标准操作套路都是使用 hash 的方式,将其对应到几个短的链接上,但是因为毕竟这个属于 hash 映射,在长度变短的情况下,始终会有冲突的危险。所以也就带来了 rehash(cp... [阅读全文]

MySQL的一个坑

PS:其实也不是坑吧,主要是之前没有关注这个东西 首先看一下坑的由来: 昨天运营那边反馈过来一个问题,就是手机端商品存在重复.然后开始排查,手机端的商品总数和PC上是一至的,但是手机端存在重复的商品,就意味着有的商品没有显示.已开始以为是缓存问题,在更新select的时侯,阿润老师的排序crond更新了排名,导致问题,但是后来取消了缓存,发现问题还在. 最后问题定为在数据库上,我执行了如下的sql语句(也是常用的分页代码): SELECT * FRO... [阅读全文]

MySQL的锁分析

首先,我就先假设读者们都是了解数据库隔离级别的人,对所谓的RR,RC,RU,Serializable都是耳熟能详的。 如果不明白,可以看看这几篇文章,写的都很清楚,详细。 数据库隔离级别 乐观锁和悲观锁 但是,知道了这些概念,我们怎么去优化我们的SQL语句呢。其实还有一小段路。 比如说,现在有这么两个SQL语句: select * from t1 where id = 10; delete from t1 where id = 10 MySQL会采用什么样的方式进行加... [阅读全文]