5.经验学习
当Igor Sysoev开始编写 nginx的时候,构建互联网的大多数软件已经存在,这些软件的体系结构通常 遵循 旧式服务器的定义、网络硬件、操作系统以及老互联网架构。然而,这并没有阻止 Igor 思考他或许能够在 web服务器领域做一些改善性的工作。因此,第一课似乎很明显:改进的空间总会是有的。
自从头脑中有了更好的web软件的想法,Igor花费了很多时间开发nginx初始代码结构和学习不同的方式为各种操作系统优化nginx代码。十年后,他正在开发nginx 2.0版本的一个原型,考虑到 版本1数年来的积极发展。显然,一种新体系结构的初始原型和代码结构对软件产品的未来而言是极为重要的。
另一点值得注意的是,可扩展性应被重点关注。window版本的nginx也许很好的证明了如何避免开发工作的东西被稀释,既不是开发者的核心能力也不是应用本身的事情。这在重写引擎过程中通过尝试使用更多的向后兼容的功能来加强nginx时同样适用。
最后但同样重要的,值得一提的是,尽管nginx开发者社区不是很大,nginx的第三方模块和扩展一直是它凝聚人气很重要的一部分。Evan Miller,Piotr Sikora, Valery Kholodkov, Zhang Yichun (agentzh)和其他有才华的软件工程师所做的工作被nginx用户社区和nginx最初的开发者赏识已久。
(全文完。。。)
1. 本文由mathew翻译,程序员学架构校审
2. 本文译自The Architecture of Open Source Applications
3. 转载请务必注明本文出自:程序员学架构(微信号:archleaner )
4. 更多文章请扫码:
相关推荐
第四章“深度学习篇”可能涉及到更高级的主题,如Nginx的模块开发、自定义日志记录、URL重写规则、限流与访问控制策略,以及性能优化技巧。这些内容对于想要深入理解和定制Nginx的开发者来说极具价值。 最后的第五...
《鸟哥Linux私房菜》是一本广受欢迎的Linux...《鸟哥Linux私房菜》不仅适合初学者入门,也对有经验的Linux管理员提供有价值的参考,通过这本书的学习,读者能够扎实地掌握Linux基础知识,进阶到服务器运维的专业领域。
#### 四、Nginx 基础 1. **新手起步**:介绍如何安装和配置 Nginx,并了解其基本工作原理。 2. **关键概念**: - **location 匹配规则**:解释 Nginx 如何根据 URL 路径来选择适当的配置块。 - **反向代理**:说明...
这篇博客分享了一位拥有Python工程师背景的求职者在2016年底的面试经历,主要集中在阿凡题公司的面试过程。这位求职者毕业于985大学的通信工程专业,但因创业经历使得其只有1年的工作经验。文章详细介绍了阿凡题的...
在下一篇文章中,我们将继续介绍如何安装和配置Nginx、PHP-FPM、MySQL等核心组件,并进行最终的测试。在整个过程中,需要注意每一步的细节,确保所有的组件都能够正确安装并且相互之间兼容性良好。对于初学者来说,...
- **Nginx介绍**:Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 - **配置要点**:安装Nginx软件包,配置虚拟主机,优化Nginx性能,理解和配置重写规则。 ##### 5.3 Tomcat/...
《Puppet实战》一共20章,共分为四部分:准备篇(第1~4章)介绍了Puppet用途、组织结构、工作原理、核心配置文件、各种平台下的安装与配置,以及它的运行环境,是使用Puppet前必须做好的准备工作;基础篇(第5~10...
第四版、第三版基础篇和服务器篇的电子书资源,为读者提供了全面且深入的学习材料。以下是这些书籍中涉及的重要知识点: 1. **Linux系统介绍**:Linux是一种开源的操作系统,具有稳定、安全、高效的特点,广泛应用...
- **项目介绍**:候选人需要能够清晰地阐述自己的项目经验,包括项目背景、技术选型、遇到的问题及解决方案。 - **问题分析与解决**:面试官可能会给出一些实际问题,考察候选人的分析能力和解决问题的能力。 9. ...
- **负载均衡**:介绍Ribbon、Nginx等工具的使用方法。 - **API网关**:介绍Zuul、Spring Cloud Gateway等API网关的使用方法。 ##### 2.6 分布式追踪 - **Sleuth**:介绍如何使用Spring Cloud Sleuth进行分布式追踪...
本篇文章主要介绍了基于树莓派的远程web服务器的设计和实现。该系统架构基于树莓派 4作为主控板,mysql作为服务器的数据库,tomcat作为服务器,nginx反向代理tomcat。 在系统架构中,树莓派 4作为主控板,负责处理...
本篇文章将详细介绍如何部署和使用elasticsearch-head-master,以及其在优化Elasticsearch操作上的优势。 **一、Elasticsearch-Head 描述** Elasticsearch-Head 是由Grasshopper开发的一个轻量级插件,最初是为了...
#### 四、Linux编程篇 ##### 4.1 Linux Shell编程 - **Shell编程基础**: 介绍Shell脚本的基础知识,包括变量设置、流程控制语句等。 - **Shell脚本案例**: 实际编写Shell脚本来完成特定任务,提高实际操作能力。 #...
本篇将详细解析如何构建一个有效的简历模板。 一、基本信息 简历应包含求职者的姓名、联系方式(手机、邮箱)、性别、目前所在城市以及工作年限。例如:“XXX求职意向:Java 开发 手机:18888888888 邮箱:xxx@xxx....
他不仅拥有多年的编程经验,还通过其著作分享了众多实用的技术和技巧。 #### 三、书籍核心内容 本书的核心内容集中在以下几个方面: 1. **快速构建动态网站**:书中详细介绍了如何使用PHP和MySQL这两种流行的技术...
这篇学习笔记涵盖了从基础到高级的Django知识,旨在帮助初学者快速掌握这个框架,并提升有经验的开发者对Django的理解。 ### 第一章:Django简介 Django由两位美国开发者在2005年创建,它遵循“DRY(Don't Repeat ...
本论文详细介绍了从系统设计到功能实现的全过程,为初学者提供了清晰的实现路径,也为有经验的开发者提供了参考。通过深入学习和实践,读者能够构建出稳定、高效的电子商务平台,满足日益增长的在线购物需求。
根据给定的信息,“乐优商城19天完整版带笔记”这一资料主要涉及的是一个基于Spring ...通过本篇内容的介绍,希望能够帮助读者建立起对Spring Cloud及其在电商项目中应用的整体认识,并为后续深入学习打下坚实的基础。
个人博客系统是一种常见的Web应用,它允许用户创建、编辑和分享自己的文章,是个人表达、分享知识和经验的理想平台。在本篇文章中,我们将深入探讨如何使用ThinkPHP框架构建这样一个系统,并对涉及的关键技术和流程...