JWT在web用户身份验证中的应用与实现

如果你喜欢计算机安全的话题,你就会知道最具有讨论和争议的话题之一是用户身份验证。在这里,您将从新的机制到可用性,找到一个广泛的研究领域。它虽然具有如此大的魅力,但是,令我惊奇的是,JSON Web Token不是一个常谈到的主题,我想它今天该展露光芒了。我们将看到它是多么容易的被集成在一个API认证机制中。
 费德  2017/03/05 02:09  2,538 次

实现类似ArrayList的功能

1.NewArrayList.javapackage com.tiaozaoj; import java.util.Arrays; public class NewArrayList { private int size = 0; private Object[] elementData = new Object[100]; //直接在后面添加 public void add(Object o){ //先判断该数组是否已...
 费德  2017/02/26 00:53  187 次

PHP的轻量消息队列php-resque

消息队列处理后台任务带来的问题项目中经常会有后台运行任务的需求,比如发送邮件时,因为要连接邮件服务器,往往需要5-10秒甚至更长时间,如果能先给用户一个成功的提示信息,然后在后台慢慢处理发送邮件的操作,显然会有更好的用户体验。为了实现类似的需求,Web项目中一般的实现方法是使用消息队列(Message Queue),比如MemcacheQ,RabbitMQ等等,都是很著名的产品。
 费德  2016/11/09 15:08  312 次

约瑟夫环C实现

#include<stdio.h> #include <stdlib.h> #define M_INIT 20 #define N 7 typedef struct node//节点存放一个数据和指向下一个节点的指针 { int data;//编号 int password;//密码值 struct node* pnext; } Node; Node *link_create()//创建n个节点的循环链表 { //先创建第1个节点...
 费德  2016/10/13 22:03  212 次

使用node.js通过github的webhooks,自动更新远程服务器代码

本文目录 [隐藏] 题外话 一、自动化部署脚本 二、监听 Web Hooks 三、后台不间断执行 四、测试 题外话在写这篇文章前,和同学解释可以通过github的webhooks,自动更新远程服务器代码。他直接就问我,为什么不直接在服务器上搭一个git服务器?其实,这个并不是没有尝试过。具体原因大致如下:配置多人协同合作的账号较为麻烦,而且管理起来容易出问题。对于push等日志,缺乏可视化的界面。服务器不够稳定,可能会影响协同合作。鉴于,上述原因,我们团队采用了如题的方式开发。...
 费德  2016/09/23 19:25  412 次

Sql语句书写的十大原则

原则1:尽量避免在列上进行运算,这样会导致原语句失效,例如原语句为:select * from table where YEAR(d) >= 2011; 优化为:select * from table where d >= 2011-01-01; 原则2:尽量避免使用join连接查询多个表的数据,如果你一定要使用,也应该用小结果集驱动大结果集,同时把复杂的join查询拆分成多个query语句原则3:注意like的使用,避免% % ,例如原句为:select * from tab...
 费德  2016/09/05 11:00  195 次

socket的使用

一、开启socketphpinfo();查看是否开启了socket扩展,否则在php.ini中开启。二、服务器端代码的写法<?php error_reporting(E_ALL); set_time_limit(0); //ob_implicit_flush(); $address = '127.0.0.1'; $port = 10005; //创建端口 if( ($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === f...
 费德  2016/09/03 16:13  141 次

生成uuid

UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台 会提供生成UUID的API。UUID按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。由以 下几部分的组合:当前日期和时间(UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相 同),时钟序列,全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获得),UUID的唯一缺陷...
 费德  2016/08/28 22:46  180 次

自己写的一个驼峰和下划线命名规范互相转换的demo

下划线法主要应用于数据表及字段的命名,而驼峰法则主要在面向对象中广泛使用。有时候,我们从数据表中取出数据,它的字段是为下划线格式的,但是我们输出的json数据,字段约定规范为驼峰法如果,采用下面这个方式,特别麻烦,而且如果字段值不确定,这个方式也行不通。 $i = 0; foreach ($res as $key => $val){ $data[$i]['id'] = $val['id']; $data[$i]['name'] = $val['name']; ...
 费德  2016/08/27 10:36  203 次

多版本并发控制MVCC

在数据库中分为四种隔离:未提交读:脏读提交读:不可重复读可重复读:幻读串行化:性能差大多数数据库系统默认采用的是第二个隔离级别,而mysql使用的是第三级隔离,但是它会造成幻读的问题。第四个隔离级别虽然可以解决这个问题,但是会造成性能的急剧下降。因而,我们采用另外一种方法来解决这个问题:多版本并发控制(MVCC).我们先看下MVCC的简单解释:MVCC的原理与copyonwrite类似,全称是Multi-Version ConcurrentControl,即多版本并发控制。在MVCC协议下...
 费德  2016/08/18 15:21  258 次