当前位置: 首页 > 编程日记 > 正文

切换apache的prefork和worker模式

Apache HTTP服务器被设计为一个强大的、灵活的能够在多种平台以及不同环境下工作的服务器。
不同的平台和不同的环境经常产生不同的需求,或是为了达到同样的最佳效果而采用不同的方法。
Apache凭借它的模块化设计很好的适应了大量不同的环境。
这一设计使得网站管理员能够在编译时和运行时凭借载入不同的模块来决定服务器的不同附加功能。

Apache2.0将这种模块化的设计延伸到了web服务器的基础功能上。
这个版本带有多路处理模块(MPM)的选择以处理网络端口绑定、
接受请求并指派子进程来处理这些请求。
比如,需要更好伸缩性的可以选择象worker或event这样线程化的MPM,
而需要更好的稳定性和兼容性以适应一些旧的软件可以用prefork 。

在Redhat Linux的主要版本as4上,apache版本为httpd-2.0.5x,
默认为prefork模式,主要是考虑到稳定性的原因。
要切换到worker模式,则需要登录到linux上,进行如下操作:

进入/usr/sbin目录
cd /usr/sbin

将当前的prefork模式启动文件改名
mv httpd httpd.prefork

将worker模式的启动文件改名
mv httpd.worker httpd

修改配置文件vi /etc/httpd/conf/httpd.conf
找到里边的如下一段,可适当修改负载等参数:
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>

重新启动服务
/etc/init.d/httpd restart

即可换成worker方式启动apache2

注意这里可能会遇到错误:

Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP. Pre-configuration failed!
解决方法是将/etc/httpd/conf.d/php.conf文件中的LoadModule开头的那行代码注释掉。
--------------------------

注意:处于稳定性和安全性考虑,不建议更换apache2的运行方式,使用系统默认prefork即可
另外很多php模块不能工作在worker模式下,例如redhat linux自带的php也不能支持线程安全
所以最好不要切换工作模式。
=========================================

# /etc/init.d/httpd stop
[root@web ~]# which apachectl
/usr/sbin/apachectl
[root@web ~]# which httpd
/usr/sbin/httpd
[root@web ~]# cd /usr/sbin/
[root@web ~]# mv httpd httpd.prefork
# mv httpd.worker httpd
# httpd -k start

相关文章:

使用adb devices命令无法识别夜神模拟器的解决方法

模拟器不喜欢原生态的&#xff0c;喜欢简单好用的&#xff0c;这里用的是夜神模拟器现象夜神模拟器启动成功&#xff0c;此时用adb devices命令查看&#xff0c;居然啥都不显示&#xff0c;也就是没识别出来分析很大可能是因为adb的版本不一致导致的&#xff0c;心中无数个草泥…

Apache的prefork模式和worker模式

prefork模式 这个多路处理模块(MPM)实现了一个非线程型的、预派生的web服务器&#xff0c;它的工作方式类似于Apache 1.3。它适合于没有线程安全库&#xff0c;需要避免线程兼容性问题的系统。它是要求将每个请求相互独立的情况下最好的MPM&#xff0c;这样若一个请求出现问题就…

AI 与小学生的做题之战,孰胜孰败?

现在小学生的数学题不能用简单来形容&#xff0c;有的时候家长拿到题也需要思考半天&#xff0c;看看是否有其他隐含的解题方法。市面上更是各种拍题搜答案的软件&#xff0c;也是一样的套路&#xff0c;隐含着各种氪金的信息。 就像网络上说的“不写作业母慈子孝&#xff0c;一…

AIDL方向指示

2019独角兽企业重金招聘Python工程师标准>>> AIDL使用简单的语法来定义接口, 该接口定义了可供客户端访问的方法和属性&#xff0c;并且描述其方法以及方法的参数和返回值。这些参数和返回值可以是任何类型&#xff0c;甚至是其他AIDL生成的接口。 其中对于Java编程…

Techshack Weekly 第 0002 期

Techshack Weekly 专注于后端技术阅读&#xff0c;目前有上百位订阅者&#xff0c;欢迎加入 Telegram Channel &#xff0c;或关注推特 techshackweekly&#xff0c;或订阅 RSS&#xff01; 点击查看本期 本期比较关注的几个领域有&#xff1a;TSDB, 系统设计&#xff0c;推荐的…

像数据分析一样写 Web 页面,这个 Python 库做到了!

作者|刘早起来源|早起Python提起用 Python 写一个 web 页面&#xff0c;总是会想起Django/Flask等这样的大家伙。他们确实好用&#xff0c;但就是流程繁琐&#xff0c;比如有时就想写一个简单的页面&#xff0c;比如问卷调查&#xff0c;拿 Django 来说吧总要经过安装、启动、配…

loadrunner 如何做关联

在页面中为了防止CRSF攻击&#xff0c;每次访问登录页面时&#xff0c;在浏览器器端生成一个token。 在提交时检验这个token是否有效&#xff0c;提交后token自动失效。 如果使用loadrunner来测试此系统话需要做一个关联&#xff0c;把这个token作为一个参数进行提交。 做关联有…

让你的数据离CPU更近一些

让你的数据离CPU更近一些 Jim Gray&#xff1a;RAM是硬盘,硬盘是磁带 永远只做自己最擅长的事情 不是所有的任务都需要同步执行

现在很火的答题赢钱游戏,让我来简单教你怎么做自动答题器

一、前言&#xff1a; 现在最火的直播游戏&#xff0c;那就是答题赢钱直播了&#xff0c;如百万英雄、芝士超人、花椒直播、冲顶大会等等&#xff0c;这些游戏的玩法都很简单&#xff0c;答对12题即可瓜分奖金了。玩法虽然简单&#xff0c;但是要能完全答对12题难度还是挺高的&…

OAuth认证协议原理分析及使用方法

twitter或豆瓣用户一定会发现&#xff0c;有时候&#xff0c;在别的网站&#xff0c;点登录后转到 twitter登录&#xff0c;之后转回原网站&#xff0c;你会发现你已经登录此网站了&#xff0c; 这种网站就是这个效果。其实这都是拜 OAuth所赐。 OAuth是什么&#xff1f; OAuth…

一次图文并茂的***完整测试二

任务&#xff1a;某公司授权你对其服务器进行******。对某核心服务器进行***测试&#xff0c;据了解目标机为Windows 2003 Server系统&#xff0c;ip地址为10.1.1.191&#xff0c;在C盘的根目录下存储有两个敏感文件这里就用&#xff08;key1.txt,key2.txt&#xff09;表示&…

神经网络学习到的是什么?(Python)

作者|泳鱼来源|算法进阶神经网络&#xff08;深度学习&#xff09;学习到的是什么&#xff1f;一个含糊的回答是&#xff0c;学习到的是数据的本质规律。但具体这本质规律究竟是什么呢&#xff1f;要回答这个问题&#xff0c;我们可以从神经网络的原理开始了解。一、 神经网络的…

Spring MVC原理

摘要: Spring MVC工作流程图springMVC工作流程图图一图二开发工具1.Eclipse IDE&#xff1a;采用Maven项目管理&#xff0c;模块化。2.代码生成&#xff1a;通过界面方式简单配置&#xff0c;自动生成相应代码&#xff0c;目前包括三种生成方式&#xff08;增删改查&#xff09…

linux下poll和epoll内核源代码剖析

作者&#xff1a;董昊 博客链接http://donghao.org/uii/ poll和epoll的使用应该不用再多说了。当fd很多时&#xff0c;使用epoll比poll效率更高。 我们通过内核源码分析来看看到底是为什么。 poll剖析poll系统调用&#xff1a;int poll(struct pollfd *fds, nfds_t nfds, int t…

百度副总裁马杰:实现元宇宙,技术要过三道坎

近来&#xff0c;元宇宙一词就像龙卷风瞬间席卷整个科技圈&#xff0c;一时间所有新概念层出不穷&#xff0c;无数科技公司蜂拥而至扎堆元宇宙。先是在线游戏创作平台Robolox把元宇宙写进招股书里&#xff0c;成为“元宇宙第一股”。后有扎克伯格宣布将Facebook更名为Meta&…

consolez设置

2019独角兽企业重金招聘Python工程师标准>>> 菜单”—>Edit—>Setting...—>Behavior—>选择“Copy on select” “菜单”—>Edit—>Setting...—>Mouse—>Paste text—>Right 最后一个重点说明的问题是Console2对中文的支持问题。默认情…

dstat用法;利用awk求dstat所有列每列的和;linux系统监控

安装&#xff1a;yum install -y dstatdstat命令是一个用来替换vmstat、iostat、netstat、nfsstat和ifstat这些命令的工具&#xff0c;是一个全能系统信息统计工具。与sysstat相比&#xff0c;dstat拥有一个彩色的界面&#xff0c;在手动观察性能状况时&#xff0c;数据比较显眼…

PHP内核介绍及扩展开发指南—基础知识

一、 基础知识 本章简要介绍一些Zend引擎的内部机制&#xff0c;这些知识和Extensions密切相关&#xff0c;同时也可以帮助我们写出更加高效的PHP代码。 1.1 PHP变量的存储 1.1.1 zval结构 Zend使用zval结构来存储PHP变量的值&#xff0c;该结构如下所示&#xff1a; type…

腾讯汤道生:数实融合成为行业“必答题”,腾讯未来打造四大引擎

11月3日&#xff0c;腾讯高级执行副总裁、云与智慧产业事业群CEO汤道生在2021腾讯数字生态大会上表示&#xff0c;“数实融合”正在从“选答题”&#xff0c;变成每个行业都要面对的“必答题”&#xff0c;腾讯未来将打造用户、技术、安全和生态四大引擎&#xff0c;助力各行各…

shell编程基础(2)---与||

shell 编程重要的应用就是管理系统&#xff0c;对于管理系统中成千上万的程序而言&#xff0c;查询某个文件名是否存在&#xff0c;并且获取该文件名所指代文件基本信息是系统管理员的基本任务。shell命令可以很轻松的完成这项任务。 #program this is a example for #########…

基于qml创建最简单的图像处理程序(1)-基于qml创建界面

《基于qml创建最简单的图像处理程序》系列课程及配套代码基于qml创建最简单的图像处理程序&#xff08;1&#xff09;-基于qml创建界面http://www.cnblogs.com/jsxyhelu/p/8343310.html课程1附件https://files.cnblogs.com/files/jsxyhelu/%E9%98%B6%E6%AE%B5%E4%BB%A3%E7%A0%8…

存储方式与介质对性能的影响

摘要 数据的存储方式对应用程序的整体性能有着极大的影响。对数据的存取&#xff0c;是顺利读写还是随机读写&#xff1f;将数据放磁盘上还将数据放flash卡上&#xff1f;多线程读写对性能影响&#xff1f;面对着多种数据存储方式&#xff0c;我们如何选择&#xff1f;本文给大…

struts配置文件没有标签提示

2019独角兽企业重金招聘Python工程师标准>>> struts配置文件没有标签提示 原因&#xff1a;" http://struts.apache.org/dtds/struts-2.0.dtd"是通过网络的形式帮你下载对应的dtd文件&#xff0c; 如果机器没有联网&#xff0c;就不会有提示 解决办法&…

iPhone 隐私新规下的“大地震”:四大平台损失近百亿美元,“连用户是男是女都分不清……”

整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 大家有这样的经历吗&#xff1f;前一秒刚在聊天软件上跟朋友分享了一款产品&#xff0c;下一秒就能在其他 App 中看到这款产品的广告推送&#xff0c;不了解内情的人说不定还会感慨一句&#xff1a;“…

Python 判断类型

类型判断&#xff1a;isinstance(obj, type) 方法 &#xff1a; isinstance(obj, type) print (isinstance(3, int)) # True print (isinstance(3, str)) # False print (isinstance(3, list)) # False print (isinstance([1,2,3], list)) …

php打印warning日志引发的core追查

内容 春节期间线上出了两个php-cgi的core&#xff0c;具体追查过程如下&#xff1a; 一、 Core信息 file core.xxx bug.php-cgi.3611.1296586902: ELF 64-bit LSB core file AMD x86-64, version 1 (SYSV), SVR4-style, from ‘php-cgi’ gdb ~/php5/bin/php-cgi core.xx…

BIZTALK项目中WEB引用WEBSERVICES服务时候报错

近期工作中须要完毕通过BIZTALK完毕调用WEBLOGIC公布的WebServices服务&#xff0c;环境搭建好后&#xff0c;打开VS开发工具新建一个BIZTALK项目&#xff0c;加入WEB引用将对方公布的地址拷贝上去&#xff0c;能够正常浏览到&#xff0c;然后点击加入引用button&#xff0c;这…

百度“知识增强的跨模态语义理解技术”获国家技术发明奖

11月3日&#xff0c;2020年度国家科学技术奖励大会在京举行&#xff0c;百度“知识增强的跨模态语义理解关键技术及应用”获国家技术发明二等奖。 该技术旨在通过构建大规模知识图谱&#xff0c;关联跨模态信息&#xff0c;通过知识增强的自然语言语义表示方法&#xff0c;解决…

Objective C浅拷贝和深拷贝

##浅拷贝 浅拷贝就是对内存地址的复制&#xff0c;让目标对象指针和源对象指向同一片内存空间。如&#xff1a; char* str (char*)malloc(100); char* str2 str; 复制代码浅拷贝只是对对象的简单拷贝&#xff0c;让几个对象共用一片内存&#xff0c;当内存销毁的时候&#xf…

我常用的那些linux命令

我常用的那些linux命令 用linux也有些年头了&#xff0c;说来也忏愧&#xff0c;说是有些年头了&#xff0c;其实也还是个不长进的主。记得第一次接触linux是boss跟我说的怎么操作&#xff0c;什么编辑模式&#xff0c;按i&#xff0c;a&#xff0c;o进入编辑模式。在一个黑乎乎…