Publi

  • Trasteando con juguetes nuevos. Primeros pasos con el ESP8266

    ESP8266
    Esta pequeña placa de apenas 24x14mm contiene un microcontrolador y chip WiFi a/b/g (esas de 2.4GHz) y una memoria. Además de algunos leds, una antena y un oscilador. Cuesta muy poco dinero (apenas unos 3€ comprándolo en algunas tiendas de España y mucho menos si se compra directamente a China). Y encima consume muy poco, alrededor de 0.5W a pleno rendimiento y muchísimo menos en alguno de sus modos de sueño y bajo consumo.… Leer artículo completo

  • ¿Qué son y cómo utilizar direcciones IP flotantes en DigitalOcean? [Vídeo]

    Un problema que teníamos los que utilizamos los servicios de Digital Ocean es que cuando paras una máquina para realizar una actualización, la dirección IP de la misma es inaccesible y dejas a todos tus visitantes en la estacada y mi humilde blog sin visitas ni nada que le diga a mis visitantes que sigo vivo.

    Al menos sucedía así hasta hace un tiempo, cuando lanzaron las IP flotantes o Floating IPs.… Leer artículo completo

  • Balanceo de carga con Amazon Web Services Elastic Load Balancer. Ejemplos, consejos y trucos.

    AmazonWebservices_Logo.svg
    Cuando montamos un servidor web y los servicios que proporcionamos se hacen mayores (mayor cantidad de usuarios accede a ellos), inevitablemente debemos seguir una maniobra de escalado para dichos servicios. Tenemos muchas opciones, podemos tener servidores dedicados, o como primer paso utilizar servidores VPS como pueden ser DigitalOcean o Amazon AWS. En DigitalOcean, como muchos otros, tendrás que montarte tú todo, es decir, montar tu servidor e instalar HAProxy, Nginx, Apache (o el que quieras) en modo balanceador de carga, de modo que cada petición que entre será desviada a algún nodo web que tengamos conectado.… Leer artículo completo

  • ¿Cómo funcionan los WebSockets? Comunicación bidireccional en tiempo real con el navegador web

    photo-1434396505260-9ec0d6491795

    Internet poco a poco va haciéndose más y más grande. A medida que crecen sus usuarios y dispositivos conectados lo hacen las necesidades de los mismos, y de los servicios que ofrece. Hoy vamos a meternos con los WebSockets. Este sistema se utiliza para hacer una comunicación bidireccional y persistente entre un cliente y un servidor web. Pero, ¿para qué queremos esto?

    Un poco de background

    Para realizar una comunicación entre un cliente web (navegador) y un servidor web (cualquier programa que sea capaz de enviar información coherente a un navegador) se utiliza el protocolo HTTP (por debajo utiliza TCP/IP y muchas más cosas, pero no profundizaremos tanto).… Leer artículo completo

  • Vicio con el teclado, comandos, manías y coletillas que nos salen sin pensar

    photo-1445605081472-9788fb3bc02f

    Como apasionado de la consola, soy una de esas personas que tarda menos en escribir un comando y pulsar enter que en cargar una interfaz gráfica, click, click, control, clic, arrastrar, soltar, click… y el tiempo es muy valioso.
    Eso sí, cuando empiezas a pegarle al teclado y escribir comandos en la terminal, parece que todo va más lento, una simple coma, o un espacio es capaz de fastidiarlo todo, pero cuando llevas mucho tiempo, lo tienes todo tan automatizado que te sale el alma.… Leer artículo completo

  • Obtener la IP y sólo la IP de un dispositivo de red en nuestros scripts

    photo-1414495984329-50d61ce35d7e_r

    Cuando estamos haciendo un script, en ocasiones necesitamos la información muy masticada, para pasarla como parámetro a otro programa, para realizar operaciones con un dato en concreto, para introducirlo en una condición, etc.

    Este es el caso de la IP de un dispositivo de red (la privada), o puede que la pública, depende de si tenemos conexión directa o no.

    ¿Par qué nos puede interesar?

    Para compartir nuestra dirección con otros dispositivos de nuestra red, por ejemplo.… Leer artículo completo

  • 20 Cosas chulas que se pueden hacer en una terminal de GNU/Linux

    Un poco como continuación de un post de hace casi 2 años, en el que comentaba ejemplos de cosas que se pueden hacer con Bash en una o dos líneas de código.

    Ahora quiero hacer cosas un poco más complejas (y alguna que otra sencilla, pero curiosa), en una nueva sección de códigos para copiar y pegar en vuestros terminales:

    Servidores

    Montar un servidor FTP rápido

    Ésta es una solución para un apaño, para el caso en que necesitemos activar un servidor FTP para pasar un fichero a alguien, o para que nos pasen algún fichero… o por ejemplo por si queremos instalar un plugin en WordPress rápidamente y somos unos paranoicos de la seguridad (y por tanto no queremos dejar un servidor FTP corriendo siempre).… Leer artículo completo

  • 21 Consultas SQL para administrar fácilmente nuestro WordPress

    Muchas veces cuando trabajamos con WordPress hacemos uso directamente de algún plugin, dentro de la infinidad de ellos que tenemos disponible, lo cual está muy bien pero a veces nos despegamos un poco de los orígenes. MySQL está hecho para usar MySQL (o MariaDB), hace consultas como todos los demás y ¡podemos aprovecharnos de ello! (e ir mucho más rápido).

    Antes de nada, he supuesto que el prefijo de las tablas es el que viene por defecto: “wp_“, si no es así, cámbialo por el que tengas.… Leer artículo completo

  • Redirigir una web a otra URL dependiendo de la IP que conecte [Apache]

    La necesidad surge en un primer momento cuando, desde diferentes lugares se está desarrollando un sitio web. En ocasiones disponemos de un test.minuevositioweb.com (por ejemplo), pero hay veces que la migración puede resultar difícil, o lenta, dependiendo de nuestras posibilidades; y queremos tener el sitio operativo en la dirección web definitiva tanto para nosotros como para nuestros clientes (que a veces quieren ver cómo va el tema).

    Para esto, podemos optar por varias soluciones, por ejemplo modificando la programación del sitio web para detectar la dirección IP del usuario y, si esta no está permitida nos redirigir la conexión a otro lugar.… Leer artículo completo

  • Cliente TCP no bloqueante en C, en el que podemos enviar y recibir en cualquier momento

    Hace tiempo veíamos un artículo de un servidor que fuera capaz de aceptar múltiples conexiones, ahora, toca le toca el turno a la implementación del cliente.

    En principio, vamos a implementar un cliente sencillo, en el que conectaremos a un servidor y nos permitirá enviar texto que escribamos por teclado. No podremos recibir nada del servidor, pero nos servirá como primera aproximación:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <netdb.h>
    #include <arpa/inet.h>
    #include <errno.h>
    #include <unistd.h>

    #define MENS_MAX_LEN 500

    void usage()
    {
      fprintf (stderr, "Wrong arguments.
    Leer artículo completo