Write the Code. Change the World.

3月 01

什么是 RESTful

RESTful 是一种软件设计风格,由 Roy Fielding 在他的 论文 中提出,全称为 Representational State Transfer,直译为表现层状态转移,或许可以解释为用 URL 定位资源,用 HTTP 动词描述操作,不用太纠结于定义,接下来我们会详细讨论。

RESTful 风格的接口,目前来看,实现的最好的就是 Github API,经常被效仿。接下来我们通过分析 Github API 来引出我们的 API 设计原则。
继续阅读

11月 11

场景

数据存储在mysql数据库中。在一个离散的一段时间内(开始时间到结束时间),求出每隔一个小时,用户消费的金币。

这时,就需要将这一段时间以小时来分割了,然后groupby。

该怎么做呢。

实现

时间通常是 datetimetimestamp 。通过 DATE_FORMAT,我们可以对时间进行分段。

比如:

%H 0-23小时
%S 00-59秒

所以可以这样:

select sum(coin), DATE_FORMAT(log_time, "%H") as h from gift_tb where log_time >= '2017-11-10 00:00:01' group by h

看起来是可以了。可是如果时间总长度大于1天呢。或是我需要30分钟来分割,10分钟来分割。这样显然是不行的。

好吧,路总是要人走的。

计算的根本还是时间,那不如将时间稍微处理下。

公式: floor( (记录时间 - 时间段的开始时间)/ (60 * 60) ) as h

于是就有了:

select sum(coin), floor((UNIX_TIMESTAMP(log_time) - 1510243200)/(60 * 60)) as h from gift_tb where log_time >= '2017-11-10 00:00:01' group by h

参考

http://www.w3school.com.cn/sql/func_date_format.asp

http://blog.csdn.net/zhuyu_deng/article/details/43409547

7月 10

回调通知是指客户端在上传时指定服务端在处理完上传请求后,应该通知某个特定服务器,在该服务器确认接收了该回调后才将所有结果返回给客户端。

因为加入了回调请求和响应的过程,相比简单上传,使用回调通知机制一般会导致客户端花费更多的等待时间。

开发者可以要求七牛云存储在某文件上传完成后向特定的 URL 发起一个回调请求。七牛云存储会将该回调的响应内容作为文件上传响应的一部分一并返回给客户端。回调的流程如下:

image

继续阅读

7月 07

前边

业务流程:

客户端在上传资源到七牛云存储之前要先从业务服务器获取一个有效的上传凭证,因此需要先后和两个服务端打交道。


继续阅读

7月 05

前言

只做一件事情,可以做的很精致。验证码,只是一个网站很小很小的一部分,有人有公司却做的体验非常棒。下边是网易易盾和极验两加公司做的验证码产品demo的链接:

网易易盾: http://dun.163.com/trial/jigsaw
极验:http://www.geetest.com/exp.html

极验提供了两种验证方式(拖动和点击),四种展现形式(float、popup、custom、bind),二次验证的服务以及多平台。以保障良好的安全以及体验。不过,按钮不能任意定义高度。免费产品也不能自定义图片。
继续阅读

7月 01

下载安装mariadb

https://downloads.mariadb.org/

找到最新的(或你所需的版本),然后根据自己的系统选择下载。这里下载是最新的稳定版本:mariadb-10.2.6-winx64 。下载链接出来之前,需要填个表单。提交表单后,就开始下载了。

运行下载文件,选择安装目录到 D:/service/wnmp/mariadb 下。下一步,下一步,直到安装完成。中间需要打钩就打钩。
继续阅读

7月 01

下载

目前,php7的稳定的版本是7.1.6。根据系统的不同,所下载的文件有所不同。给php提供了两种版本的:线程安全和非线程安全的。

  • TS :Thread Safe 线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。
  • NTS:Non Thread Safe 非线程安全, 在执行时不进行线程(Thread)安全检查

而选择线程安全还是非线程安全的php,通常由php的执行方式决定的。php有两种执行方式,ISAPIFastCGI
继续阅读