高性能Linux服务器构建实战笔记
一、 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服务器构建实战笔记的更多相关文章
- 优化系统资源ulimit《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》
优化系统资源ulimit<高性能Linux服务器构建实战:运维监控.性能调优与集群应用> 假设有这样一种情况,一台Linux 主机上同时登录了10个用户,在没有限制系统资源的情况下,这10 ...
- 优化Linux内核参数/etc/sysctl.conf sysctl 《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》
优化Linux内核参数/etc/sysctl.conf sysctl <高性能Linux服务器构建实战:运维监控.性能调优与集群应用> http://book.51cto.com/ar ...
- 《高性能Linux服务器构建实战》——第1章轻量级HTTP服务器Nginx
第1章 轻量级HTTP服务器Nginx本章主要介绍Nginx的配置管理和使用.作为一个轻量级的HTTP服务器,Nginx与Apache相比有以下优势:在性能上,它占用很少的系统资源,能支持更多的并发连 ...
- 高性能Linux服务器 第6章 ext3文件系统反删除利器ext3grep extundelete工具恢复rm -rf 误删除的文件
高性能Linux服务器 第6章 ext3文件系统反删除利器ext3grep extundelete工具恢复rm -rf 误删除的文件 只能用于ext3文件系统!!!!!!!高俊峰(高性能Linux ...
- 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群
高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...
- 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化
高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...
- 高性能linux服务器内核调优
高性能linux服务器内核调优 首先,介绍一下两个命令1.dmesg 打印系统信息.有很多同学们服务器出现问题,看了程序日志,发现没啥有用信息,还是毫无解决头绪,这时候,你就需要查看系统内核抛出的异常 ...
- 高性能Linux服务器
TCP/IP协议族——高性能Linux服务器编程 现在 Internet 使用的主流协议族是 TCP/IP 协议族,它是一个分层.多协议的通信体系. TCP/IP 协议族体系结构以及主要协议 TC ...
- 常见的linux服务器构建
Linux常用服务器构建-ftp服务器 ftp服务器 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”. 用于Internet上的控制文件的双 ...
随机推荐
- Notes:indexedDB使用
indexedDB是浏览器端保存结构化数据的一种数据库,类似于mysql,oracle等数据库,但indexedDB使用对象存储数据,而不是用表. indexedDB是全局的宿主对象,使用window ...
- Android随笔之——获取EditText光标所在行行号
由于项目需求,需要获取EditText光标当前所在行行号,可是翻遍Android文档.问遍度娘都没发现,于是在博客园中提问,碰见了好心人告诉了我答案,谨以以下代码献给有需要的人 private int ...
- 史上最详细的iOS之事件的传递和响应机制
前言: 按照时间顺序,事件的生命周期是这样的: 事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view.寻找最合适的view的底层实现.拦截事件的处理)->找到最合适的view后 ...
- [emacs] 使用ggtags浏览代码
[emacs] 使用ggtags浏览代码 // */ // ]]> [emacs] 使用ggtags浏览代码 Table of Contents 1 相关的连接 2 global简介 2.1 ...
- serviceStack.Redis 在PooledRedisClientManager 中设置密码
ServiceStack.Redis 是一个C#访问Redis的客户端,可以说可以通过它实现所有需要Redis-Cli的功能.但是今天我在主Redis 实例设置了访问密码,而在slave 上没有设置, ...
- 基于STM32Cube的ADC模数采样设计
1.背景 此实验建立在STM32F429核心板基础上,对于深刻了解STM32Cube使用具有深刻意义.利用DMA进行ADC采样,具有速度快,极大减少CPU消耗的优势,对于数据采集系统具 ...
- Rafy 领域实体框架 - 领域模型设计器(建模工具)设计方案
去年4月,我们为 Rafy 框架添加了领域模型设计器组件.时隔一年,谨以本文,简要说明该领域模型设计器的设计思想. 设计目标 Rafy 实体框架中以领域驱动设计作为指导思想.所以在开发时,以领域建模为 ...
- 获取documents、tmp、app、Library的路径的方法
phone沙箱模型的有四个文件夹: documents,tmp,app,Library 1.Documents 您应该将所有的应用程序数据文件写入到这个目录下.这个目录用于存储用户数据或其它 ...
- const 和 readonly
const 和 readonly 的异同 Const readonly 字面意 不变常量,不可修改 只读操作,不可写 初始化 必须在声明的同时赋值 可在声明和构造方法中进行赋值 所属关系 类.即sta ...
- 解决eclipse中logcat不显示log的问题
调试程序需要打印一些消息出来,logcat不好用的话就很麻烦了.这个问题折腾了好久,为啥就是不出来呢? 上网找了很多解决办法: 重启eclipse 重启adb 重启logcat ......等等好多 ...