Month: June 2016

Node.js: 认识流stream

流是Node.js中一个非常重要的概念, 也是Node.js之所以适用于I/O密集型场景的重要原因之一。 流是Node.js移动数据的方式,流可以是可读的和/或可写的。在Node.js中很多模块都使用到了流, 包括HTTP和fs模块,本文将用尽可能简单的方式为你介绍Node中流的概念。 流 Stream 事实上,流通常用于将程序连接在一起。流可以被读和写。被流连接在一起的程序通常很小,并且只专注于做一件事。 你可能经常在项目中使用Gulp来做项目的代码构建,那么在使用过程中,你很可能碰到过类似下面的错误。 错误大概是这样个的: stream.js:94 throw er; // Unhandled stream error… Read More

Node.js: fs.readFile/writeFile 和 fs.createReadStream/writeStream 区别

1. 先说说各自的用法: How do I read files in node.js? fs = require('fs'); fs.readFile(file, [encoding], [callback]); // file = (string) filepath of the file to read encoding is an optional parameter that specifies the type of encoding to read the file. Possible encodings are ‘ascii’, ‘utf8’, and ‘base64’. If no encoding i… Read More

Linux Shell脚本入门教程系列之(十七) Shell文件包含

本文是Linux Shell系列教程的第(十七)篇,更多Linux Shell教程请看:Linux Shell系列教程 通过文件包含,可以引用其他文件的内容,也可以将复杂内容分开,使程序结构更加清晰。 所以高级语言都支持文件包含或者包的引用,Shell当然也支持,接下来就为大家介绍下Shell文件包含的相关知识。 一、Shell文件包含格式 Shell文件包含的格式如下,使用点号“.”+文件名包含: . filename 或者source+文件名: source filename 二、Shell文件包含示例 Shell文件包含的例子如下: num1.sh文件如下: num1=1 num2=2 num2.sh文件如下: #!/bin… Read More

Linux Shell脚本入门教程系列之(十六) Shell输入输出重定向

本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为大家介绍下Shell输入输出重定向的相关知识。 一、Shell输入输出重定向概述 在了解重定向相关知识之前,我们先来看看Linux的文件描述符。 Linux的文件描述符可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作。 用户可以自定义文件描述符范围是:3-max,max跟用户的ulimit –n 定义数字有关系,不能超过最大值。 linux启… Read More

Node.js: 如何退出node命令或者node server

如果是要退出node命令的话,可以使用: $ node > 9+23 32 > process.exit() $ 或者 $ node > 9+23 32 > .exit $ 如果是要退出node server的话,可以使用:   别人是推荐点击两下 Ctrl-C, 但是我使用的时候不好使,不知道是不是因为需要大写的C才行,所以我使用 Ctrl-Shift-C 的时候就可以了,不过这个快捷键需要结合下面的代码使用: // this function is called when you want the server to die gracefully // i.e. wait for existing connections var graceful… Read More

用Vim编程——配置与技巧

本文介绍如何用强大的文本编辑器 Vim编程。只要配置得当,效果堪比一个IDE。 配置 基本配置: "开启语法高亮 syntax on "依文件类型设置自动缩进 filetype indent plugin on "显示当前的行号列号: set ruler "在状态栏显示正在输入的命令 set showcmd "关闭/打开配对括号高亮 "NoMatchParen DoMatchParen 行号的显示与隐藏: "显示行号: set number "为方便复制,用<F2>开启/关闭行号显示: nnoremap <F2> :set nonumber!<CR>:set foldcolumn=0<CR> 启用Model… Read More

无插件Vim编程技巧

相信大家看过《简明Vim教程》也玩了《Vim大冒险》 的游戏了,相信大家对Vim都有一个好的入门了。我在这里把我日常用Vim编程的一些技巧列出来给大家看看,希望对大家有用,另外,也是一个抛砖引玉的过 程,也希望大家把你们的技巧跟贴一下,我会更新到这篇文章中。另外,这篇文章里的这些技巧全都是vim原生态的,不需要你安装什么插件。我的Vim的版本是7.2。 浏览代码 首先,我们先从浏览代码开始。有时候,我们需要看多个文件,所以,传统的做法是,我们开多个tty终端,每个tty里用Vim打开一个文件,然后来回切换。这很没有什么效率。我们希望在一个Vim里打开多个文件,甚至浏览程序目录。 浏览目录的命令很简单:(… Read More

AngularJS jQuery 共存法则

寻找正确的方法,如何在AngularJS里使用jQuery 一、为什么还是要使用jquery 在使用Angular一段时间后,发现还是很难逃脱jquery 插件的魔掌。尽管对于angular,内置了jQLite. 但是为了更好的实现功能,不可避免的要使用一些jquery的插件。 二、如何在Angular里使用jquery 1. 如果使用jquery的插件,我们不应该把对应的code放到controller里面。我们应该创建directive,然后通常把jquery的code放在 link里面 2. 当我们引入jquery 插件库的时候,我们要保证是在最后倒入的,在angularjs,controllers,serv… Read More

零基础 Amazon Web Services (AWS) 入门教程 (列表)

在 Amazon Web Services 上托管 Web 应用程序 Web 应用程序 是指用户通过 Web 浏览器或专门的 Web 客户端访问的任何软件。Web 应用程序通常具有逻辑层级结构。例如,常用结构使用三个层级。第一层是 Web 浏览器,它负责显示用户界面。中间层是应用程序服务器,它负责提供应用程序功能。第三层是数据库服务器或文件系统,它负责存储数据。 此教程指导您逐步完成在 AWS 基础设施上托管可扩展且可靠的 Web 应用程序的过程。我们将通过部署一个 .NET 示例应用程序演示最佳实践。完成此教程后,您应该能够执行以下操作: 创建称为 EC2 实例 的虚拟服务器,并使用它作为云中的应用程序服务器。 创建称为数据库实例 的数据库服务器。… Read More

零基础 Amazon Web Services (AWS) 入门教程图文版(四)

自上一篇之后,5天过去了,这篇文章总算是挤出来了… 其实看不看无所谓啦,都说了WDCP非常适合小白,随便折腾。要是折腾的时候遇到什么问题,欢迎留言探讨~ 五、新建站点 登录WDCP后台,首次登录会提示修改管理员密码,一定不要偷懒,然后在左侧网站管理——新建整站里新建站点: 接下来要填的只有几个地方,如下图,其他保持默认即可。 中间的保持默认… “保存”后,到域名管理处(以DNSPod为例)为绑定域名添加A记录,指向EC2的公网IP或者添加CNAME记录,指向EC2的公网DNS(Public DNS)即可。注意,A记录或者CNAME只能任选其一,不然DNSPod会提示冲突。 等域名解析成… Read More

零基础 Amazon Web Services (AWS) 入门教程图文版(三)

原则上WDCP安装好了,就可以直接使用了,FTP、MySQL什么的应有尽有。但是本站Amazon AWS —— 免费的午餐不好吃一文中说到过这个问题,直接用WDCP的MySQL会导致EBS的I/O急剧增加,最终导致被扣费,所以这篇文章介绍AWS提供的云端数据库:RDS 四、启用RDS 所谓RDS,其实也相当于一台云端的主机,所以启用过程和EC2大同小异。这次博主还发现,RDS的新建向导优化了很多,所以默认选中的东西是不会让免费用户掏钱的。但为了从一而终,这一篇也详细一点吧… 创建RDS实例 从AWS控制台进入RDS(蓝色图标里面找)的控制台,还没有RDS实例的用户会看到下图所示的新建向导: 老规矩… Read More

零基础 Amazon Web Services (AWS) 入门教程图文版(二)

上一篇讲到,主机正常运转了。但是此时如果直接访问公网IP是打不开网页的,因为主机上没有搭建Web服务器环境,防火墙也没有开放80端口,并且我们没有上传任何网页文件。所以这一篇主要介绍服务器环境的搭建。 三、安装WDCP 常见的服务器环境有LAMP(Linux+Apache+Mysql+PHP)、LNMP(Linux+Nginx+MySQL+PHP)、 WAMP(Windows+Apache+Mysql+PHP)等,高手可以自己一个一个安装服务器软件,或者使用一键安装包。博主这个等级的建议使用更 方便快捷的WDCP,加上主机网速比较快,使用RPM包安装就非常快了 在这之前,由于WDCP的登录端口是8080… Read More

零基础 Amazon Web Services (AWS) 入门教程图文版(一)

现在小站唯一的流量都靠AWS这个关键词了,刚好要用AWS重新建站,所以从头开始记录一遍吧。 所谓零基础,就是你可以没有任何AWS使用经历,仍然能够按照教程操作下去。所谓图文版,就是建议手机用户在没有连Wifi的情况下尽量不要查看全文。图片一般都有大图,看不清的可以点击查看大图。 准备好了吗?Let’s go. 一、申请AWS一年免费试用 今天看了一下,AWS中文官网又改版了,不过免费的东西似乎有增无减。不管怎么样,请先看清楚有哪些免费内容,以免后续被扣费。 首先你需要一张信用卡,这是硬性条件。实在没有的财付通运通卡也是可以的,不过现在暂不接受新用户申请。没达到这一要求的用户就没必要看下去了&#… Read More