我最近切换到PHP的FastCGI设置(Apache2-worker和mod_fcgid )。 但是,当一个PHP脚本非常繁忙时,似乎会阻止所有其他PHP请求。 我的configuration有什么问题? 我使用mod_fcgid主要原因是保持PHP内存使用情况受到控制。 使用mod_php ,所有单独的Apache分支在服务PHP之后将在内存中增长。 我也切换到apache2-worker模型,因为所有线程不安全的PHP代码都存在于Apache之外。 我的FastCGI脚本如下所示: #!/bin/sh #export PHPRC=/etc/php/fastcgi/ export PHP_FCGI_CHILDREN=5 export PHP_FCGI_MAX_REQUESTS=5000 global_root=/srv/www/vhosts.d/ exec /usr/bin/php-cgi5 \ -d open_basedir=$global_root:/tmp:/usr/share/php5:/var/lib/php5 \ -d disable_functions="exec,shell_exec,system" 我的Apacheconfiguration如下所示: <IfModule fcgid_module> FcgidIPCDir /var/lib/apache2/fcgid/ FcgidProcessTableFile /var/lib/apache2/fcgid/shm FcgidMaxProcessesPerClass 1 FcgidInitialEnv RAILS_ENV production FcgidIOTimeout 600 AddHandler fcgid-script .fcgi FcgidConnectTimeout 20 MaxRequestLen 16777216 <FilesMatch "\.php$"> AddHandler fcgid-script .php Options +ExecCGI FcgidWrapper /srv/www/cgi-bin/php5-wrapper.sh […]
我正在转换现有的邮件服务器,以支持我们的客户端encryption的SMTP,但我已经跑进了这个砖墙,用很less有用的日志数据来帮助我转发。 当使用普通的未encryption的SMTP时,一切工作正常; 只有在尝试使用encryption的SMTP时才会变成梨形。 我的eximconfiguration文件包含以下内容: # Allow any client to use TLS tls_advertise_hosts = * # Specify the location of the Exim server's TLS certificate and private key. tls_certificate = /etc/exim/exim.crt tls_privatekey = /etc/exim/exim.key 最初,Exim 似乎按预期工作,我能够安全地连接到邮件服务器并进行身份validation,但是在SMTP会话中input收件人部分之后,连接就会被删除。 使用未encryption的连接时不会发生此问题。 要testing安全SMTP我使用以下命令: openssl s_client -starttls smtp -crlf -connect localhost:25 这是我得到的输出: CONNECTED(00000003) depth=0 C = ZA, etc, etc verify error:num=18:self signed […]
我最近试过运行一些基准testing,我想在Windows上检查一些东西,并发现在同一台机器上的基本HTTP Web服务器与Linux和Windows之间有巨大的性能差异。 我testing了几个Web服务器IIS,Apache2,Lighttpd与不同的客户端Apache的AB和我自己的客户端,结果是相同的(请求每秒)ID显示一个简单的HTML网页(默认的Web服务器页面)尺寸: IIS 7.5 Apache 2.2 Lighttpd Windows 750 800 – Linux – 9,300 22,000 我试图在Windows上禁用反病毒,但结果并没有改变。 我不明白一件事,如何在相同的硬件(i5的2.4GHz的4G)的Web服务器在最琐碎的任务不能处理相同的负载。 即使你是“亲Linux”,我仍然无法得到它是如何不同,两个64位最新的操作系统(Linux 2.6.35和Windows 7),但差距在一个数量级。 环境: 操作系统Windows 7 64位亲。 Linux的Ubuntu 2.6.35 硬件i5 2.4 GHz,4GB内存 IIS 7.5,Apache 2.2 客户ab: 称为ab -c 5 -n 10000 http://127.0.0.1/ 题: 我可以错过什么,所以我得到巨大的差异? 在您投票结束之前: 注意这是一个真正的问题,因为我正在寻找可能影响如此巨大(数量级)的性能差异的可能因素,因为我无法相信Windows可以performance得如此糟糕。 任何人?
Ubuntu附带基于RealVNC的vnc4server。 TigerVNC基于基于RealVNC的TightVNC。 有谁知道function明智之间vnc4server和TigerVNC有什么不同?
在Linux工作站上使用SSD的最佳做法是什么? 具体来说,我感兴趣的是: 什么坐骑我应该把SSD和我应该保持在我的硬盘 我应该使用什么文件系统来保存SSD 是否可以在文件系统和SSD之间使用LVM 我需要做些什么才能让TRIM这样的东西起作用(以及它是否重要) 现在,我的坐骑是/ 20G,200M /boot ,15G for /home ,5G for /srv ,5G for /tmp ,以及10G for /var 。 一切都使用标准LVM的ext3,并且文件系统和磁盘上都有大量的可用空间(500G硬盘和64G SSD)。我拥有“足够”的RAM,所以我不需要交换; OTOH,我总是可以增加swappiness来交换更多,并为页面caching使用更多的RAM。 几乎所有有关设置是可变的; 我不需要做任何我活着的事情。 (不过,能够在晚些时候生活的话会更好。) 另外,如果有什么我忘记考虑,请告诉我。 🙂
ionice手册页说 以闲置优先级运行的程序只有在没有其他程序在限定的宽限期内请求磁盘io时才会获得磁盘时间。 这个“宽限期”在哪里定义? 它是可见/可调的(也许通过/ sys)?
我在安装libmemcached的时候得到了这个 root@server [/libmemcached]# make make all-am make[1]: Entering directory `/libmemcached' if /bin/sh ./libtool –tag=CXX –mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -ggdb -DBUILDING_HASHKIT -MT libhashkit/libhashkit_libhashkit_la-aes.lo -MD -MP -MF "libhashkit/.deps/libhashkit_libhashkit_la-aes.Tpo" -c -o libhashkit/libhashkit_libhashkit_la-aes.lo `test -f 'libhashkit/aes.cc' || echo './'`libhashkit/aes.cc; \ then mv -f "libhashkit/.deps/libhashkit_libhashkit_la-aes.Tpo" "libhashkit/.deps/libhashkit_libhashkit_la-aes.Plo"; else rm -f "libhashkit/.deps/libhashkit_libhashkit_la-aes.Tpo"; exit 1; fi ./libtool: line 866: […]
我已经使用数据库身份validation在一台Ubuntu服务器上安装了squid代理。 然而,虽然连接到代理,如果我访问http://www.whatismyip.com/它仍然显示我的实际IP地址。 我怎样才能configurationSquid隐藏我的IP,并隐藏它使用鱿鱼的事实。
我正在尝试创build两个都连接到同一个专用networking的虚拟机。 我用qemu-kvm 1.0使用Linux。 我的攻击计划是这样的: brctl addbr桥 ifconfig桥接起来 tunctl -t tap1 tunctl -t tap2 ifconfig tap1向上 ifconfig tap2 up brctl addif bridge tap1 brctl addif bridge tap2 qemu-kvm -net nic,macaddr = 52:54:00:11:22:33 -net tap,ifname = tap1 disk1.img qemu-kvm -net nic,macaddr = 52:54:00:44:55:66 -net tap,ifname = tap2 disk2.img 一旦启动,我给第一台机器的IP地址192.168.100.5,第二个192.168.100.10。 此时,当我尝试从另一个虚拟机中ping一个虚拟机时,没有ping响应。 但是,使用Wireshark,我发现ARP请求被发送和响应,并validation了ARPcaching包含其他VM上的信息。 然而,没有ping应答产生(通过Wireshark看到)。 接下来,我试着给这个网桥一个IP地址192.168.100.1。 这样做后,虚拟机之间ping,但仍然有一个问题:现在所有请求似乎来自桥本身。 例如,如果我从一个虚拟机连接到另一个虚拟机的FTP服务器上,在虚拟机上使用FTP服务器运行netstat会显示192.168.100.1是源虚拟机。 连接的工作方式与穿越NAT一样,但与NAT一样,源地址不是始发机器的源地址。 我试着用net.ipv4.ip_forward打开和closures,并用相同的结果来伪装(iptables […]
我正在使用一个需要与远程串行(rs-232)设备进行通信的linux应用程序。 我已经制定了如何在远程端使用socat来通过IP连接发送设备的串行数据,但是如何将该IPstream转换回(伪)串行设备字符设备(例如/ dev / fakesocatserial0)另一方面?