验证码常见安全问题

(1). 验证码在页面或者cookies中输出。这个时候只需要提取一下就能直接使用了。经过加密的也不行,也可以直接去替换密文。 (2). 验证码验证完成后没有销毁,导致验证码重复使用。 验证码的值是在...
阅读全文

Django的信号和观察者模式

今天想到给以前写的东西增加缓存支持,每次数据库发生变化之后主动的去修改缓存。当然最笨的方法就是在每次更新数据库的代码后面写一段更新缓存的代码,我们能不能在数据库被更新之后对外发一个信号呢,更新缓存的函...
阅读全文

To be lazy

平时人们做事的时候谁说lazy也是不好的,但是在程序设计的时候,lazy是一种有效的提供性能的方法,大致的思想就是需要的时候再计算,尽量的缓存计算结果。 copy on write linux上传统的...
阅读全文

使用修饰符来简化代码

常见的使用修饰符的场景是每个函数都有一段相同的逻辑,提取出来作为修饰符,那个比较常见,下面的例子是另外一个比较常见的使用修饰符的场景,可以提高代码可维护性。 有多种消息类型,每个类型对应一个消息类,新...
阅读全文