PHP jobs with Gearman and Supervisor

The problem

Often in a PHP project there could be operations that need to be executed asynchronously. Some example are: processing mail queues, indexing data, computation that requires long elaboration time.

A common behavior is handle those operations by using cron to execute processes in background. However, using cron requires expedients to avoid cross executions and forces us to implement some specific procedures and mechanism to store data needed to elaborate.

Solution: Gearman + Supervisor

The solution that involves Gearman and Supervisor, instead, don’t require any kind of data storage mechanism and supply a very simple way to develop processes in PHP.

Continue Reading

Processi PHP con Gearman e Supervisor

Problema

Spesso in un progetto PHP capita di dover eseguire operazioni in modo asincrono. Alcuni esempi sono: lavorazione di code email, indicizzazione di dati, calcoli che richiedono lunghi tempi di elaborazione.

Prassi comune è gestire tali operazioni utilizzando cron per eseguire processi in backgroud. Tuttavia, utilizzare cron richiede espedienti per evitare l’accavallemento delle esecuzioni e ci costringe ad implementare procedure specifiche e meccanismi di stoccaggio dei dati necessari per l’elaborazione.

Soluzione: Gearman + Supervisor

La soluzione che concerne Gearman e Supervisor, invece, non richiede alcun meccanismo di data storage e fornisce un modo molto semplice per sviluppare processi in PHP.

Continue Reading

How to install Funambol 10 on Debian Wheezy

In this post we will cover how to install Funambol 10.0.3 on Debian Wheezy server.

First of all, we need to install Java jdk on server:

$ apt-get install default-jdk

Then, let’s create a folder to download and uncompress Funambol (at the moment, at version 10.0.3):

$ mkdir -p /opt/Funambol
$ cd /opt/Funambol
$ wget -c http://downloads.sourceforge.net/project/funambol/bundle/v10/funambol-10.0.3-x64.bin
$ chmod +x funambol-10.0.3-x64.bin
$ ./funambol-10.0.3-x64.bin

Now, we need a specific user to make Funambol run. So let’s create a group called funambol and a user also called funambol with /opt/Funambol as home folder:

Continue Reading

Come installare Funambol 10 su Debian Wheezy

In questo articolo vedremo come installare Funambol 10.0.3 su un server Debian Wheezy.

Innanzitutto, dobbiamo installare sul server il Java jdk:

$ apt-get install default-jdk

In seguito, creiamo una cartella in cui scaricare e decomprimere Funambol (al momento, alla versione 10.0.3):

$ mkdir -p /opt/Funambol
$ cd /opt/Funambol
$ wget -c http://downloads.sourceforge.net/project/funambol/bundle/v10/funambol-10.0.3-x64.bin
$ chmod +x funambol-10.0.3-x64.bin
$ ./funambol-10.0.3-x64.bin

Ora, abbiamo bisogno di un utente specifico per far girare Funambol. Così, creiamo un gruppo chiamato funambol ed anche un utente chiamato funambol con /opt/Funambol come cartella home:

Continue Reading