0548-apache两种工作模式介绍及配置优化

简介:

apache常用工作模式有两种,区别?
worker模式:1、线程模式 2、占用资源少 3、稳定性略差 4、并发大
prefork模式:1、进程模式 2、占用资源多 3、稳定 4、并发一般
apache默认是prefork,编译时候一般选择worker模式。如果编译时候不指定worker模式,那么就是默认的prefork模式

已经确定了worker模式,如何调优呢?
[root@web02 blog]# cd /application/apache/conf/
[root@web02 conf]# vim httpd.conf
把#Include conf/extra/httpd-mpm.conf行的#删除
[root@web02 conf]# cd extra/
[root@web02 extra]# vim httpd-mpm.conf 
里面worker模式调试优化默认为:#为注释
<IfModule mpm_worker_module>
    StartServers          2
    MaxClients          150 #将来调并发连接数就调这个地方
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadsPerChild      25
    MaxRequestsPerChild   0
</IfModule>
如果把并发数从150调整为1500,那么自检时候会如下提示:
[root@web02 extra]# ../../bin/apachectl -t
WARNING: MaxClients of 1500 would require 60 servers,
 and would exceed the ServerLimit value of 16.
 Automatically lowering MaxClients to 400.  To increase,
 please see the ServerLimit directive.
Syntax OK
如果增加了ServerLimit         1500如下所示,保存配置文件。
<IfModule mpm_worker_module>
    ServerLimit         1500
    StartServers          2
    MaxClients          1500
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadsPerChild      25
    MaxRequestsPerChild   0
</IfModule>
再次检查语法就不会报错了。
[root@web02 extra]# ../../bin/apachectl -t
Syntax OK
然后平滑优雅重启即可。
[root@web02 extra]# ../../bin/apachectl graceful
面试时候说下两个模式的区别就可以了。知道如何调试并发

0549-apache目录许可功能说明及实践
apache还有很多坑
[root@web02 extra]# pwd
/application/apache/conf/extra
[root@web02 extra]# vim httpd-vhosts.conf 
举例其中DocumentRoot里面的路径是指定的/application/apache2.2.34/htdocs
<VirtualHost *:80>
    ServerAdmin webadmin@qq.com
    DocumentRoot "/application/apache2.2.34/htdocs/blog"
    ServerName blog.etiantian.org
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>
如果站点不在指定的路径下面,那么配置后的站点就会报错403错误。
原因是:
[root@web02 extra]# cd ..
[root@web02 conf]# ls
extra  httpd.conf  httpd.conf.bak  magic  mime.types  original
[root@web02 conf]# pwd
/application/apache/conf
[root@web02 conf]# egrep -v "^$|#" httpd.conf
在httpd.conf中已经默认指定好了站点的路径了。如下所示默认:
<Directory "/application/apache2.2.34/htdocs">
    Options -Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
如果站点路径和默认指定的不一样,只需要在httpd.conf里面增加一个站点路径的标签即可。
例如增加如下标签:站点路径/data/www只是举例。
<Directory "/data/www">
    Options -Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

本文转自sandshell博客51CTO博客,原文链接http://blog.51cto.com/sandshell/1960987如需转载请自行联系原作者


sandshell

相关文章
|
1月前
|
消息中间件 监控 大数据
优化Apache Kafka性能:最佳实践与调优策略
【10月更文挑战第24天】作为一名已经对Apache Kafka有所了解并有实际使用经验的开发者,我深知在大数据处理和实时数据流传输中,Kafka的重要性不言而喻。然而,在面对日益增长的数据量和业务需求时,如何保证系统的高性能和稳定性成为了摆在我们面前的一个挑战。本文将从我的个人视角出发,分享一些关于如何通过合理的配置和调优来提高Kafka性能的经验和建议。
84 4
|
2月前
|
SQL 分布式计算 NoSQL
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
36 1
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
|
2月前
|
存储 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
44 1
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
|
2月前
|
缓存 前端开发 应用服务中间件
CORS跨域+Nginx配置、Apache配置
CORS跨域+Nginx配置、Apache配置
233 7
|
2月前
|
分布式计算 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
49 5
|
2月前
|
资源调度 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
49 2
|
2月前
|
存储 大数据 分布式数据库
大数据-165 Apache Kylin Cube优化 案例 2 定义衍生维度及对比 & 聚合组 & RowKeys
大数据-165 Apache Kylin Cube优化 案例 2 定义衍生维度及对比 & 聚合组 & RowKeys
47 1
|
2月前
|
消息中间件 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
43 2
|
2月前
|
SQL 存储 监控
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
63 0
|
8天前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
274 33
The Past, Present and Future of Apache Flink

推荐镜像

更多
下一篇
DataWorks