代码改变世界

初识hadoop

2017-05-05 18:32 by 轩脉刃, 846 阅读, 0 推荐, 收藏, 编辑
摘要:初识hadoop 概念 hadoop首先是大数据领域。大数据领域至少是分布式的,分布式数据必然是有一定规模了。如果数据只有几个G或者更小就没有什么意义了。 hadoop最核心的概念就是HDFS和MapReduce。hadoop的源码在github上也有对应的开源:https://github.com 阅读全文

laravel Scout包在elasticsearch中的应用

2017-04-05 15:14 by 轩脉刃, 4730 阅读, 0 推荐, 收藏, 编辑
摘要:laravel Scout包在elasticsearch中的应用 laravel的Scout包是针对自身的Eloquent模型开发的基于驱动的全文检索引擎。意思就是我们可以像使用ORM一样使用检索功能。不管你用的是什么搜索引擎,scout包给你封装好了几个方法 你只需要创建一个引擎(比如es引擎)就 阅读全文

查询运营商的ip段

2017-03-30 06:39 by 轩脉刃, 5168 阅读, 0 推荐, 收藏, 编辑
摘要:查询运营商的ip段 所有的IP地址都是通过国际组织NIC(Network Information Center)统一分配的,目前世界上有三个这样的网络信息中心: InterNic: 负责美国及其他地区 ENic: 负责欧洲地区 APNIC: 负责亚太地区 像我们中国的所有运营商,比如六大运营商(中国 阅读全文

解锁redis锁的正确姿势

2017-03-22 07:11 by 轩脉刃, 10845 阅读, 3 推荐, 收藏, 编辑
摘要:解锁redis锁的正确姿势 redis是php的好朋友,在php写业务过程中,有时候会使用到锁的概念,同时只能有一个人可以操作某个行为。这个时候我们就要用到锁。锁的方式有好几种,php不能在内存中用锁,不能使用zookeeper加锁,使用数据库做锁又消耗比较大,这个时候我们一般会选用redis做锁机 阅读全文

说说API的防重放机制

2017-03-20 18:19 by 轩脉刃, 30800 阅读, 13 推荐, 收藏, 编辑
摘要:说说API的防重放机制 我们在设计接口的时候,最怕一个接口被用户截取用于重放攻击。重放攻击是什么呢?就是把你的请求原封不动地再发送一次,两次...n次,一般正常的请求都会通过验证进入到正常逻辑中,如果这个正常逻辑是插入数据库操作,那么一旦插入数据库的语句写的不好,就有可能出现多条重复的数据。一旦是比 阅读全文

laravel的消息队列剖析

2017-03-18 10:33 by 轩脉刃, 8499 阅读, 0 推荐, 收藏, 编辑
摘要:laravel的消息队列剖析 这篇来自于看到朋友转的58沈剑的一篇文章: "1分钟实现“延迟消息”功能" 在实际工作中也不止遇见过一次这个问题,我在想着以前是怎么处理的呢?我记得当初在上家公司的时候直接使用的是laravel的queue来实现的。当然,这里说的laravel的queue实际上也是基于 阅读全文

策略模式

2017-03-14 07:43 by 轩脉刃, 542 阅读, 0 推荐, 收藏, 编辑
摘要:最近工作使用到设计模式,在选用设计模式的时候,发觉设计模式理解不难,难的是在某个场景下选用哪个设计模式。就是设计模式的使用场景。 策略模式 策略模式适用情况是你已经知道了某个算法。第一步做什么,第二步做什么,第三步做什么。但是具体的三步在不同场景怎么做有不同的行为。 代码举例: 策略模式属于行为型模 阅读全文

说说接口封装

2017-03-09 15:36 by 轩脉刃, 11687 阅读, 4 推荐, 收藏, 编辑
摘要:今天给同事封装了一个接口,说起接口封装的事情,其实其实很有的聊。很多时候,说一个服务好,一个服务烂,实际上都是在吐槽服务队外暴露的接口好坏。不管什么语言,封装接口,抽象起来,就是由一个函数名,若干个参数,若干个返回值组成的。封装的好坏,就在这几个上面。 函数名 首先是函数名。函数名的好坏很明显,我的 阅读全文

说说框架的数据库迁移功能

2017-03-07 10:20 by 轩脉刃, 2088 阅读, 1 推荐, 收藏, 编辑
摘要:laravel中有个数据库迁移功能,migration。基本用法就是在database/migrations/的文件夹下面创建迁移数据库的类,在这个类中实现两个方法: up表示运行这个数据库迁移你要做些什么,down表示你回滚这次数据库迁移你要做些什么。 这样你就可以使用 php artisan m 阅读全文

shell的exec命令

2017-03-02 21:38 by 轩脉刃, 13023 阅读, 0 推荐, 收藏, 编辑
摘要:工作中遇到运维人员挂supervisor的时候建议启动使用命令control.sh start, 并且在control.sh 里面启动命令: 使用man看下说明,可以看到exec是一个内部命令, 如这里说的exec是将要exec的命令替换当前的这个命令。所以这个意思是 如果你使用了exec之后,你当 阅读全文
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 49 下一页