HTTP Server开发相关学习资料整理推介(持续更新,欢迎补充)

标签: web server http nginx http server apache | 发表时间:2011-10-20 20:00 | 作者:ericzhang iDesperadO
出处:http://www.codinglabs.org

本文整理了我在学习过程中接触到的一些与HTTP Server有关的资料、文章及书籍,在这里分享给大家,希望对大家有所帮助。

RFC及标准性文档

RFC2616 – Hypertext Transfer Protocol — HTTP/1.1

HTTP协议标准文档,所有从事HTTP相关开发的人员必备参考资料,建议仔细研读。

RFC793 – TRANSMISSION CONTROL PROTOCOL

TCP协议标准文档。

The WWW Common Gateway Interface Version 1.1

CGI1.1协议标准文档,描述了Web Server与CGI Application通过CGI协议进行交互的所有细节。

FastCGI Whitepaper

FastCGI Specification

FastCGI协议相关标准文档,描述了FastCGI协议及Web Server及FastCGI Application如何进行交互。

基础理论资料

The C10K problem

一篇非常著名的讨论高性能HTTP Server的文章,文章作者结合I/O策略详细讨论了高性能HTTP Server的话题。

How to use epoll? A complete example in C

一篇不错的文章,给出了epoll编程的一个实例,有助于理解如何使用epoll。

关于EPOLL的ET与LT工作模式及其他细节

一篇简洁精炼的文章,探讨了edge trigger、level trigger、select、poll及epoll相关的话题。

实现了一个比nginx速度更快的HTTP服务器

之前在博客园看到的一篇有点标题党的文章 : ),不过内容很不错。作者在文中讲解了如何一步步实现一个基于事件驱动、I/O多路复用的非阻塞HTTP Server,前半部分的理论也讲得很好。

开发技术文档

Emiller’s Guide To Nginx Module Development

非常经典的关于Nginx扩展模块开发的文章。因为Nginx官方并没有提供开发扩展模块相关的文档,因此这篇文章几乎是Nginx模块开发入门的唯一资料。

Emiller’s Advanced Topics In Nginx Module Development

上一篇文章的后续版本,探讨了如subrequest相关的一些高级话题。本文的最后作者给出了ToDo,表明作者当时打算继续写第三篇,并会探讨并行subrequest、Nginx内置数据结构等内容,但不知什么原因,作者后来没有继续写下去,真是非常遗憾。但这两篇文章仍然是每个打算入门Nginx模块开发的必读圣经。

Nginx模块开发入门

我之前写的一篇文章,通过一个Nginx模块的实际开发过程示例详细介绍了Nginx模块开发的基本知识点。

FastCGI Programmer Guide

FastCGI官方关于开发FastCGI的文档,每个开发与FastCGI相关程序人员必读。

程序参考

TinyHttpd

一个短小精悍的Http Server实现,全部只有503行代码,但是麻雀虽小五脏俱全。这个程序的目的不是用于生产环境,而是展示一些Http Server最本源的东西。可以通过阅读这段代码理解一个Http Server的本质。其中包含一个简易的Server和一个Client。

Nginx第三方模块

这里有大量Nginx第三方模块的源码,是学习Nginx模块开发很好的参考。

libfcgi

FastCGI的一个实现,以库的模式提供给第三方使用。

电子书籍

UNIX Network Programming vol1 – The Sockets Networking API

Unix网络编程的超经典著作,详细讲解了Socket 编程、Network I/O等内容,涉及Unix网络编程的方方面面,如果想从事与HTTP Server有关的开发,这本书是夯实基础的必读经典。

Nginx HTTP Server

第一本关于Nginx的书,不过比较偏重于应用,对开发几乎没有太多帮助,不过仍不失为一本理解Nginx应用层面的绝佳参考书。

OReilly – Writing Apache Modules with Perl and C

一本介绍Apache模块开发的书。

如果各位有相关资料推介,欢迎联系我补充。

Change log:
[version 0.1] – 张洋 – 20111020 – 创建文章

相关 [http server 开发] 推荐:

HTTP Server开发相关学习资料整理推介

- - IT技术博客大学习
标签:   HTTPServer.     本文整理了我在学习过程中接触到的一些与HTTP Server有关的资料、文章及书籍,在这里分享给大家,希望对大家有所帮助.     HTTP协议标准文档,所有从事HTTP相关开发的人员必备参考资料,建议仔细研读.     TCP协议标准文档.     CGI1.1协议标准文档,描述了Web Server与CGI Application通过CGI协议进行交互的所有细节.

Apache HTTP server 2.2.21发布

- tinda - Solidot
两周前,Apache软件基金会发布了Apache 2.2.20版,修正了被广泛讨论的字节范围头(range-header)拒绝服务漏洞. 现在,它发布了v 2.2.21,修正了另一个拒绝服务安全漏洞,以及对V 2.2.20版所修正漏洞的进一步修复. Apache鼓励所有旧版本用户升级到新版本.

HTTP Server开发相关学习资料整理推介(持续更新,欢迎补充)

- iDesperadO - CodingLabs
本文整理了我在学习过程中接触到的一些与HTTP Server有关的资料、文章及书籍,在这里分享给大家,希望对大家有所帮助. HTTP协议标准文档,所有从事HTTP相关开发的人员必备参考资料,建议仔细研读. CGI1.1协议标准文档,描述了Web Server与CGI Application通过CGI协议进行交互的所有细节.

GitHub - winshining/nginx-http-flv-module: Media streaming server based on nginx-rtmp-module. In addtion to the features nginx-rtmp-module supplies, HTTP-FLV, GOP cache and VHOST are supported now.

- -
MUSTbe enclosed by quotation marks, or arguments in url will be discarded (some shells not so smart will interpret "&" as "run in background").. ngx_rtmp_stat_modulemay not get statistics from a specified worker process in multi-processes mode, for HTTP requests are randomly distributed to worker processes.

SQL Server--索引

- - CSDN博客推荐文章
         1,概念:  数据库索引是对数据表中一个或多个列的值进行排序的结构,就像一本书的目录一样,索引提供了在行中快速查询特定行的能力..             2.1优点:  1,大大加快搜索数据的速度,这是引入索引的主要原因..                             2,创建唯一性索引,保证数据库表中每一行数据的唯一性..

SQL Server 面试

- - SQL - 编程语言 - ITeye博客
在SQL语言中,一个SELECT…FROM…WHERE语句称为一个查询块,将一个查询块嵌套在另一个查询块的WHERE子句中的查询称为子查询. 子查询分为嵌套子查询和相关子查询两种. 嵌套子查询的求解方法是由里向外处理,即每个子查询在其上一级查询处理之前求解,子查询的结果作为其父查询的查询条件. 子查询只执行一次,且可以单独执行;.

什么是Server SAN? Server SAN精解

- - 云存储技术网--光头老蒋
Server SAN是现在一个全新的概念,现在给出的概念都太笼统. 按照老蒋的想法:Server San应该是一个利用软件将基于DAS存储(包含闪存卡,直连存储)的集合,做成一个能共享的SAN存储网络.      SAN存储区域网,大家都很熟悉. 普遍使用的就两种: FC SAN;ISCSI SAN.

weblogic server启动慢

- - Linux - 操作系统 - ITeye博客
(1)较好的解决办法: 在Weblogic启动参数里添加 “-.   Djava.security.egd=file:/dev/./urandom” (/dev/urandom 无法启动). 修改Linux上Weblogic使用的jdk $JAVA_HOME/jre/lib/security/java.security 文件.

Server-Sent Events 教程

- - 阮一峰的网络日志
服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE). 严格地说, HTTP 协议无法做到服务器主动推送信息. 但是,有一种变通方法,就是服务器向客户端声明,接下来要发送的是流信息(streaming). 也就是说,发送的不是一次性的数据包,而是一个数据流,会连续不断地发送过来.

译|High-Performance Server Architecture

- - 掘金 架构
本文的目的是分享我多年来关于如何开发某种应用程序的一些想法,对于这种应用程序,术语“服务”只是一个无力的近似称呼. 更准确地说,将写的与一大类程序有关,这些程序旨每秒处理大量离散的消息或请求. 网络服务通常最适合此定义,但从某种意义上讲,实际上并非所有的程序都是服务. 但是,由于“高性能请求处理程序”是很糟糕的标题,为简单起见,倒不如叫“服务”万事大吉.