图解script的三种加载方式 异步加载顺序
摘要:摘录如下: 可以很清晰的看出: <script>: 脚本的获取和执行是同步的。此过程中页面被阻塞,停止解析。 <script defer = "defer">:脚本的获取是异步的,执行是同步的。脚本加载不阻塞页面的解析,脚本在获取完后并不立即执行,而是等到DOMready之后才开始执行。 <scri
阅读全文
posted @
2017-04-28 14:27
沐雨橙风丶
阅读(518)
推荐(0)
Nodejs进阶:核心模块https 之 如何优雅的访问12306
摘要:模块概览 这个模块的重要性,基本不用强调了。在网络安全问题日益严峻的今天,网站采用HTTPS是个必然的趋势。 在nodejs中,提供了 https 这个模块来完成 HTTPS 相关功能。从官方文档来看,跟 http 模块用法非常相似。 本文主要包含两部分: 篇幅所限,本文无法对 HTTPS协议 及
阅读全文
posted @
2017-04-27 15:50
沐雨橙风丶
阅读(382)
推荐(0)
Nodejs基础:路径处理模块path总结
摘要:转载自:http://www.cnblogs.com/chyingp/p/node-learning-guide-path.html 模块概览 在nodejs中,path是个使用频率很高,但却让人又爱又恨的模块。部分因为文档说的不够清晰,部分因为接口的平台差异性。 将path的接口按照用途归类,仔细
阅读全文
posted @
2017-04-27 14:04
沐雨橙风丶
阅读(1395)
推荐(0)
Explain
摘要:explain关键字 explain关键字一般放在SELECT查询语句的前面,用于描述MySQL如何执行查询操作、以及MySQL成功返回结果集需要执行的行数。explain 可以帮助我们分析 select 语句,让我们知道查询效率低下的原因,从而改进我们查询,让查询优化器能够更好的工作。 用法: 结
阅读全文
posted @
2017-04-27 10:24
沐雨橙风丶
阅读(155)
推荐(0)
在Node应用中避免“Dot Hell”
摘要:转载自:http://blog.leapoahead.com/2015/09/03/prevent-node-require-dot-hell/ 在Node应用中,我们使用require来加载模块。在目录层次相对复杂的应用中,总是会出现类似require('../../../../../module
阅读全文
posted @
2017-04-26 20:47
沐雨橙风丶
阅读(195)
推荐(1)
Gitlab - Pull Request
摘要:1.概述 今天查看Gmail,有网友私密我Gitlab的Pull Request工作流程,一直以为我写过这片博客,查看《Git和Gitlab协同工作》却发现遗漏了Pull Request这篇博客,今天将这篇文章补上。分享的内容如下所示: 项目构建 开发使用 Pull Request Review代码
阅读全文
posted @
2017-04-26 17:18
沐雨橙风丶
阅读(3185)
推荐(1)
八幅漫画理解使用JSON Web Token设计单点登录系统
摘要:转载自:http://blog.leapoahead.com/2015/09/07/user-authentication-with-jwt/ 上次在《JSON Web Token - 在Web应用间安全地传递信息》中我提到了JSON Web Token可以用来设计单点登录系统。我尝试用八幅漫画先让
阅读全文
posted @
2017-04-26 13:49
沐雨橙风丶
阅读(241)
推荐(0)
JSON Web Token - 在Web应用间安全地传递信息
摘要:转载自:http://blog.leapoahead.com/2015/09/06/understanding-jwt/ JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。 让我们来假想一下一个场景。在A用户关注了B用户的时候
阅读全文
posted @
2017-04-26 13:48
沐雨橙风丶
阅读(217)
推荐(0)
Javascript面向对象编程(三):非构造函数的继承
摘要:转载自:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance_continued.html 一、什么是"非构造函数"的继承? 比如,现在有一个对象,叫做"中国人"。 var Chinese = {
阅读全文
posted @
2017-04-24 23:27
沐雨橙风丶
阅读(138)
推荐(0)
npm scripts 使用指南
摘要:转载自:http://www.ruanyifeng.com/blog/2016/10/npm_scripts.html Node 开发离不开 npm,而脚本功能是 npm 最强大、最常用的功能之一。 本文介绍如何使用 npm 脚本(npm scripts)。 一、什么是 npm 脚本? npm 允许
阅读全文
posted @
2017-04-24 23:11
沐雨橙风丶
阅读(4587)
推荐(0)
npm包使用语义化版本号
摘要:npm 采用语义版本管理软件包。所谓语义版本,就是指版本号为a.b.c的形式,其中a是大版本号,b是小版本号,c是补丁号。 一个软件发布的时候,默认就是1.0.0版。如果以后发布补丁,就增加最后一位数字,比如1.0.1;如果增加新功能,且不影响原有的功能,就增加中间的数字(即小版本号),比如1.1.
阅读全文
posted @
2017-04-24 22:43
沐雨橙风丶
阅读(485)
推荐(0)
测试框架Mocha
摘要:NodeJS里最常用的测试框架估计就是mocha了。它支持多种node的assert libs, 同时支持异步和同步的测试,同时支持多种方式导出结果,也支持直接在browser上跑Javascript代码测试。 本文示例大多源于官网示例,部分示例结合需要或自己的感想有所改动。更多介绍请看 官方网址:
阅读全文
posted @
2017-04-24 15:09
沐雨橙风丶
阅读(472)
推荐(0)
V-bind详细使用
摘要:v-bind 主要用于属性绑定,Vue官方提供了一个简写方式 :bind,例如: 绑定HTML Class 一、对象语法: 我们可以给v-bind:class 一个对象,以动态地切换class。注意:v-bind:class指令可以与普通的class特性共存 HTML代码: CSS代码: JS代码:
阅读全文
posted @
2017-04-21 11:15
沐雨橙风丶
阅读(72937)
推荐(5)
Nginx反向代理以及负载均衡配置
摘要:前提:最近在研究nginx的用法,在windows上小试了一下,由于windows下不支持nginx缓存配置,所以本文主要是讲nginx,以及反向代理与负载均衡。 【一、为什么要使用nginx】 要回答为什么要使用nginx,那就先说说nginx能做些什么。 首先,nginx能做反向代理,那么什么是
阅读全文
posted @
2017-04-20 16:20
沐雨橙风丶
阅读(267)
推荐(0)
nodejs获取客户端IP Address
摘要:function getClientIp(req) { return req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress || req.connection.socket
阅读全文
posted @
2017-04-19 09:54
沐雨橙风丶
阅读(3823)
推荐(0)
Linux chgrp命令
摘要:在lunix系统里,文件或目录的权限的掌控以拥有者及所诉群组来管理。可以使用chgrp指令取变更文件与目录所属群组,这种方式采用群组名称或群组识别码都可以。Chgrp命令就是change group的缩写!要被改变的组名必须要在/etc/group文件内存在才行。 1.命令格式: 2.命令功能: c
阅读全文
posted @
2017-04-14 14:24
沐雨橙风丶
阅读(2085)
推荐(0)
Linux chown命令
摘要:chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。 1.命令格式: chown [选项]...
阅读全文
posted @
2017-04-14 14:14
沐雨橙风丶
阅读(331)
推荐(0)
去除Vue在WebStorm中报命名空间的错误
摘要:Preferences -> Editor -> Inspections找到XML,把 Unbound XML namespace prefix的勾去掉
阅读全文
posted @
2017-04-14 10:23
沐雨橙风丶
阅读(360)
推荐(0)
深入剖析Nodejs的异步IO
摘要:前言:Nodejs最赖以自豪的优势莫过于“单线程实现异步IO”了,也许你仍然丈二和尚摸不着头脑,Nodejs自我标榜是单线程,还能实现异步IO操作,这两者难道不是相互矛盾的么?葫芦里到底藏着什么药? 且听我娓娓道来…… 一、首先,看看Nodejs的架构图 http://nodejs.cn/downl
阅读全文
posted @
2017-04-13 15:04
沐雨橙风丶
阅读(5622)
推荐(0)
使用export/import导出和导入docker容器
摘要:1、导出容器 如果要导出本地某个容器,可以使用 docker export 命令,导出容器快照到本地文件。 $ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7691a814370e ubuntu:14
阅读全文
posted @
2017-04-12 15:21
沐雨橙风丶
阅读(562)
推荐(0)
Docker学习笔记(二)
摘要:镜像: 获取镜像: docker pull NAME[:TAG] 如果不制定TAG 默认拉取最新版。 默认是从DockerHub拉取镜像,如果希望从别的服务器的仓库拉取,命令如下: docker pull dl.dockerpool.com:5000/nginx 下载镜像到本地后,即可使用该镜像。
阅读全文
posted @
2017-04-12 15:07
沐雨橙风丶
阅读(306)
推荐(0)
redis-cli的一些有趣也很有用的功能
摘要:redis-cli我们最常用的两个参数就是-h、-p、-a选项,分配用来指定连接的redis-server的host和port。 通过redis-cli –help发现,redis-cli还提供了其他很多的参数和功能。 redis-cli我们最常用的两个参数就是-h、-p、-a选项,分配用来指定连接
阅读全文
posted @
2017-04-12 10:17
沐雨橙风丶
阅读(2684)
推荐(0)
Redis命令总结
摘要:资料来源: http://redisdoc.com/ http://redis.io/commands 连接操作相关的命令 默认直接连接 远程连接-h 192.168.1.20 -p 6379 ping:测试连接是否存活如果正常会返回pong echo:打印 select:切换到指定的数据库,数据库
阅读全文
posted @
2017-04-12 10:17
沐雨橙风丶
阅读(131)
推荐(0)
使用domain模块捕获异步回调中的异常
摘要:和其他服务器端语言相比,貌似node.js 对于异常捕捉确实非常困难. 首先你会想到try/catch ,但是在使用过程中我们会发现并没有真正将错误控制在try/catch 语句中. 为什么? 答案是这样的: node.js 是异步IO执行,所以我们将try/catch 反正异步回调函数中,当出现一
阅读全文
posted @
2017-04-10 11:41
沐雨橙风丶
阅读(260)
推荐(0)
大话程序猿眼里的高并发
摘要:高并发是指在同一个时间点,有很多用户同时的访问URL地址,比如:淘宝的双11,双12,就会产生高并发,如贴吧的爆吧,就是恶意的高并发请求,也就是DDOS攻击,再屌丝点的说法就像玩撸啊撸被ADC暴击了一样,那伤害你懂得(如果你看懂了,这个说法说明是正在奔向人生巅峰的屌丝。 高并发会来带的后果 服务端:
阅读全文
posted @
2017-04-10 11:18
沐雨橙风丶
阅读(197)
推荐(0)
使用pm2躺着实现负载均衡
摘要:事实上,pm2 是一个带有负载均衡功能的Node应用的进程管理器,Node实现进程管理的库有很多,forever也是其中一个很强大但是也相对较老的进程管理器。 为什么要使用pm2 对于这个问题,先说说我的看法,最基本的原因是因为node本身是一个单线程应用,它的特点就是所有方法都是串行一次执行,并且
阅读全文
posted @
2017-04-10 10:53
沐雨橙风丶
阅读(2251)
推荐(0)
Request —— 让 Node.js http请求变得超简单
摘要:先前一直比较关注前端的东西,对后端了解较少。不过一直对Node.js比较感兴趣,去年12月还去参加了阿里的CNODE交流聚会。 以后希望通过这里的博客分享一些学习Node.js的笔记。一方面总结了自己的学习心得,另一方面也可以和大家一起分享交流。 嗯,大概就是这样子。 这篇就先介绍一个Node.js
阅读全文
posted @
2017-04-09 19:29
沐雨橙风丶
阅读(20059)
推荐(0)
避免uncaughtException错误引起node.js进程崩溃
摘要:uncaughtException 未捕获的异常, 当node.js 遇到这个错误,整个进程直接崩溃. 或许这俩个人上辈子一定是一对冤家. 或许这俩个人经历了前世500次的回眸才换来了今生的相遇,只可惜在错误的时间,错误的地点,做了错误的事! 什么是uncaughtException uncaugh
阅读全文
posted @
2017-04-07 11:16
沐雨橙风丶
阅读(850)
推荐(0)
Nginx+Tomcat 配置负载均衡集群
摘要:一、Hello world 1、前期环境准备 2、配置nginx 进入nginx-1.10.1\conf路径,修改配置文件nginx.conf。 1、配置服务器组,在http{}节点之间添加upstream配置。(注意不要写localhost,不然访问速度会很慢) 2、修改nginx监听的端口号
阅读全文
posted @
2017-04-06 22:35
沐雨橙风丶
阅读(439)
推荐(0)
Nginx实现请求转发
摘要:反向代理适用于很多场合,负载均衡是最普遍的用法。 nginx 作为目前最流行的web服务器之一,可以很方便地实现反向代理。 nginx 反向代理官方文档: NGINX REVERSE PROXY 当在一台主机上部署了多个不同的web服务器,并且需要能在80端口同时访问这些web服务器时,可以使用 n
阅读全文
posted @
2017-04-06 21:48
沐雨橙风丶
阅读(51755)
推荐(2)
nginx静态服务器配置
摘要:1. nginx安装 在 Ubuntu 下,可以舍去编译安装的过程,直接 apt-get 2. nginx初始配置 nginx 的默认配置文件位于 在配置文件中有一行: 这行负责加载外部配置文件,查看sites-enabled目录,该目录下只有一个default文件,这个外部的配置文件就是负责我们
阅读全文
posted @
2017-04-06 16:34
沐雨橙风丶
阅读(982)
推荐(0)
Docker学习笔记(一)
摘要:什么是Docker? 1.基于Go语言开发的云开源项目,Docker的主要目标是通过对应用组件的 封装,分发,部署,运行等生命周期的管理,达到应用组件级别的 一次封装,到处运行。 2.可以将Docker当成一个沙盒,每个容器内运行一个应用,不同的容器相互隔离也可以建立通信,容器的创建和停止都十分快速
阅读全文
posted @
2017-04-05 22:44
沐雨橙风丶
阅读(286)
推荐(0)
PM2实用入门指南
摘要:简介 PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。 下面就对PM2进行入门性的介绍,基本涵盖了PM2的常用的功能和配置。 安装 全局安装,简直不能更简单。 目录介绍 pm2安装好后,会自动创建下面目录。看文件名基本
阅读全文
posted @
2017-04-05 15:51
沐雨橙风丶
阅读(741)
推荐(0)
大型网站架构演化
摘要:作者:李小翀 链接:https://www.zhihu.com/question/22764869/answer/31277656 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 分布式架构的演进 系统架构演化历程-初始阶段架构 初始阶段 的小型系统 应用程序、数据
阅读全文
posted @
2017-04-04 18:09
沐雨橙风丶
阅读(228)
推荐(0)
NodeJS FTP模块使用
摘要:模块说明:https://www.npmjs.com/package/ftp 上传文件 建立连接-> 判断文件夹是否存在->创建文件夹->上传文件->End 核心代码: 连接参数: var targetOptions = { host:config.upload.ftp.host, port:con
阅读全文
posted @
2017-04-04 18:07
沐雨橙风丶
阅读(3638)
推荐(1)
NodeJS定时任务
摘要:在实际开发项目中,会遇到很多定时任务的工作。比如:定时导出某些数据、定时发送消息或邮件给用户、定时备份什么类型的文件等等 一般可以写个定时器,来完成相应的需求,在node.js中自已实现也非常容易,接下来要介绍的是node-schedule来完成定时任务 下面就用示例来说明一下node-schedu
阅读全文
posted @
2017-04-04 18:01
沐雨橙风丶
阅读(10444)
推荐(0)
Bower快速学习
摘要:什么是bower? Bower是一个前端类库管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的类库。 官网:https://bower.io/ 安装bower 使用npm,打开终端,输入: npm install -g bower 开始使用 搜索包 bower searc
阅读全文
posted @
2017-04-04 17:57
沐雨橙风丶
阅读(294)
推荐(0)
Redis的安装和部署
摘要:基本知识 1、Redis的数据类型: 字符串、列表(lists)、集合(sets)、有序集合(sorts sets)、哈希表(hashs) 2、Redis和memcache相比的独特之处: (1)redis可以用来做存储(storge)、而memcache是来做缓存(cache)。这个特点主要是因为
阅读全文
posted @
2017-04-04 17:56
沐雨橙风丶
阅读(234)
推荐(0)
Linux快速搭建FTP服务器
摘要:FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP
阅读全文
posted @
2017-04-04 15:20
沐雨橙风丶
阅读(1383)
推荐(0)
Linux ./configure && make && make install 编译安装和卸载
摘要:正常的编译安装/卸载: 源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。 configure文件是一个可执行的脚本文件,它有很多选项,在待安装的源码目录下使用命令./configure –help可以输出详细的选项列表。 其中--pref
阅读全文
posted @
2017-04-04 15:12
沐雨橙风丶
阅读(1170)
推荐(0)
Redis set集合结构及命令详解
摘要:set 无序集合 集合的性质: 唯一性,无序性,确定性 注: 在string和link的命令中,可以通过range 来访问string中的某几个字符或某几个元素 但,因为集合的无序性,无法通过下标或范围来访问部分元素. 因此想看元素,要么随机先一个,要么全选 Redis 127.0.0.1:6379
阅读全文
posted @
2017-04-01 16:50
沐雨橙风丶
阅读(913)
推荐(0)