摘要:python中的None python中的None就相较于Java中的Null。python中就没有所谓的NULL。网络上很多的时候说的“python的Null”这个说法本身就是不对的。 python中的None有自己的类型,是NoneType类型。 由于python是强类型语言,所以None不等于 阅读全文
WeakHashMap
2017-08-22 19:22 by 轩脉刃, 632 阅读, 0 推荐, 收藏, 编辑
摘要:WeakHashMap 今天在具体业务的时候看到HashMap和WeakHashMap的区别。因为PHP语言并没有这种概念。所以很好奇做了一下研究。 WeakHashMap WeakHashMap所谓的“弱”是针对GC来说的。换句话说,GC操作的时候,会不会自动去回收掉WeakHashMap中已经没 阅读全文
函数式编程
2017-07-26 16:37 by 轩脉刃, 1319 阅读, 1 推荐, 收藏, 编辑
摘要:函数式编程 函数式编程(Functional Programming)之前都只是听说过,没有使用过所谓的函数式编程思想。不大理解这个概念。最近弄python的时候遇到了这个概念。 函数式编程对应的是命令式编程(imperative programming)。我们平时写的程序大都属于这种编程方式:如果 阅读全文
初识hadoop
2017-05-05 18:32 by 轩脉刃, 848 阅读, 0 推荐, 收藏, 编辑
摘要:初识hadoop 概念 hadoop首先是大数据领域。大数据领域至少是分布式的,分布式数据必然是有一定规模了。如果数据只有几个G或者更小就没有什么意义了。 hadoop最核心的概念就是HDFS和MapReduce。hadoop的源码在github上也有对应的开源:https://github.com 阅读全文
laravel Scout包在elasticsearch中的应用
2017-04-05 15:14 by 轩脉刃, 4752 阅读, 0 推荐, 收藏, 编辑
摘要:laravel Scout包在elasticsearch中的应用 laravel的Scout包是针对自身的Eloquent模型开发的基于驱动的全文检索引擎。意思就是我们可以像使用ORM一样使用检索功能。不管你用的是什么搜索引擎,scout包给你封装好了几个方法 你只需要创建一个引擎(比如es引擎)就 阅读全文
查询运营商的ip段
2017-03-30 06:39 by 轩脉刃, 5272 阅读, 0 推荐, 收藏, 编辑
摘要:查询运营商的ip段 所有的IP地址都是通过国际组织NIC(Network Information Center)统一分配的,目前世界上有三个这样的网络信息中心: InterNic: 负责美国及其他地区 ENic: 负责欧洲地区 APNIC: 负责亚太地区 像我们中国的所有运营商,比如六大运营商(中国 阅读全文
解锁redis锁的正确姿势
2017-03-22 07:11 by 轩脉刃, 10859 阅读, 3 推荐, 收藏, 编辑
摘要:解锁redis锁的正确姿势 redis是php的好朋友,在php写业务过程中,有时候会使用到锁的概念,同时只能有一个人可以操作某个行为。这个时候我们就要用到锁。锁的方式有好几种,php不能在内存中用锁,不能使用zookeeper加锁,使用数据库做锁又消耗比较大,这个时候我们一般会选用redis做锁机 阅读全文
说说API的防重放机制
2017-03-20 18:19 by 轩脉刃, 31245 阅读, 14 推荐, 收藏, 编辑
摘要:说说API的防重放机制 我们在设计接口的时候,最怕一个接口被用户截取用于重放攻击。重放攻击是什么呢?就是把你的请求原封不动地再发送一次,两次...n次,一般正常的请求都会通过验证进入到正常逻辑中,如果这个正常逻辑是插入数据库操作,那么一旦插入数据库的语句写的不好,就有可能出现多条重复的数据。一旦是比 阅读全文
laravel的消息队列剖析
2017-03-18 10:33 by 轩脉刃, 8531 阅读, 0 推荐, 收藏, 编辑
摘要:laravel的消息队列剖析 这篇来自于看到朋友转的58沈剑的一篇文章: "1分钟实现“延迟消息”功能" 在实际工作中也不止遇见过一次这个问题,我在想着以前是怎么处理的呢?我记得当初在上家公司的时候直接使用的是laravel的queue来实现的。当然,这里说的laravel的queue实际上也是基于 阅读全文
策略模式
2017-03-14 07:43 by 轩脉刃, 542 阅读, 0 推荐, 收藏, 编辑
摘要:最近工作使用到设计模式,在选用设计模式的时候,发觉设计模式理解不难,难的是在某个场景下选用哪个设计模式。就是设计模式的使用场景。 策略模式 策略模式适用情况是你已经知道了某个算法。第一步做什么,第二步做什么,第三步做什么。但是具体的三步在不同场景怎么做有不同的行为。 代码举例: 策略模式属于行为型模 阅读全文