Introduksjon
Installasjon
Kjører bønnestengel
Konklusjon
Introduksjon
Beanstalkd er en arbeidskøserver som kjører tidkrevende oppgaver asynkront. Det kommer veldig godt med hvis du administrerer eller utvikler en applikasjon (nett, mobil osv.) som må utføre tidkrevende oppgaver (som å sende e-post), og du ikke vil at brukerne dine skal vente mens oppgaven kjører. Du kan sette oppgaver i kø med Beanstalkd og få applikasjonen til å gå videre til neste operasjon.
Beanstalk Console er et webadministrasjonsgrensesnitt for Beanstalkd som ble skrevet i PHP. Det gir et vennlig grensesnitt som du kan bruke til å se alle jobbene og deres nåværende tilstander (haster, klar, reservert, forsinket og begravet).
Installasjon
Spinn opp en Vultr-serverforekomst som kjører Ubuntu 14.10 x64 og SSH inn i serveren etter at den er ferdig klargjort.
Installer Beanstalkd.
sudo apt-get update
sudo apt-get install -y beanstalkd
Installer Beanstalk Console ved å bruke PHPs pakkebehandling, Composer.
sudo apt-get install -y php5 php5-cli
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
composer create-project ptrofimov/beanstalk_console -s dev /app/beanstalk-console
# Note that "/app/beanstalk-console" can be any directory you choose
Kjører bønnestengel
Pass på at Beanstalkd kjører.
sudo service beanstalkd start
Start Beanstalk Console ved å gå til katalogen der den ble installert og starte en PHP-serverforekomst.
cd /app/beanstalk-console
php -S [vultr-instance-ip]:7654 -t public
# *where **[vultr-instance-ip]** is the IP address of the Vultr instance you spun up or a domain name pointing to it*
Naviger til http://[vultr-instance-ip]:7654. Du vil bli møtt med et "Hei!" skjerm som inneholder en "Legg til server"-knapp. Klikk på knappen og godta standardinnstillingene (localhost:11300).
En ting å merke seg her er at du ikke trenger å bruke PHP med Beanstalk. Bønnestengel er teknologiagnostiker. Det er også to sider av en kø - å legge til jobber og fjerne jobber. Fjerning av jobber gjøres vanligvis av det vi omtaler som en "arbeiderprosess". Hvis teknologistabelen din bruker PHP, kan du bruke Pheanstalk til å utføre begge oppgavene.
Konklusjon
En køserver som kan kjøre jobber i bakgrunnen asynkront er et must med tanke på at brukere forventer at ting skal skje umiddelbart med applikasjonen din. Beanstalkd er en velprøvd arbeidskøserver som kan redusere forsinkelsesproblemer med applikasjonene dine, og dermed få brukerne til å få rikere opplevelser.