Como he comentado en otro post Memcache es una cache en memoria ram, al contrario que la mayoria de los tipos de cache que son mediante ficheros físicos en disco duro. Se puede almacenar fragmentos arbitrarios de datos, ya sean un cadena, un array, un objeto un trozo de html o una página entera. Tengo un código que he encontrado buscando memcached tool y está muy bien para visualizar las diferentes secciones de espacio que asigna el servicio de memcache y la cantidad de elementos que hay cacheados en ram. vi /home/mi_usuario/memcached-tool Pegar el siguiente código #!/usr/bin/perl # # memcached-tool: # stats/management tool for memcached. # # Author: # Brad Fitzpatrick <brad@danga.com> # # License: # public domain. I give up all rights to this # tool. modify and copy at will. # use strict; use IO::Socket::INET; my $host = shift; my $mode = shift || "display"; my ($from, $to); if ($mode eq "display") { undef $mode if @ARGV; } elsif ($mode eq "move") { $from = shift; $to = shift; undef $mode if $from < 6 || $from > 17; undef $mode if $to < 6 || $to > 17; print STDERR "ERROR: parameters out of range\n\n" unless $mode; [...]
Siguiendo la optimización del servidor comentada en otros post, por ejemplo el de: Configurando y Optimizando un servidor. my.cnf voy a explicar y añadir una configuración que he ido mejorado. Adicionalmente incluyo los parámetros necesarios para arrancar el mysql en utf8. Para ver la configuración con la que arranca, se conecta y devuelve los datos el mysql tendréis que ejecutar la siguiente query : show variables like ‘%character%’; La cual os tiene que devolver los datos de la configuración de las variables de codificación, y os tiene que dar algo parecido a lo siguiente: | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | | collation_connection | utf8_general_ci | | collation_database | utf8_general_ci | | collation_server | utf8_general_ci | La siguiente configuración es la que he llegado a optimizar para un servidor CentOS con un procesador Quad Core de 8 núcleos y 4BG de ram. No digo que sea la mejor, pero a mi me está funcionando y el rendimiento es bueno. OJO!! arrancar el servidor mysql en utf8 sin [...]
Si queréis hacer un shell script automático para que genere backups de la base de datos de vuestros proyectos, voy a indicar un script que funciona mediante un crontab y el comando mysqldump y que a mi me ha dado muy buenos resultados. Lo he probado en un servidor CentOS y freeBSD, a lo mejor tendréis que cambiar los path de los archivos binarios. Voy a explicar la idea de este script backup, básicamente se genera cada día mediante un crontab o cronjob, y se guarda con el nombre del día actual en inglés, imaginemos que hoy es lunes, pues monday. El backup de la base de datos se sacaría con el comando mysqldump, y nos resultaría un archivo llamado BackupMonday.sql.gz Previamente el script borra lo que haya con nombre BackupMonday.sql.gz de manera que sobrescribe lo que se haya generado en la base de datos de la semana anterior. Por último aplicamos permisos 777 o 755 para que la próxima vez que se genere el script se pueda borrar el archivo BackupMonday.sql.gz De esta manera tendríamos un backup semanal de nuestra base de datos y automáticamente se iría sobrescribiendo para que siempre estuviera actualizado. El siguiente fragmento es un shell [...]
Comando en unix bastante util para contar todos los archivos existentes en un directorio en linux ls | wc -l ls -> muestra un listado de todos los archivos y directorios dentro de otro directorio combinado con wc -> “wordcount” el parámetro -l es para contar las lineas que hay nos muestra el total de archivos que se ha generado al hacer el ls, el listado de todo el directorio en cuestión. Para tener en cuenta también los archivos ocultos, habrá que pasar el parámetro -1 al comando ls ls -1| wc -l
La sintaxis del comando de búsqueda y reemplazo es la siguiente: :<desde>,<hasta>s/<buscar>/<reemplazar>/g <desde>, <hasta> indican líneas en el archivo; <buscar> y <reemplazar> son cadenas de caracteres o expresiones regulares; / es un separador, s (sustituir) y g (global) son letras de comando para el manejo de expresiones regulares. Global es que lo busca y reemplaza en todo el fichero. :1,$s/nick/nick=/g cambia nick por nick= en todo el archivo. o bien :%s/nick/nick=/g Otro ejemplo: :.,5s/ayuda/&ndo/g cambia ayuda por ayudando desde línea actual hasta la 5.