支持Socks5协议的高速加密通信的代理服务器脚本

支持SOCKS 5协议的高速加密通信的代理服务器脚本
代码地址:
https://github.com/jiangmiao/proxy
解决现有代理的问题:
1、vpn – vpn接管所有的数据,而在很多时更希望只通过代理访问部份网站。
2、http/socks – 仅使用http或socks代理,没有经过加密的关键词还是有被拦截的可能。
3、ssh+socks – ssh tunnel的socks性能与稳定性不佳。...

计算机与语言随想

现在编程语言大多是英语,而变量命名中有一重要建议是单词不用缩写除非约定成俗,否则会对他人阅读造成不便。
为此我一直想,同样都是单词,对于不认识的人是没有区别,控制器不管是叫Controller还是叫Cono。所以最好能有语言学家兼计算机学家能创立一套新的语言或标准,或许只有数百字根就可以描述90%的计算机所常用的单词。
微软过去流行过匈牙利命名,比如szName,iAge,这种命名法除了过于冗长,且无法发音。现在匈牙利虽然遗弃了,保持可读性下,著如NetworkException,FooController...

Cacti的使用

Cacti的使用
Cacti是一款可在线浏览的系统状态监测工具。
一、下载Cacti
Cacti官方下载地址
写这篇文章时的版本为 0.8.8a
解压cacti到可以通过HTTP访问的目录
$ tar xf cacti-0.8.8a.tar.gz
$ ln cacti-0.8.8a cacti -s
本文为 http://127.0.0.1/cacti
二、配置Cacti
includes/config.php
$database_type = "mysql";
$database_def...

Linux下的数据统计

最近2天CSDN的密码泄漏,部份人可能会像我一样去作一些统计,比如邮箱占有率等一些数据。统计方式五花八门,但我觉得在Linux下用命令组合统计最为方便。
一、基本统计
先看密码文档 www.csdn.net.sql 格式
用户名 # 密码 # 邮箱
以’ # ‘分列
3个字符可以用awk等进行切割
使用到的相关统计命令与参数为
sort
-g 按照 常规数值排序
-r 逆序输出排序结果
-k 排序的列
uniq
-c 统计数量
-d 只输出重复的行...

node.js成也异步,败也异步,评node.js的异步特性

node.js最大的卖点就是异步,声称以此获得更高的性能,而我认为,node之所以快并不是因为异步而快,而是因为V8而快。异步仅在资源占有明显优势,而引入异步却大大增加了编程的复杂度,且异步在http服务上并没有或者无法用在刀刃上。
以目前node来看,其作为单独http服务器的实现远远不如nginx,若以node建站,更普遍的选择是nginx 反向代理 node,一则由于node作为http服务器功能简单,实现更是差nginx几个台阶,其次因node单线程特性,若要发挥多核的优势,也必然会开2个以上的no...

node.js异步数据库连接,事务查询思考

首先思考一下场景
1、同时有50个并发请求,
2、每个请求将连接PgSQL并执行一个事务: 调用2个不同的Model Bill与Profile,执行 Bill.insert 与 Profile.update
3、PgSQL最大连接数为20
因为使用到事务,所以同一个数据库连接不可能同用于两个不同的http请求
如果在PHP中,那么开20个不同的php-cgi,并对每个php-cgi进行操作,其余30个在请求nginx队列
1、nginx接受50个http请求
2、php-cgi接受20个请求,并建立20个全...

ToffeeScript – 支持异步语法的CoffeeScript

ToffeeScript是CoffeeScript衍生,在完全兼容CoffeeScript的语法下提供了一些新的特性。
一、 特性一览
异步语法支持
Ruby Symbol语法的字串
正则运算符 =~
正则Magic标识符 \& \~ \1..9
1. 异步语法支持
语法: 在调用的函数尾加上!(感叹号)
输入:
do ->
# ! always is a function
foo_0_0!
@va = obj.foo_2_1!...

Dart试用手记 – 2、语法与评论

Dart的语法比较传统,可以看到Java,C++的影子
1. 注释
// 单行注释
/* … */ 注释块
2. 变量
Dart有2种变量var与final
final必需要初使化且只能赋值一次
3. 函数
Dart的函数格式:[返回类型] [函数名] 参数列表 函数体
参数列表与函数体是必需的其余可省略
而 Dart的函数体有2种形式
=> 单一表达式
{ 各种表达式 }
由此以函数都是合法的
(a, b) => a + b;
() => 'yes&#...

Dart试用手记 – 1、编译与安装

今天Google发布了Dart,定位用以替代JavaScript,从架势来看未来应该也会有所投入,加之Google在V8的丰富经验,Dart定能有出色的发挥,所以打算第一时间了解下。但Dart究竟如何,是否有足够的竞争力,还要待使用后才能有定论。
一、安装
1. 准备
Linux系统,chromium提供了一个安装依赖的脚本
$ wget http://src.chromium.org/svn/trunk/src/build/install-build-deps.sh
$ source inst...

CoffeeScript 功能加强

CoffeScript makes javascript fun, and the CoffeeScript’s source code write clearly and easy to extend, I add 2 string related features: Ruby symbol like string and long string.
CoffeeScript让javascript变得有趣,而且代码清晰,易用扩展,我在CoffeeScript的原基础上加入2个新字符串相关的语法。...