第七十六章 Apache 注意事项 (UNIX® Linux macOS)

2024-05-10 09:52

本文主要是介绍第七十六章 Apache 注意事项 (UNIX® Linux macOS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 第七十六章 Apache 注意事项 (UNIX® Linux macOS)
  • `Apache` 流程管理和容量规划
  • 安全
  • `Apache MPM` 和 `Web Gateway DSO`
  • 最大服务器连接数

第七十六章 Apache 注意事项 (UNIX® Linux macOS)

本页包含有关 UNIX®LinuxmacOS 的推荐选项(推荐选项:NSAPI 模块 (CSPn3.so))和非典型选项 1(替代选项 1:带有 NSDApache API 模块 (mod_csp24.so))的信息。

Apache 流程管理和容量规划

ApacheUNIX® 操作系统提供了三个进程管理模块。在此架构中 Web Gateway 模块直接绑定到 Apache 工作进程。因此,Apache 管理其进程池的配置方式对 Web Gateway 有直接影响。

Apache 将其每个进程管理模型实现为多处理模块 (MPM)。

Prefork MPM 是传统的多进程 (UNIX®) 服务器架构。它不使用线程,因此不要求第三方 API 模块 (DSO) 应该是线程安全的。参考:http://httpd.apache.org/docs/current/mod/prefork.html

Worker MPM 是较新的混合多线程/多进程服务器架构。它确实使用线程,并且使用的所有第三方 API 模块 (DSO) 都应该是线程安全的。参考:http://httpd.apache.org/docs/current/mod/worker.html

Event MPM 旨在通过将一些处理工作传递给侦听器线程来允许同时处理更多请求,从而释放工作线程来处理新请求。参考:http://httpd.apache.org/docs/current/mod/event.html

为了确定现有安装使用的是哪种服务器型号,请直接调用 Apache 可执行文件,但限定如下:

httpd -V 

提供了另外两个相关列表:

  • httpd –l 列出服务器内置的所有模块
  • httpd –L 列出所有模块和相关配置指令

Web Gateway DSO 是线程安全的,可以部署在任何服务器模型中。可以在此处找到 Apache 调整的有用指南:http://httpd.apache.org/docs/current/misc/perf-tuning.html

安全

所有三种服务器体系结构的父进程通常从分配了超级用户权限的帐户(UNIX® 下的 root)启动,以便绑定到 TCP 端口 80Apache 启动的子进程作为权限较低的用户运行。用户和组指令(在 Apache 配置中)用于设置 Apache 子进程的权限。子进程必须能够读取它们负责提供的所有内容(并对 Web Gateway 的配置和事件日志文件具有读/写访问权限),但除此之外,还应授予尽可能少的权限。请参阅 Apache 文档以获取更多信息。

Apache MPMWeb Gateway DSO

Web Gateway 动态链接模块 (DSO) 是线程安全的,可以部署在任何服务器模型中。

对于所有多处理模块 (MPM),StartServers 指令指定要启动的子(工作)进程的数量。该指令还指示可以存在的 Web Gateway DSO 实例的数量,例如每个 Apache 子进程一个。

所有 MPM 都涉及将负载分散到多个子(工作)进程上。

尽管每个 Gateway 实例都是由每个 Apache 子进程独立加载的,但运行配置、连接表和表单缓存都保存在共享内存扇区中。 Web Gateway 系统状态表单的内容在每次刷新时保持不变(当然,由于活动更新而发生的更改除外)。显示的连接表(和连接号)对于整个 Apache 实例是通用的,因此,还包括一个附加列,该列指示与每个 IRIS 连接关联的 Web 服务器进程 ID

最大服务器连接数

虽然 Web Gateway 负载分布在多个 Web 服务器进程上,但“最大服务器连接数”配置参数对 Web Gateway 可以与特定 InterSystems IRIS 服务器建立的连接数设置单一总体限制。这意味着托管 Web 服务器启动的工作进程数不会影响 Web Gateway 可以创建的最大连接数。最大值也不受建立连接的进程类型和使用的 MPM 的影响。 (此模型代表了对以前版本的更改,其中“最大服务器连接数”参数基于每个进程进行影响,并充当受多个因素影响的一般限制。)

对于大多数 Apache 工作负载由 文件类型组成的安装,最好不要为 Web Gateway 的最大服务器连接指令分配值,并控制可以完成的并发工作量(并且隐含地控制可完成的并发工作量)。连接到 IRIS)以及相应的 Apache 配置参数。然而,在 文件类型仅代表整个 Apache 安装的部分工作负载的安装中,为 Web Gateway 的最大服务器连接指令设置独立值是有意义的。

这篇关于第七十六章 Apache 注意事项 (UNIX® Linux macOS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/976109

相关文章

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

Debezium 与 Apache Kafka 的集成方式步骤详解

《Debezium与ApacheKafka的集成方式步骤详解》本文详细介绍了如何将Debezium与ApacheKafka集成,包括集成概述、步骤、注意事项等,通过KafkaConnect,D... 目录一、集成概述二、集成步骤1. 准备 Kafka 环境2. 配置 Kafka Connect3. 安装 D

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

linux进程D状态的解决思路分享

《linux进程D状态的解决思路分享》在Linux系统中,进程在内核模式下等待I/O完成时会进入不间断睡眠状态(D状态),这种状态下,进程无法通过普通方式被杀死,本文通过实验模拟了这种状态,并分析了如... 目录1. 问题描述2. 问题分析3. 实验模拟3.1 使用losetup创建一个卷作为pv的磁盘3.

Linux环境变量&&进程地址空间详解

《Linux环境变量&&进程地址空间详解》本文介绍了Linux环境变量、命令行参数、进程地址空间以及Linux内核进程调度队列的相关知识,环境变量是系统运行环境的参数,命令行参数用于传递给程序的参数,... 目录一、初步认识环境变量1.1常见的环境变量1.2环境变量的基本概念二、命令行参数2.1通过命令编程

Linux之进程状态&&进程优先级详解

《Linux之进程状态&&进程优先级详解》文章介绍了操作系统中进程的状态,包括运行状态、阻塞状态和挂起状态,并详细解释了Linux下进程的具体状态及其管理,此外,文章还讨论了进程的优先级、查看和修改进... 目录一、操作系统的进程状态1.1运行状态1.2阻塞状态1.3挂起二、linux下具体的状态三、进程的

Linux编译器--gcc/g++使用方式

《Linux编译器--gcc/g++使用方式》文章主要介绍了C/C++程序的编译过程,包括预编译、编译、汇编和链接四个阶段,并详细解释了每个阶段的作用和具体操作,同时,还介绍了调试和发布版本的概念... 目录一、预编译指令1.1预处理功能1.2指令1.3问题扩展二、编译(生成汇编)三、汇编(生成二进制机器语