自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我叫河蟹

不良制品

  • 博客(124)
  • 资源 (7)
  • 收藏
  • 关注

原创 详解Node.js API系列 Crypto加密模块(2) Hmac

简介随着互联网的发展,MD5已经变得越来越不安全了,黑客可以通过彩虹表,查出MD5值所对应的密码,为了解决这个问题,很多网站都开始采用需要密钥加密的Hmac算法。Hmac算法HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code),HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。

2013-09-26 10:33:20 4401

原创 详解Node.js API系列 Crypto加密模块(1)

MD5加密算法算法简介MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由Mit Laboratory for Computer Science和Rsa data security inc的Ronald l. rivest开发出来,经md2、md3和md4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被“压缩”成一种保

2013-09-26 10:32:45 26467 1

原创 详解Node.js API系列 Http模块(2) CNodejs爬虫实现

博客地址:http://blog.whattoc.com/2013/09/19/nodejs_api_http_2/详解Node.js API系列 Http模块(2) CNodejs爬虫实现简单爬虫设计var http = require('http');http.get("http://cnodejs.org/", function(res) { v

2013-09-22 23:21:19 17216 4

原创 详解Node.js API系列 Http模块(1) 构造一个简单的静态页服务器

HTTPhttp api的文档翻译得太无聊了,很多用不上,例子太少,翻译到一半就觉得受不了,决定放弃,决定,用另外一种方式去介绍这部分的API。http模块,主要的应用是两部分,一部分是http.createServer 担当web服务器,另一部分是http.createClient,担当客户端,实现爬虫之类的工作。从这两方面着手介绍HTTP api。下文将会介绍http.createSe

2013-09-17 09:39:18 16268

原创 详解Node.js API系列 Module模块(2) 案例分析

API文档是枯燥的,下面本人收集了一些论坛经常有人疑问和开源代码中经常遇到的案例供大家研究一下。module.exports与exports的区别每一个node.js执行文件,都自动创建一个module对象,同时,module对象会创建一个叫exports的属性,初始化的值是 {}module.exports = {};Node.js为了方便地导出功能函数,node.j

2013-09-12 17:55:07 4329

原创 详解Node.js API系列C/C++ Addons(3) 程序实例

再续前文,前文介绍了node.js 的addon用法和google v8 引擎,下面,我们进入真正的编码,下面将会通过六个例子,学习node addon 范例,了解addon编程的特性创建一个空项目随机数模块向模块传递参数回调函数处理线程处理对象管理创建一个空项目vi modulename.cpp#include void RegisterModule(v8::H

2013-09-12 17:54:24 10498 1

原创 详解Node.js API系列C/C++ Addons(4) Javascript也能搞嵌入式?

利用Node.js的Addon模块作为调用硬件控制C库的中间件,Node.js异步的特性,非常适合处理各种硬件的IO。本次实践使用的是cubieboard的开发板,Node.js将会控制板子的GPIO的PD0,让它1000ms产生一个高低电平,使LED灯能够一闪一闪的样子。

2013-09-11 15:22:16 5341 1

原创 详解Node.js API系列C/C++ Addons(2) Google V8引擎

回顾,前文由node.js写的基于addon的hello world例子#include #include using namespace v8;HandleValue> Method(const Arguments& args) { HandleScope scope; return scope.Close(String::New("world"));}void init(

2013-09-11 15:21:10 4341

原创 详解Node.js API系列C/C++ Addons(1) API文档

Addons扩展插件(Addons)是动态链接的共享对象,这些对象提供了使用C/C++类库的能力。由于涉及了多个类库导致了这类API目前比较繁杂,主要包括下述几个主要类库:V8 JavaScript,C++类库,作为JavaScript的接口类,主要用于创建对象、调用方法等功能。大部分功能在头文件v8.h (在node文件夹下的路径为deps/v8/include/v8.h

2013-09-11 15:20:05 7659 1

原创 cb 的node.js 静态页面测试

server.jsvar http = require("http");http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.write("Hello World"); response.end();})

2013-08-13 21:18:02 2222

原创 Node.js下自定义错误类型

Node.js下自定义错误类型在JavaScript里面,运行过程中的错误的类型总是被人忽略,这篇教程主要从三个方面来介绍如何在Node.js下自定义错误类型。为什么要使用错误对象。怎么创建自定义错误对象。一些自定义错误对象的例子。为什么要使用错误对象一般来说,很少人会考虑如何处理应用产生的错误的策略,调试的过程中,简单地利用console.log('error')

2013-08-13 00:24:49 2786

原创 入手Cubieboard,初步测试

互联网和嵌入式都相对了解,希望能创造一点很酷的玩意到手前一天,查了一下资料,需要注意的是有分Cubieboard A10 和 A20 A10是基于A8单核,A20是基于A7双核,不要搞乱了,我入手的是A8。因为价钱相对便宜。目前手紧,对预算比较敏感。官方文档稍微介绍了一下入手的方法,在论坛已经有很详细的说明了,我就不多作分享,唯一想吐槽的是原官方,只有SD卡烧写linux,这不得不吐槽

2013-08-11 12:23:48 2843

原创 Lordofpomelo游戏分析

游戏体验在线地址部署游戏lord of pomelo安装指南分析思路游戏服务器的流程除了启动部分外,大部分事件和流程都是并发的,如果按照一个流程去描述这样一件事情,会很混乱,所以我会根据自己对代码的理解,分开不同用户模块,不同业务去分析Lordofpomelo的代码。Lordofpomelo 服务器介绍各类服务器介绍Lor

2013-07-23 12:04:47 14133 5

原创 ubuntu12.04 安装R语言环境3.01

#vi /etc/apt/sources.list添加#deb http://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu/ precise/#apt-get update#apt-get install r-base#apt-get install r-base-dev

2013-07-11 15:31:32 6780 1

原创 node.js 模拟登录新浪微博

gitpage:https://github.com/youyudehexie/sinaloginSinaloginNode.js微博模拟登录UsageNode.js编写的模拟方式登录新浪微博Quick Startnpm install sinaloginorgit clone https://github.com/youyudehex

2013-07-04 19:32:20 6785 2

原创 node.js的myql模块封装

一切都是为了方便地使用node.js操作mysql,根据日常经常使用的操作和各种坑,针对node.js的mysql模块进行二次封装,分享出来,希望你们喜欢。安装git clone https://github.com/youyudehexie/mysqlmid.gitnpm install例子 require('coffee-script'); var

2013-06-22 12:48:27 2114 1

原创 node.js redis缓存中间件

var redis = require('redis');var client = redis.createClient();var cache = {}cache.getKey = function(key, callback){ client.get(key, callback);};cache.setKey = function(key, val, callback){

2013-06-18 23:49:47 3989

原创 解决win7的64位 mongoose 安装问题,bson

错误日志安装bson的时候出现错误。添加环境变量pathc:\windows\system32 to my PATH.http://stackoverflow.com/questions/14100027/cant-install-js-bson/14130182#14130182

2013-06-01 21:14:02 3030

原创 python百度贴吧爬虫

推荐,我的项目地址:https://github.com/youyudehexie/BaiduTiebaSpider__init__.py#encoding=utf-8import sysreload(sys)sys.setdefaultencoding( "utf-8" )import urllib2import urllibimport refrom Beautif

2013-05-27 01:47:00 3261 1

原创 node.js 计划任务模块

npm install cronvar cronJob = require('cron').CronJob;new cronJob('* * * * * *', function(){ console.log('You will see this message every second');}, null, true, "America/Los_Angeles");

2013-05-25 23:20:23 4593

原创 node.js导航网站

本人的新站,希望多支持http://nodejs.whattoc.com/

2013-04-23 14:47:49 1314

原创 Pomelo聊天室源码分析(一)

Pomelo 0.2node.js 0.8由于0.3版本的不稳定,不想花时间到兼容性升级上,等等稍微稳定一下再升级,接下来的分析都是基于这个版本源码进行分析开篇前,先引用pomelo的wiki:https://github.com/NetEase/pomelo/wiki/tutorial1--%E5%88%86%E5%B8%83%E5%BC%8F%E8%81%8A%E5%A4%A9

2013-04-10 12:00:13 4746 1

原创 python的redis,实用订阅发布简单实用代码

服务端:import redisrc = redis.Redis(host='127.0.0.1')ps = rc.pubsub()ps.subscribe(['foo', 'bar']) //订阅两个频道,分别是foo,或barfor item in ps.listen(): if item['type'] == 'message': pri

2013-04-10 00:01:05 15767

原创 安装python-pip

yum install python-setuptoolswget http://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gztar zxf pip-1.0.2.tar.gzcd pip-1.0.2python setup.py install

2013-04-06 15:40:40 9620

原创 node.js的generic-pool与mysql结合,mysql连接池

var generic_pool = require('generic-pool');var pool = generic_pool.Pool({ name: 'mysql', max: 10, create: function(callback) { var Client = require('mysql').createConnectio

2013-04-05 12:14:54 4182

原创 ubuntu12.04 安装 rabbitmq与测试

#sudo vi /etc/apt/sources.list添加deb http://www.rabbitmq.com/debian/ testing main#wget http://www.rabbitmq.com/rabbitmq-signing-key-public.asc#sudo apt-key add rabbitmq-signing-key-public.asc

2013-03-26 15:26:32 1041

原创 pomelo启动流程图

Pomelo组件职责简介master: master组件主要负责启动master服务器。monitor: monitor组件主要负责启动各个服务器的monitor服务,该服务负责收集服务器的信息并定期向master进行消息推送,保持master与各个服务器的心跳连接。proxy: proxy组件主要负责生成服务器rpc客户端,由于系统中存在多个服务器进程,不同服务器进程之间相互通信需要通过

2013-03-25 22:38:04 2929

转载 urllib2 的一点知识

刚好用到,这篇文章写得不错,转过来收藏。    转载自 道可道 | Python 标准库 urllib2 的使用细节Python 标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib2 这个 HTTP 客户端库。这里总结了一些 urllib2 库的使用细节。1 Proxy 的设置2 Timeout 设置3 在 HTTP Re

2013-03-24 21:18:23 916

原创 node.js下express的AJAX通讯:jsonp,json

1.创建环境#cmd express2.修改代码app.js/** * Module dependencies. */var express = require('express') , routes = require('./routes') , user = require('./routes/user') , http = require('h

2013-03-24 12:36:45 13071 2

原创 pomelo源码分析(六)

Server.prototype.start = function(cb) { registerDefaultModules(this.app); //注册默认模块 loadModules(this.app, this.masterConsole); //执行模块 var self = this; this.masterConsole.st

2013-03-23 13:05:39 3152

原创 pomelo源码分析(五)

接着上一章节,上一章节主要是介绍Master Server的初始化,接下来就是初始化后的启动lib/master/master.jsvar Server = function(app) { this.app = app; this.masterInfo = app.get('master'); this.registered = {}; this.masterConsole

2013-03-20 14:41:56 1683

原创 node.js的一点小花边

每次群上有人讨论node.js,都会显得特别热闹,针对大家讨论的热点问题,百度谷歌了一些资料作为参考。一、为什么叫Node.js,跟javascripts有什么关系?http://developer.51cto.com/art/201109/288849_1.htm事实上,Node.js采用C++语言编写而成,是一个Javascript的运行环境。为什么采用C++语言呢?据No

2013-03-19 12:54:52 1334

原创 pomelo源码分析(四)

接着上文,上文利用提到程序利用this._optComponents('start', function(err) { self.state = STATE_START; utils.invokeCallback(cb, err); }); 发送命令让刚配置好的服务器模块,执行start命令,现在我们开始分析master.start();lib

2013-03-02 13:39:25 3029

转载 python遍历文件夹和文件

import osimport os.pathrootdir = './'for parent,dirnames,filenames in os.walk(rootdir): for dirname in dirnames: print "parent is:" + parent print "dirname is" + dirname

2013-03-01 17:24:00 1137

转载 Python中时间戳与时间字符串互相转化

#设a为字符串import timea = "2011-09-28 10:00:00"#中间过程,一般都需要将字符串转化为时间数组time.strptime(a,'%Y-%m-%d %H:%M:%S')>>time.struct_time(tm_year=2011, tm_mon=9, tm_mday=27, tm_hour=10, tm_min=50, tm_sec=0, tm_wd

2013-03-01 14:40:36 13606 1

原创 pomelo源码分析(三)

app.js// start appapp.start();lib/application.js/** * Start application. It would load the default components and start all the loaded components. * * @param {Function} cb callback function

2013-02-27 20:17:24 5140 1

原创 pomelo源码分析(二)

接着(一)所分析的代码// app configureapp.configure('production|development', function() { // route configures app.route('chat', routeUtil.chat); // filter configures app.filter(pomelo.timeout());});根

2013-02-27 18:24:34 9613

原创 pomelo源码分析(一)

千里之行始于足下,一直说想了解pomelo,对pomelo有兴趣,但一直迟迟没有去碰,虽然对pomelo进行源码分析,在网络上肯定不止我一个,已经有很优秀的前辈走在前面,如http://golanger.cn/,在阅读Pomelo代码的时候,已经连载到了11篇了,在我的源码分析参考了该博客,当然,也会加入我对pomelo的理解,借此希望能提高一下自己对node.js的了解和学习一些优秀的设计。

2013-02-26 21:10:13 22589

原创 Node.js的Express模板语言简单比较

Jadehttps://github.com/visionmedia/jadeEjshttps://github.com/visionmedia/ejsCoffeekup 改coffeecuphttps://github.com/mauricemach/coffeekupfork数量 jade > ejs > coffeekup关于模板语言的效率

2013-02-19 10:23:22 7890 2

原创 express 调用coffeescripts 模板

坑,看到网上都说,coffeescripts 网页模板叫coffeekup亲们,在express3.0里面app.register()已经取消了,如果要调用这个模块,请按照我下面所做的  app.set('views', __dirname + '/views');  app.set('view engine','coffee');  app.engine('coffee',req

2013-02-03 10:24:00 1210 1

mod-cband模块

mod-cband-0.9.7.5.gz ,mod-cband apache流量统计模块

2012-11-12

sysstat,dstat,isotat源码

dstat,iostat,vmstat,源码

2012-08-23

gen_test_char X86

apache编译出错,它会提示./dftables: ./dftables: cannot execute binary file,这个时候我们需要编一个X86版本的dftables来取代他,这里我已经上传了一个,可以直接使用,将他拷贝到httpd-2.2.22/srclib/pcrexia下,然后继续make,然后会继续报错 bin/sh: ./gen_test_char: cannot execute binary file ,这个时候我们需要编一个X86版本的gen_test_char来取代他,如果不想编译,可以直接下载,放到httpd-2.2.22/server目录下,继续make,编译成功 最终安装的东西,都在output/target/usr 目录下,配置文件在output/target/etc 下,修改http.conf后,便能够成功运行。

2012-05-29

dftables X86

apache编译出错,它会提示./dftables: ./dftables: cannot execute binary file,这个时候我们需要编一个X86版本的dftables来取代他,这里我已经上传了一个,可以直接使用,将他拷贝到httpd-2.2.22/srclib/pcrexia下,然后继续make,然后会继续报错 bin/sh: ./gen_test_char: cannot execute binary file ,这个时候我们需要编一个X86版本的gen_test_char来取代他,如果不想编译,可以直接下载,放到httpd-2.2.22/server目录下,继续make,编译成功 最终安装的东西,都在output/target/usr 目录下,配置文件在output/target/etc 下,修改http.conf后,便能够成功运行。

2012-05-29

epel-release-5-4.noarch.rpm

epel-release-5-4.noarch.rpm

2012-05-22

deletelicense

清理LoadRunner卸载后的注册表残留信息

2012-03-10

LoadRunner破解文件

LoadRunner破解文件 于是用方法

2012-03-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除