1.nginxåapacheçåºå«
2.web BenchWeb Bench安装使用
3.C语言10个经典开源项目
nginxåapacheçåºå«
ããä½è ï¼fiisio
é¾æ¥ï¼/question//answer/
æ¥æºï¼ç¥ä¹
èä½æå½ä½è ææãåä¸è½¬è½½è¯·èç³»ä½è è·å¾ææï¼éåä¸è½¬è½½è¯·æ³¨æåºå¤ã
ãã1ãnginxç¸å¯¹äºapacheçä¼ç¹ï¼
è½»é级ï¼åæ ·èµ·web æå¡ï¼æ¯apacheå ç¨æ´å°çå ååèµæºæ并åï¼nginx å¤ç请æ±æ¯å¼æ¥éé»å¡çï¼èapache åæ¯é»å¡åçï¼å¨é«å¹¶åä¸nginx è½ä¿æä½èµæºä½æ¶èé«æ§è½é«åº¦æ¨¡ååç设计ï¼ç¼å模åç¸å¯¹ç®å社åºæ´»è·ï¼åç§é«æ§è½æ¨¡ååºåè¿ éå
apache ç¸å¯¹äºnginx çä¼ç¹ï¼
rewrite ï¼æ¯nginx çrewrite 强大ï¼å¨æ页é¢ï¼æ¨¡åè¶ å¤ï¼åºæ¬æ³å°çé½å¯ä»¥æ¾å°ï¼å°bug ï¼nginx çbug ç¸å¯¹è¾å¤ï¼è¶ 稳å®
åå¨å°±æ¯çç±ï¼ä¸è¬æ¥è¯´ï¼éè¦æ§è½çweb æå¡ï¼ç¨nginx ãå¦æä¸éè¦æ§è½åªæ±ç¨³å®ï¼é£å°±apache å§ãåè çåç§åè½æ¨¡åå®ç°å¾æ¯åè ï¼ä¾å¦ssl ç模åå°±æ¯åè 好ï¼å¯é 置项å¤ãè¿éè¦æ³¨æä¸ç¹ï¼epoll(freebsd ä¸æ¯ kqueue )ç½ç»IO 模åæ¯nginx å¤çæ§è½é«çæ ¹æ¬çç±ï¼ä½å¹¶ä¸æ¯ææçæ åµä¸é½æ¯epoll 大è·å ¨èçï¼å¦ææ¬èº«æä¾éææå¡çå°±åªæ寥寥å 个æ件ï¼apache çselect 模åæ许æ¯epoll æ´é«æ§è½ã
2ãä½ä¸º Web æå¡å¨ï¼ç¸æ¯ Apacheï¼Nginx 使ç¨æ´å°çèµæºï¼æ¯ææ´å¤ç并åè¿æ¥ï¼ä½ç°æ´é«çæçï¼è¿ç¹ä½¿ Nginx å°¤å ¶åå°èæ主æºæä¾åç欢è¿ãå¨é«è¿æ¥å¹¶åçæ åµä¸ï¼Nginxæ¯Apacheæå¡å¨ä¸éçæ¿ä»£å: Nginxå¨ç¾å½æ¯åèæ主æºçæçèæ¿ä»¬ç»å¸¸éæ©ç软件平å°ä¹ä¸. è½å¤æ¯æé«è¾¾ ,源码 个并åè¿æ¥æ°çååº, æè°¢Nginx为æ们éæ©äº epoll and kqueue ä½ä¸ºå¼å模å.
Nginxä½ä¸ºè´è½½åè¡¡æå¡å¨: Nginx æ¢å¯ä»¥å¨å é¨ç´æ¥æ¯æ Rails å PHP ç¨åºå¯¹å¤è¿è¡æå¡, ä¹å¯ä»¥æ¯æä½ä¸º HTTP代ç æå¡å¨å¯¹å¤è¿è¡æå¡. Nginxéç¨Cè¿è¡ç¼å, ä¸è®ºæ¯ç³»ç»èµæºå¼éè¿æ¯CPU使ç¨æçé½æ¯ Perlbal è¦å¥½å¾å¤.
ä½ä¸ºé®ä»¶ä»£çæå¡å¨: Nginx åæ¶ä¹æ¯ä¸ä¸ªé常ä¼ç§çé®ä»¶ä»£çæå¡å¨ï¼ææ©å¼åè¿ä¸ªäº§åçç®çä¹ä¸ä¹æ¯ä½ä¸ºé®ä»¶ä»£çæå¡å¨ï¼, Last.fm æè¿°äºæå并ä¸ç¾å¦ç使ç¨ç»éª.
Nginx æ¯ä¸ä¸ªå®è£ é常çç®å , é ç½®æ件é常ç®æ´ï¼è¿è½å¤æ¯æperlè¯æ³ï¼, Bugs é常å°çæå¡å¨: Nginx å¯å¨ç¹å«å®¹æ, 并ä¸å ä¹å¯ä»¥åå°7*ä¸é´æè¿è¡ï¼å³ä½¿è¿è¡æ°ä¸ªæä¹ä¸éè¦éæ°å¯å¨. ä½ è¿è½å¤ä¸é´ææå¡çæ åµä¸è¿è¡è½¯ä»¶çæ¬çå级 .
3ãNginx é ç½®ç®æ´, Apache å¤æ
Nginx éæå¤çæ§è½æ¯ Apache é« 3å以ä¸
Apache 对 PHP æ¯ææ¯è¾ç®åï¼Nginx éè¦é åå ¶ä»å端ç¨
Apache çç»ä»¶æ¯ Nginx å¤
ç°å¨ Nginx ææ¯ Web æå¡å¨çé¦é
4ãææ ¸å¿çåºå«å¨äºapacheæ¯åæ¥å¤è¿ç¨æ¨¡åï¼ä¸ä¸ªè¿æ¥å¯¹åºä¸ä¸ªè¿ç¨ï¼nginxæ¯å¼æ¥çï¼å¤ä¸ªè¿æ¥ï¼ä¸çº§å«ï¼å¯ä»¥å¯¹åºä¸ä¸ªè¿ç¨
5ãnginxå¤çéææ件好,èè´¹å åå°.ä½æ çapacheä»ç¶æ¯ç®åç主æµ,æå¾å¤ä¸°å¯çç¹æ§.æ以è¿éè¦æé çæ¥.å½ç¶å¦æè½ç¡®å®nginxå°±éåéæ±,é£ä¹ä½¿ç¨nginxä¼æ¯æ´ç»æµçæ¹å¼.
apacheæå 天ä¸æ¯æå¤æ ¸å¿å¤çè´è½½é¸¡èç缺ç¹ï¼å»ºè®®ä½¿ç¨nginxåå端ï¼å¾ç«¯ç¨apacheã大åç½ç«å»ºè®®ç¨nginxèªä»£çé群åè½
6ãnginxçè´è½½è½åæ¯apacheé«å¾å¤ãææ°çæå¡å¨ä¹æ¹ç¨nginxäºãèä¸nginxæ¹å®é ç½®è½-tæµè¯ä¸ä¸é ç½®æ没æé®é¢ï¼apacheéå¯çæ¶ååç°é ç½®åºéäºï¼ä¼å¾å´©æºï¼æ¹çæ¶åé½ä¼é常å°å¿ç¿¼ç¿¼ç°å¨çæ好å¤é群ç«ï¼å端nginxæ并åï¼å端apacheé群ï¼é åçä¹ä¸éã
7ãnginxå¤çå¨æ请æ±æ¯é¸¡èï¼ä¸è¬å¨æ请æ±è¦apacheå»åï¼nginxåªéåéæåååã
8ãnginxæ¯å¾ä¸éçå端æå¡å¨ï¼è´è½½æ§è½å¾å¥½ï¼å¨èå¥ä¸è¿è¡nginxï¼ç¨webbench模æ个éææ件请æ±æ¯«ä¸ååãapache对phpçè¯è¨çæ¯æå¾å¥½ï¼æ¤å¤apacheæ强大çæ¯æç½è·¯ï¼åå±æ¶é´ç¸å¯¹nginxæ´ä¹ ï¼
9ãNginxä¼äºapacheç主è¦ä¸¤ç¹ï¼1.Nginxæ¬èº«å°±æ¯ä¸ä¸ªåå代çæå¡å¨ 2.Nginxæ¯æ7å±è´è½½åè¡¡ï¼å ¶ä»çå½ç¶ï¼Nginxå¯è½ä¼æ¯apacheæ¯ææ´é«ç并åï¼ä½æ¯æ ¹æ®NetCraftçç»è®¡ï¼å¹´4æçç»è®¡æ°æ®ï¼Apacheä¾ç¶å æ.%ï¼èNginxæ¯7.%ï¼å æ¤æ»å¾æ¥è¯´ï¼Aapcheä¾ç¶æ¯å¤§é¨åå ¬å¸çé¦å ï¼å ä¸ºå ¶æççææ¯åå¼å社åºå·²ç»ä¹æ¯é常ä¸éçæ§è½ã
ãä½ å¯¹web serverçéæ±å³å®ä½ çéæ©ã大é¨åæ åµä¸nginxé½ä¼äºAPACHEï¼æ¯å¦è¯´éææ件å¤çãPHP-CGIçæ¯æãåå代çåè½ãå端Cacheãç»´æè¿æ¥ççãå¨Apache+PHPï¼preforkï¼æ¨¡å¼ä¸ï¼å¦æPHPå¤çæ ¢æè å端ååå¾å¤§çæ åµä¸ï¼å¾å®¹æåºç°Apacheè¿ç¨æ°é£åï¼ä»èæç»æå¡çç°è±¡ã
ãå¯ä»¥çä¸ä¸nginx lua模åï¼/chaoslaw...apacheæ¯nginxå¤ç模åï¼å¯ç´æ¥ç¨luaå®ç°apacheæ¯ææµè¡çï¼whyï¼å¤§å¤æ°äººæå¾æ´æ°å°nginxæè å¦æ°äºç©
ã对äºnginxï¼æå欢å®é ç½®æ件åçå¾ç®æ´ï¼æ£åé 置让å¾å¤äºæ åå¾ç®åè¿è¡æçé«ï¼å ç¨èµæºå°ï¼ä»£çåè½å¼ºå¤§ï¼å¾éååå端ååºæå¡å¨
ãApacheå¨å¤çå¨ææä¼å¿ï¼Nginx并åæ§æ¯è¾å¥½ï¼CPUå åå ç¨ä½ï¼å¦ærewriteé¢ç¹ï¼é£è¿æ¯Apacheå§
web BenchWeb Bench安装使用
在Ubuntu的Linux系统上,安装Webbench的安装步骤如下:
首先,通过wget工具从远程下载地址下载webbench的源码源代码文件,命令如下:
wget /p/cmock...
三、安装Libev
Libev是源码一个基于epoll、kqueue等OS基础设施的安装以太坊分红源码高效事件驱动库,使用Reactor模式处理IO事件、源码定时器和信号,安装代码量少至4.版本的源码多行。
下载链接: software.schmorp.de/pkg...
四、安装Memcached
Memcached是源码一个用于动态Web应用的高性能分布式内存对象缓存系统,通过缓存数据和对象减少数据库读取次数,安装加速动态数据库驱动网站的源码kettle源码剖析速度。Memcached-1.4.7版本代码量在K行左右。安装
下载地址: a distributed memory object caching system
五、源码SQLite
SQLite是一个开源的嵌入式关系数据库引擎,实现自包容、零配置,支持事务的快速浏览源码SQL数据库,代码量约3万行,大小K。
下载地址: SQLite Home Page
六、Redis
Redis是一个使用ANSI C编写的开源数据结构服务器,代码量相对较小(4.5w行),几乎不依赖其他库,react源码文章大部分为单线程。
下载地址: Redis
七、Nginx
Nginx是一款高性能的HTTP和反向代理服务器,设计简洁、功能丰富,具有低系统资源消耗的sf引擎源码特性。已发布多年,获得广泛好评。
下载地址: http://nginx.org/en/download.html
八、UNIXv6内核源代码
UNIX V6内核源代码约为1万行,适合初学者理解。与现代操作系统内核源代码(如Linux的万行)相比,UNIX V6源代码在可理解性上有优势。
下载地址: minnie.tuhs.org/cgi-bin...
九、NetBSD
NetBSD是一个免费的、高度移植性的UNIX-like操作系统,支持多种平台,设计简洁、代码规范,具有多项先进特性,广受好评。
下载地址: The NetBSD Project
十、Tinyhttpd
Tinyhttpd是一个超轻量型HTTP服务器,全部代码仅行(包括注释),附带一个简单的客户端,可用于理解HTTP服务器的基本原理。
下载链接: Tiny HTTPd