INSERT DELAYED en MySQL

Bases de datos, PHP Sin comentarios »

Hace tiempo que programé un sistema para servir medios publicitarios online a diversas webs y blogs.  Si bien al principio no tuvimos problemas, hace semanas el tráfico del script que sirve la publicidad se ha visto cuadruplicado, llegando a las 5.000.000 de impresiones diarias, ésto dejó al servidor mysql al borde del colapso total con un 99% de uso de CPU.

¿Cómo lo solucioné?. Continuar leyendo »

Permitir que PHP (en apache) se conecte a bases de datos remotas con Selinux

Bases de datos, PHP, Programación, Seguridad, Unix Sin comentarios »

Uno de los problemas que más me han traido de cabeza últimamente ha sido al modificar unos scripts php para que se conecten a una bbdd en un servidor remoto en lugar de al localhost.

Una vez revisada la configuración del servidor remoto, firewall, permisos y la posibilidad de conectarse a la máquina remota desde nuestro servidor (mysql -u user -p -h host_remoto), los scripts simplemente eran incapaces de conectarse si se ejecutaban a través de apache, en cambio, si se ejecutan a través de CLI, funcionan correctamente.

La razón es que tenía instalado SELinux, el cual impide por defecto al apache conectarse a un servidor de bbdd remotas.

Para habilitarlo:

setsebool -P httpd_can_network_connect=1

Más información

¿Cansado de los Silk Icons?. Fugue Icons

Iconos Sin comentarios »

La librería de iconos gratuitos Silk Icons de FamFamFam está entre las más utiliazdas por los diseñadores. Muchas webs los utilizan, incluso varias de las consideradas grandes que probablemente podrian permitirse un diseño personalizado de iconos.

Como diseñador, es imposible tener el tiempo necesario para diseñar iconos personalizados para las webs que me encargan, por lo que he tenido que recurrir a los Silk Icons multitud de veces. El problema es que son tan comunes que restan originalidad a cualquier trabajo.

Navegando por ahí me he encontrado con una nueva librería (gratuita) de iconos que nos permite variar un poco nuestros diseños.

Fugue Icons (1000 iconos)

53 técnicas de CSS sin las que podrías vivir

Diseño web, Maquetación HTML y CSS Sin comentarios »

Conjunto de técnicas y trucos de CSS.

Link (En inglés)

Tripoli, conjunto de estilos CSS genéricos

Diseño web, General, Maquetación HTML y CSS Sin comentarios »

Tripoli es un estándar CSS genérico cross-browser, es similar un reseteador estándar, pero en éste caso, incluye estilos por defecto que dan un toque único a la web. Es un punto de partida ideal para diseñar una web.

Personaliza desde cabeceras hasta campos y formularios completos.

Web
Demo

Compresor de css online

Diseño web, Maquetación HTML y CSS Sin comentarios »

Utilísima aplicación online para comprimir nuestros css.

Link

Reseteador de estilos CSS

Diseño web, Maquetación HTML y CSS Sin comentarios »

Debido a las diferencias entre el renderizado de los distintos navegadores que hay en el mercado, es más que conveniente resetear los estilos css antes de ponernos a maquetar nada. Nos ahorrará muchos quebraderos de cabeza.

Continuar leyendo »

Utilizar diferentes plantillas de páginas en función de la carpeta, de un tag, o de un campo personalizado

Movable type Sin comentarios »

Solución aportada en el wiki de movable type

Here’s a solution to use a different page template based upon the “Folder” each page is in.

  1. Copy the contents of the Page archive template into a template module called “Default Page”.
  2. Create additional template modules for each page template as necessary: News Page, Industry Page, Product/Service Page etc. (assuming that the same page template is used for Product and Service pages in this example)
  3. Create a folder corresponding to each Page template: News, Industry, Products, Services, etc.
  4. Update the Page archive template to use the following code:
    <mt:setvarblock name="page_folder"><mt:PageFolder><$mt:FolderLabel$></mt:PageFolder></mt:setvarblock>
    <mt:if name="page_folder" eq="News">
       <$mt:include module="News Page"$>
    <mt:else name="page_folder" eq="Industry">
       <$mt:include module="Industry Page"$>
    <mt:else name="page_folder" like="(Products|Services)">
       <$mt:include module="Products/Services Page"$>
    <mt:else>
       <$mt:include module="Default Page"$>
    </mt:if>
  5. Publish and View

Continuar leyendo »

Monitorizando servidores en tiempo real con Bixdata Agent

Servidores, Shell, Unix Sin comentarios »

En determinadas ocasiones a todos nos gusta poder ver gráficos en tiempo real de nuestros servidores, para poder ver el uso de las cpus, uso de la red, discos duros, procesos, etc…, al estilo de cómo lo hacemos en nuestro pc con el administrador de tareas de windows, en lugar de tener que estar accediendo a la terminal y ejecutando múltiples comandos.

Hoy en día ésto es posible con Bixdata Agent, un pequeño servicio (gratuito) que se instala en el servidor (en este caso linux) y que nos permite conectarnos con una aplicación remota.

Lee mi guía de instalación y configuración despues del salto :)

Continuar leyendo »

Número de conexiones por ip a un puerto del servidor

Seguridad, Shell, Unix 3 comentarios »

En determinadas ocasiones necesitamos saber cuántas conexiones se están realizando a un deteminado puerto de nuestro servidor y qué ips están realizando el mayor número de conexiones, afortunadamente, mediante el comando netstat y una serie de pipes podemos obtener toda ésta información que nos puede resultar muy útil.

Continuar leyendo »

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Iniciar sesión