一、            web应用篇

1           HTTP服务器Nginx

1.1          性能上、功能上、安装上与Apache对比

l  性能上占用系统资源少,支持并发高

l  功能上正反代理服务器和负载均衡服务器

l  安装、配置简单

1.2          Nginx的优势

l  Web服务器:处理静态文件、索引文件、自动索引效率高

l  实现无缓存的反响代理加速

l  负载均衡

l  高并发(50000vuser)且占用内存很低

l  安全性Nginx保持10000个没用活动的连接(占2.5M内存)针对DOS攻击

l  热部署配置升级无需重新启动

1.3          正向代理与反向代理的区别

l  正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。

l  反向代理的典型用途是将 防火墙后面的服务器提供给Internet用户访问。反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲服务。

1.4          性能优化

l  取消debug模式(18页)

Nginx源码解压后,修改auto/cc/gcc文件

#debug

CFLAGS=”GFLAGS -g”

注释或删除这俩行,即取消debug模式

l  TCMalloc

相关文章:http://www.linuxidc.com/Linux/2013-04/83197.htm

l  Nginx内核参数优化(21页)

相关文章:http://www.linuxidc.com/Linux/2013-04/83198.htm

1.5                搭建Nginx + Java 环境(32页)

l  一静一动

将静态请求交给Nginx,动态请求交给后端Tomcat

l  负载均衡

Nginx自带负载均衡功能进行多台tomcat服务器负载均衡

2           HTTP加速器Varnish

2.1          Varnish的优势

l  反向代理服务器和HTTP加速器

基于内存缓存,重启后数据消失

利用虚拟内存方式,IO性能好

0-60s精确缓存时间

VCL配置管理灵活

32G最大缓存2GB

强大的管理功能(top stat admin list)

状态结构清晰

二叉堆管理缓存文件

2.2          与squid对比

l  都是开源反向代理服务器

l  Varnish稳定性高于squid

l  Varnish访问速度更快,直接从内存中

l  支持更多并发连接,TCP连接释放比squid快

l  通过管理端口使用正则表达式批量清除部分缓存

l  缺点:高并发CPU/IO/内存开销高于squid

l  Varnish进程一旦挂起、崩溃或者重启,缓存数据完全释放,此时所有请求都会被发送到后端服务器,对后端服务器造成很大压力。

2.3          Varnish优化

l  Linux内核优化 (58页)

l  系统资源优化  (59页)

Ulimit

l  Varnish参数优化(61页)

3           Memcached应用

二、            运维监控与性能优化

1         运维监控利器Nagios

1.1       Nagios特点

l  成本低、结构简单、可维护性强

l  可运行在Linux、Unix平台,同时提供web界面监控多台主机或服务运行状态

l  可监控本地、远程主机资源(内存、进程、磁盘等)

l  可监控网络服务资源(HTTP/PING/FTP/SMTP/POP3等)

l  允许用户编写自定义插件来监控特定服务

l  异常报警(邮件、短信)

l  自定义事件处理程序,当主机或服务出现故障时自动调用指定处理程序

1.2       下载安装nagios (http://yunpan.cn/cgEJDs6uvetyn  提取码 7ad9)

安装包:nagios-3.2.0.tar   (217页)

插件  :nagios-plugins-1.4.14.tar    (218页)

汉化  :nagios-cn-3.2.0.tar    (218页)

Apache:httpd-2.0.63.tar       (219页)

PHP   :php-5.3.2.tar            (219页)

./configure --prefix=/usr/local/php --with-apxs=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/ local/libxml2

待续 .....

高性能Linux服务器构建实战笔记的更多相关文章

  1. 优化系统资源ulimit《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》

    优化系统资源ulimit<高性能Linux服务器构建实战:运维监控.性能调优与集群应用> 假设有这样一种情况,一台Linux 主机上同时登录了10个用户,在没有限制系统资源的情况下,这10 ...

  2. 优化Linux内核参数/etc/sysctl.conf sysctl 《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》

    优化Linux内核参数/etc/sysctl.conf  sysctl  <高性能Linux服务器构建实战:运维监控.性能调优与集群应用> http://book.51cto.com/ar ...

  3. 《高性能Linux服务器构建实战》——第1章轻量级HTTP服务器Nginx

    第1章 轻量级HTTP服务器Nginx本章主要介绍Nginx的配置管理和使用.作为一个轻量级的HTTP服务器,Nginx与Apache相比有以下优势:在性能上,它占用很少的系统资源,能支持更多的并发连 ...

  4. 高性能Linux服务器 第6章 ext3文件系统反删除利器ext3grep extundelete工具恢复rm -rf 误删除的文件

    高性能Linux服务器 第6章  ext3文件系统反删除利器ext3grep  extundelete工具恢复rm -rf 误删除的文件 只能用于ext3文件系统!!!!!!!高俊峰(高性能Linux ...

  5. 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群

    高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...

  6. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

  7. 高性能linux服务器内核调优

    高性能linux服务器内核调优 首先,介绍一下两个命令1.dmesg 打印系统信息.有很多同学们服务器出现问题,看了程序日志,发现没啥有用信息,还是毫无解决头绪,这时候,你就需要查看系统内核抛出的异常 ...

  8. 高性能Linux服务器

    TCP/IP协议族——高性能Linux服务器编程   现在 Internet 使用的主流协议族是 TCP/IP 协议族,它是一个分层.多协议的通信体系. TCP/IP 协议族体系结构以及主要协议 TC ...

  9. 常见的linux服务器构建

    Linux常用服务器构建-ftp服务器 ftp服务器 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”. 用于Internet上的控制文件的双 ...

随机推荐

  1. iOS开发之使用XMPPFramework实现即时通信(三)

    你看今天是(三)对吧,前面肯定有(一)和(二),在发表完iOS开发之使用XMPPFramework实现即时通信(一)和iOS开发之使用XMPPFramework实现即时通信(二)后有好多的小伙伴加我Q ...

  2. PHP中有关正则表达式的函数集锦

    之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...

  3. 用Spire.doc来合并邮件

      用Spire.doc来合并邮件 让我们想象一下这样的场景:你在一家IT公司上班.某天公司的某一产品大幅度升级了.然后你需要通知所有的客户.这真是很长的名单.一个个的通知他们是有点蠢的,因为这要花费 ...

  4. swift中Range的使用书名

    在swift中Range有两种用法 1.把字符串转换成NSString来使用 //这里是把swift的字符换转换成了nsstring 使用 let str :NSString = text.strin ...

  5. String的按值传递,java传参都是传值

    java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? String和int参数传递是按值传递还是引用传递? 一道面试题目,String的传递: public String change( ...

  6. [Java 进阶]Java中的国际化

    背景知识 现代软件开发,往往做出的应用程序不止给一个国家的人去使用.不同国家的人往往存在语言文字不通的问题.由此产生了国际化(internationalization).多语言(multi-langu ...

  7. 一步一步开发Game服务器(二)完成登陆,聊天

    我知道这样的文章在博客园已经多的大家都不想看了,但是这是我的系列文章开始,请各位大神见谅了. 多线程,线程执行器,(详见),socket通信相关 (详见) 本人blog相关文章测试代码,示例,完整版s ...

  8. 详解Javascript的继承实现

    我最早掌握的在js中实现继承的方法是在w3school学到的混合原型链和对象冒充的方法,在工作中,只要用到继承的时候,我都是用这个方法实现.它的实现简单,思路清晰:用对象冒充继承父类构造函数的属性,用 ...

  9. javascript作用域中令你意想不到的问题

    大多数类c的语言,由一对花括号封闭的代码块就是一个作用域.但是javascript的作用域则是通过函数来定义.在一个函数中定义的变量只对这个函数内部可见,我们称为函数作用域. 1.在函数中引用一个变量 ...

  10. 学习笔记(二)——MVC扩展(渲染视图)

    如何渲染视图? 我以近乎的视图引擎为例总结了一下,近乎中的ThemedViewEngine类,就是重写后的的视图引擎.ThemedViewEngine类主要对FindPartialView和FindV ...