Instalējiet Plesk operētājsistēmā CentOS 7
Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes
Beanstalk ir ātra un vienkārša darba rinda. Tas ļauj asinhroni veikt laikietilpīgus uzdevumus, piemēram, sūtīt e-pastus, izveidot savienojumu ar ārējiem API vai apstrādāt attēlus. To darot, jūs samazināsiet tīmekļa lietotnes latentumu. Laravel nodrošina gatavu atbalstu beanstalkd
.
Šajā apmācībā mēs instalēsim beanstalkd
, iestatīsim demonstrācijas Laravel lietojumprogrammu un pārvaldīsim rindas darbiniekus, izmantojot Supervisor . Demonstrācijas lietojumprogramma saņems pieejamo operētājsistēmu sarakstu no Vultr API un nejauši izvēlēsies vienu.
Tiek pieņemts, ka jūsu sistēmā jau ir instalēts Supervisor. Ja tā nav, izlasiet šo apmācību par Supervisor iestatīšanu: Supervisor instalēšana un konfigurēšana Ubuntu 16.04.
Tiek arī pieņemts, ka jums ir SSH piekļuve savai Vultr instancei.
Pirmais solis, kas jāveic, ir instalēšana beanstalkd
.
sudo apt-get update
sudo apt-get install beanstalkd
Sāciet pakalpojumu.
sudo systemctl start beanstalkd
Varat arī iespējot pakalpojuma palaišanu pēc sistēmas inicializācijas.
sudo systemctl enable beanstalkd
Pārbaudiet pakalpojuma statusu, izdodot šādu komandu.
sudo systemctl status beanstalkd
Pēc noklusējuma beanstalkd
klausās portā 11300
. Beanstalk izmanto vienkāršu teksta protokolu, kas aprakstīts tā github repozitorijā . Varat pārbaudīt tā protokolu, palaižot telnet
.
telnet localhost 11300
Uzrakstiet sekojošo un nospiediet ENTER.
list-tubes
Jums vajadzētu redzēt serverī pieejamo cauruļu sarakstu:
OK 14
---
- default
Lai aizvērtu savienojumu, vienkārši ierakstiet quit
un pēc tam nospiediet ENTER.
Caurules Beanstalk apzīmē darba rindas. Pupiņu kātiņu pamatā veido ražotāji , patērētāji , darba vietas un caurules . Ražotāji ievieto darba vietas caurulē, ko patērē (apstrādā) jebkurš patērētāju skaits. Ņemiet vērā, ka gan ražotāji, gan patērētāji ir vienkārši Beanstalk servera klienti un ir pilnīgi neatkarīgi viens no otra. Praktiski tas nozīmē, ka, izmantojot Beanstalk, jūs varat izveidot savus darbus savā PHP lietojumprogrammā un apstrādāt tos, piemēram, NodeJS lietotnē. Par laimi, Laravel to visu abstrahē un nodrošina mums ļoti vienkāršu API, lai nosūtītu un apstrādātu darbus, kā mēs redzēsim tālāk.
Lai izveidotu mūsu paraugprojektu, mums vispirms ir jāinstalē tā atkarības. Mēs gatavojamies instalēt PHP un Composer.
sudo apt-get install php php-mbstring php-xml php-common php-zip composer
Tagad izveidojiet projektu, pamatojoties uz Laravel 5.5.
composer create-project --prefer-dist laravel/laravel vultr "5.5.*"
Tālāk cd
nesen izveidotajā mapē. No šī brīža mēs strādāsim šajā direktorijā. Šo mapi vēlāk var saukt par PROJECT_ROOT
.
cd vultr/
Lai lietotu Beanstalk programmā Laravel, mums ir jāinstalē vēl viena atkarība, PHP Beanstalk klients.
composer require pda/pheanstalk ~3.0
Mums ir arī jāizveido Darba pārstāvniecība. Programmā Laravel šī ir klase app/Jobs
mapē. Laravel ir konsoles komanda, kas palīdz mums izveidot darba klasi. Izveidosim mūsu darba paraugu.
php artisan make:job FindFavoriteOS
Atjauniniet app/Jobs/FindFavoriteOS.php
failu uz tālāk norādīto.
<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Support\Facades\Log;
class FindFavoriteOS implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct()
{
//
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$rawData = file_get_contents('https://api.vultr.com/v1/os/list');
$list = json_decode($rawData, true);
shuffle($list);
$key = array_rand($list);
$favorite = $list[$key];
Log::info('My Favorite OS is: ' . $favorite['name']);
}
}
Roktura metode ir tā, kas tiks efektīvi izpildīta, kad darbs tiks patērēts. Šeit mēs iegūstam datus no Vultr API, nejauši izvēlamies OS un ierakstām izvēlēto OS žurnāla failā. Žurnāla fails atrodas storage/logs/laravel.log
.
Mēs jau esam instalējuši Beanstalk un definējuši darbu, kas tam jāizpilda. Tagad ir pienācis laiks likt Laravel izmantot Beanstalk kā noklusējuma darba rindu. Kopējiet noklusējuma .env
failu, ko nodrošina Laravel instalācija.
cp .env.example .env
Tagad atveriet .env
failu un atjauniniet rindu, kurā ir norādīts rindas draiveris.
QUEUE_DRIVER=beanstalkd
Visbeidzot, ģenerējiet lietojumprogrammas atslēgu.
php artisan key:generate
Tagad esam gatavi nosūtīt darbus uz Beanstalk darbu rindu.
Darba nosūtīšana Laravelā ir pavisam vienkārša. Atjauniniet routes/web.php
failu.
<?php
Route::get('/', function () {
for ($i = 0; $i < 50; $i++) {
\App\Jobs\FindFavoriteOS::dispatch();
}
return '50 Jobs dispatched!';
});
Neskatoties uz to, ka nav ieteicams palaist iebūvēto nodrošināto serveri ražošanā, mēs to izmantosim šeit īsuma labad.
php artisan serve --host 0.0.0.0 --port 8000
Tagad tīmekļa pārlūkprogrammā dodieties uz http://[vultr-instance-ip]:8000
. Jūs redzēsit šādu ziņojumu.
50 Jobs dispatched!
Atveriet jaunu SSH savienojumu ar savu serveri un mūsu projekta saknes iekšpusē izpildiet tālāk norādīto.
php artisan queue:work --once
Šī ir paredzamā izvade:
[2018-02-14 00:03:52] Processing: App\Jobs\FindFavoriteOS
[2018-02-14 00:03:53] Processed: App\Jobs\FindFavoriteOS
Apstipriniet, ka žurnāls ir izveidots.
cat storage/logs/laravel.log
Lai izvairītos no nepieciešamības manuāli apstrādāt rindu, mēs izmantosim supervisord
. Izveidojiet šādu programmas konfigurāciju /etc/supervisor/conf.d/vultr.conf
.
[program:vultr]
process_name=%(program_name)s_%(process_num)02d
command=php [PROJECT_ROOT]/artisan queue:work
autostart=true
autorestart=true
numprocs=8
redirect_stderr=true
stdout_logfile=/var/log/worker.log
Ņemiet vērā, ka pareizais Supervisor konfigurācijas faila ievietošanas ceļš būs atkarīgs no jūsu iestatījuma. Tāpat neaizmirstiet aizstāt [PROJECT_ROOT]
ar pilnu ceļu PROJECT_ROOT
uz jūsu sistēmā.
Šeit mēs konfigurējam Supervisor, lai automātiski sāktu rindas apstrādi un skripta pārtraukuma gadījumā to restartētu. Ņemiet vērā arī to, ka mēs nenodarbojamies ar vienu darbinieku, bet gan 8 procesus. Atkarībā no jūsu lietojumprogrammas jūs varat brīvi izveidot, cik daudz procesu uzskatāt par nepieciešamiem.
Lai ļautu uzraugam pārvaldīt mūsu darbinieku, piespiediet to atkārtoti izlasīt tā konfigurāciju.
sudo supervisorctl reread
sudo supervisorctl update
Ja Supervisor pakalpojums nav palaists, jums tas ir jāpalaiž.
sudo systemctl start supervisord
Tagad paskatīsimies, vai darbi tiek apstrādāti.
tail -f storage/logs/laravel.log
Tīmekļa pārlūkprogrammā dodieties uz http://[vultr-instance-ip]:8000
. Jūs redzēsit žurnālus, kas tiek ģenerēti jūsu konsolē.
Mēs esam veiksmīgi konfigurējuši Laravel lietojumprogrammu, lai izmantotu Beanstalk kā darba rindu. Mēs arī parādījām, kā izmantot Supervisor, lai pārvaldītu darbiniekus.
Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes
Ievads Cacti ir atvērtā koda uzraudzības un grafiku veidošanas rīks, kas pilnībā ir balstīts uz RRD datiem. Izmantojot Cacti, varat pārraudzīt gandrīz jebkura veida ierīces
Ievads Lets Encrypt ir sertifikācijas iestādes pakalpojums, kas piedāvā bezmaksas TLS/SSL sertifikātus. Instalēšanas procesu vienkāršo Certbot,
Vai izmantojat citu sistēmu? Kas ir Tekkit Classic? Tekkit Classic ir modifikācija spēlei, kuru visi zina un mīl; Minecraft. Tajā ir daži no ver
Vai izmantojat citu sistēmu? Šī apmācība parādīs, kā instalēt grupas programmu iRedMail jaunā Debian Wheezy instalācijā. Jums vajadzētu izmantot servi
Vai izmantojat citu sistēmu? Jekyll ir lieliska alternatīva WordPress emuāru rakstīšanai vai satura kopīgošanai. Tam nav nepieciešamas nekādas datu bāzes, un tas ir ļoti vienkārši
Vai izmantojat citu sistēmu? Ja iegādājaties Debian serveri, jums vienmēr ir jābūt jaunākajiem drošības ielāpiem un atjauninājumiem neatkarīgi no tā, vai jūs guļat vai ne.
PHP un saistītās pakotnes ir visbiežāk izmantotie komponenti, izvietojot tīmekļa serveri. Šajā rakstā mēs uzzināsim, kā iestatīt PHP 7.0 vai PHP 7.1 o
Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu
Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana
1. Virtualmin/Webmin Virtualmin ir jaudīgs un elastīgs tīmekļa mitināšanas vadības panelis Linux un UNIX sistēmām, pamatojoties uz labi zināmo atvērtā pirmkoda tīmekļa bāzi
Yii ir PHP ietvars, kas ļauj ātrāk un vienkāršāk izstrādāt lietojumprogrammas. Yii instalēšana Ubuntu ir vienkārša, jo jūs to uzzināsit precīzi
Ekrāns ir lietojumprogramma, kas ļauj vairākkārt izmantot termināļa sesijas vienā logā. Tas ļauj simulēt vairākus termināļa logus, kur tas ma
Šajā apmācībā ir paskaidrots, kā iestatīt DNS serveri, izmantojot Bind9 uz Debian vai Ubuntu. Visā rakstā attiecīgi aizstājiet savu-domēna-nosaukums.com. plkst
Ievads Logrotate ir Linux utilīta, kas vienkāršo žurnālfailu administrēšanu. Tas parasti darbojas reizi dienā, izmantojot cron uzdevumu, un pārvalda žurnālu bāzi
Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients
Vai izmantojat citu sistēmu? Red5 ir atvērtā pirmkoda multivides serveris, kas ieviests Java un ļauj palaist Flash vairāku lietotāju lietojumprogrammas, piemēram, tiešraides straumēšanu.
Šajā rakstā mēs redzēsim, kā apkopot un instalēt Nginx galveno līniju no oficiālajiem Nginx avotiem ar PageSpeed moduli, kas ļauj t
Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.
Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.
Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.
Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.
Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.
Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.
Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…
Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.
Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.
Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.
Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.
Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk