资 源 简 介
从2010-8-29开始项目移动到:http://code.google.com/p/mooon
项目开发论坛:http://bbs.hadoopor.com
本项将包括以下几个子项目:
1.util - 工具类库,如字符串处理等
2.sys - 系统调用相关类库
3.net - 网络操作相关类库
4.server - TCP服务器框架,提供使用门槛低、大并发和高性能特性,以追求性能为第一目标,以追求简单易用为第二目标,在此基础上才考虑增加多一点功能
5.httpd - 基于jserver的高性能web server
5.1.第一个版本只支持静态页面、
5.2.第二个版本加入代理功能
5.3.第三个版本加入CGI功能(普通CGI和FASTCGI,包括任何可执行程序)
5.4.提供对PHP的支持
6.sender - TCP客户端框架,支持同时连接到多个不同SERVER
8.dfs - 分布式文件系统,面向大文件存储
9.mbr - 分布式编程框架,面向海量数据的处理,相比于MapReduce,它能够保证任意阶段任务的均衡性,支持类似于操作系统的调度功能。
10.sfs - 分布式文件系统,面向小文件存储
11.proxy - 代理,类似于squid
12.shell - 常用shell功能的封装,如滚动日志组件等
13.observer - 观察者组件,用于收集系统运行时产生的状态数据
运行环境:
Linux 2.6及以上内核版本,要求支持epoll、sendfile和NPTL
特别说明:
本项目采用C++开发,试图做到完全面向对象,努力遵循OO的五大基本原则,并尽量保持各子项目间的独立性,减少相互之间的耦合度。采用StarUML作为主要设计工具。
代码风格:
1.类名 - 以“C”打着,采用骆驼法,如:CJServer
2.类成员 - 以“”打头,如:thread_count
3.对于需要明确位数的整数类型采用uintxx_t系列,如:uint32_t
4.文件名采用Linux风格,全为小写,以“_”为分隔符
5.结构体名以“T”打头
6.全局变量以“g_”打头
7.其它变量采用Linux风格,如:thread_count
8.头文件注