Node.js的事件驱动模型

Node利用Javascript的特性,比如Continuation Passing Style(CPS)以及Event Loop,使得程序运行时表现优秀,CPS和Event Loop一套机制是用libuv库(libuv又根据OS的不同抽象了Unix下libev和Windos下ICOP)提供的。 »

tty.js:实现Web Terminal

上次使用Socket.io进行前后端的实时连接,这次介绍一个Node.JS编写的工具来实现浏览器来远程连接Linux。通过这个软件我们就可以抛弃putty这样的客户端来进行Linux开发。当然,事先需要在服务器端安装配置这套工具才能使用。 当然这个工具最后提交代码实在一年前,版本号是0.2.13。它向上支持更独立的web终端工具term. »

Socket.io:有点意思

下面页面就是使用Socket.io制作的口袋妖怪游戏(默认小屏下已隐藏,请切换到大分辨率查看)。左边是游戏画面,右边是按键表和聊天室。画面达到红蓝版本的水平了。 @media (max-width: 992px) { .iframe { display: »

MEAN Stack:创建RESTful web service

前段时间做了DTREE项目中的前后端数据存储功能,在原有的ngController上进行HTTP请求,后端接受到请求后再存储到mongoDB上。现将学习所得记录成这篇文章。大致内容为REST的相关概念的介绍,以及结合项目实践的一些实战经验,最后一个RESTful的Web Service就成功开发出来了(大雾)。 REST REST(Representational »

在EC2上安装MEAN环境

搭建决策树项目外网DEMO尝试几个地方后,最后选择了EC2(Amazon Elastic Compute Cloud)。选择的是最经济便宜的Amazon Linux AMI系统t2.micro型(前期免费)。因为是基于Red »

CentOS 6.3安装NodeJS环境

最近开始学习在linux下配置NodeJS环境 安装工具 在安装前,可以先用检查是否已安装下列软件 # yum list installed | grep "软件名或者包名" gcc与gcc-c++、opoenssl-devel是Nodejs的依赖软件,wget用来下载官网上nodejs压缩包的工具, »

NodeJS:树的序列化

接着上周的工作,我们把上周反序列得到的dtree对象输出到JSON,再将其序列化后存入MongoDB。 存入文档 先将上次得到的决策树对象整个保存到JSON文件中,这个需要使用Node内建模块fs的.writeFile()方法,需要记得的一点是,JSON对象需要先使用stringify将其转换为字符串再存入到文件,不然存在文件中的数据就是[object »

NodeJS:树的反序列化

树的反序列化就是将序列数组安装线索组成树结构,今次项目数据库存储决策节点的方式是通过数组进行,每个节点有一个parentid键直指双亲节点的nodeid键,而在前端展示是决策树的结构。这是在比较在MongoDB存储数组的性能和前后台实现难度下决定的(在此呜谢师哥)。 数据库中的文档 先来看看存储在数据库中的数据,后台通过ObjectId找到样例文档。注意这里,如果直接使用.findById( »

NodeJS学习:爬虫小探补完计划

书接上回,我们需要修改程序以达到连续抓取40个页面的内容。也就是说我们需要输出每篇文章的标题、链接、第一条评论、评论用户和论坛积分。 如图所示,$('.reply_author').eq(0) »

NodeJS学习:爬虫小探

今天来学习alsotang的爬虫教程,跟着把CNode简单地爬一遍。 建立项目craelr-demo 我们首先建立一个Express项目,然后将app.js的文件内容全部删除,因为我们暂时不需要在Web端展示内容。当然我们也可以在空文件夹下直接 npm install express来使用我们需要的Express功能。 目标网站分析 »

依赖包bcrypt安装Issues

在决策树项目中,使用到了bcrypt依赖包来加密文件。在wini8(win7)部署安装这个依赖的时候容易出现出现了问题。 解决方法:安装Visual Studio 2012 Express或以上版本 这个一般是当报错出现了c++、.cc、 »

Mongoose:Schema之路

连续放了6天假,磕磕碰碰地进行着决策树的数据库设计和读写,其中遇到了不少问题。本文分为两部分,第一部分是介绍Mongoose的使用,第二部分是项目中遇到的问题,主要问题就是Schema的声明顺序。我们一步步细说。 Mongoose学习 这里的Mongoose当然不是图片上的萌物,它是一个MongoDB对象建模工具(object »

在Heroku上部署MEAN

Heroku是国外普遍使用大受好评的PaaS,支持Nodejs,基础服务(Nodejs+MongoDB)基本都是免费的。搭建MEAN框架也不怎么费劲。名字是'Hero'和'taiku(俳句)'的合体。我们先一起来读一读发音(her-OH-koo) »