O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
IRC este popular printre dezvoltatorii și utilizatorii de software open source. Unul dintre dezavantajele IRC este atunci când nu sunteți on-line, puteți rata conversațiile sau mențiunile importante despre porecla dvs. Cu Quassel și un VPS mic, puteți avea persistență IRC, completată cu o UI bazată pe web și un backlog de căutare.
Voi presupune că știți deja cum puteți crea un VPS în panoul de control Vultr.
În primul rând, va trebui să vă conectați la panoul dvs. de control Vultr și să vă creați un VPS nou. În acest exemplu, am configurat un VPS Debian 9, 2,50 USD / lună VPS. Puteți alege orice dimensiune, dar scopul acesta este să fie cât mai mic posibil. Va trebui să îi dați un nume, precum quassel.example.netși să vă asigurați că aveți o înregistrare DNS A configurată.
Deoarece aceste instrucțiuni sunt concentrate în jurul Debian, va trebui să le modificați ușor dacă intenționați să utilizați o distribuție Linux diferită, cum ar fi Ubuntu sau CentOS.
Odată ce VPS-ul dvs. funcționează, veți dori să instalați câteva pachete pentru a începe elementele de bază.
Va trebui să instalați Quassel-Core, PostgreSQL, Apache și PHP, împreună cu alte câteva biblioteci pentru a vorbi cu serverul SQL.
apt-get install quassel-core postgresql libqt5sql5-psql apache2 php php-pgsql
De asemenea, veți avea nevoie de Node.js. Porțiunea web a serverului dvs. nor IRC personal necesită Nod. Instrucțiuni complete de instalare pot fi găsite aici , dar acestea sunt singurele două linii de care aveți nevoie:
# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs
În continuare, va trebui să creați o bază de date pentru nucleul Quassel. Comutați la utilizatorul Postgres și rulați psql.
# su - postgres
$ psql
După ce ați ajuns la promptul PostgreSQL, va trebui să creați un utilizator pentru Quassel și baza sa de date:
CREATE USER quassel ENCRYPTED PASSWORD 'somepassword';
CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';
Acum că elementele de bază sunt configurate, acum puteți lansa clientul Quassel și vă puteți conecta la centrul dvs.
Când porniți clientul Quassel pe mașina dvs. locală, vi se va afișa un dialog de conectare. Introdu adresa IP sau numele gazdei VPS și numărul portului (implicit: 4242) și selectează SSL. Dacă aveți un server proxy, puteți introduce detaliile proxy în dialog.
În timpul primei conexiuni, vei fi ghidat de un alt vrăjitor pentru a configura miezul. Introduceți primul nume de utilizator și parola Quasselcore. Primul utilizator va fi administratorul. Apoi, selectați backend-ul bazei de date PostgreSQL și furnizați numele de utilizator și parola bazei de date Quassel așa cum sunt definite la pasul anterior.
După ce ați configurat elementele de bază ale nucleului dvs., puteți configura acum porțiunea web. Acest lucru vă permite să vă conectați la core cu orice browser web. Vom folosi Quassel-Webserver .
Creați un utilizator pentru serviciul web:
# useradd -d /opt/quassel-webserver -M -r quassel-webserver
Acum trageți jos serverul Quassel și schimbați proprietatea la utilizatorul creat anterior:
# git clone https://github.com/magne4000/quassel-webserver.git /opt/quassel-webserver
# chown -R quassel-webserver:quasselweb-server /opt/quassel-webserver
Apoi, trebuie să „instalați” aplicația Node.js:
# su - quassel-webserver
$ npm install --production
Copiază settings.jssă settings-user.js și schimba host, forcedefaultși prefixpathvalori:
host: 'localhost',
forcedefault: 'true',
prefixpath: '/app'
În timp ce se află pe /opt/quassel-webservercalea ca root, puteți instala fișierul de service pentru Systemd.
# cp scripts/quassel-webserver.service /lib/systemd/system/quassel-webserver.service
Va trebui să editați /lib/systemd/system/quassel-webserver.serviceși să modificați ExecStartlinia:
ExecStart=/usr/bin/node /opt/quassel-webserver/app.js -l 127.0.0.1 -m http
Acum puteți activa și porni serverul web Quassel:
systemctl enable quassel-webserver.service
systemctl start quassel-webserver.service
Puteți verifica dacă quassel-webserver-ul se execută executând systemctl status quassel-webserver.service. Dacă vedeți Active: active (running), sunteți cu toții pregătiți!
În continuare, vom configura configurația Apache.
Va trebui să activați câteva module pentru a începe, cum ar fi proxy_http, proxy_wstunnelși rewrite.
# a2enmod proxy_http proxy_wstunnel rewrite
Creați un nou fișier de configurare pentru Quassel:
# nano /etc/apache2/sites-available/quassel.conf
<VirtualHost *:80>
ServerName quassel.example.net
ServerAdmin quassel@example.net
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# Enable Rewrite
RewriteEngine on
# Redirect to /app by default
RedirectMatch ^/$ /app
# Quassel Webserver
RewriteRule /app/p/socket(.*) ws://127.0.0.1:64080/app/p/socket$1 [P,L]
ProxyPass /app http://127.0.0.1:64080/app
</VirtualHost>
Și activați site-ul:
a2ensite quassel
Reporniți Apache pentru a aplica modificările:
systemctl restart apache2
Dacă totul a decurs bine, puteți naviga acum la quassel-webserverinstanța dvs. la http://quassel.example.net.
În continuare, vom configura o căutare în retard . Acest lucru va necesita modificări ale quassel-corebazei de date. În primul rând, să începem cu clonarea codului sursă:
# git clone https://github.com/justjanne/quassel-rest-search.git /opt/quassel-rest-search
Odată clonate, redenumiți fișierul qrs_config.default.phppentru a qrs_config.phpși edita fișierul. Veți avea nevoie pentru a defini baza de date db_name, db_user, db_pathși path_prefix. Ar trebui să ajungă să arate așa ceva:
<?php
define('db_host', 'localhost');
define('db_port', 5432);
define('db_name', 'quassel');
//Only change this if you know what you are doing
define('db_connector', null);
define('db_user', 'quassel');
define('db_pass', 'somepassword');
define('backend', 'pgsql-smart');
define('path_prefix', '/search');
În continuare, modificăm baza de date pentru a fi utilizate de quassel-rest-search:
Comutați la postgresutilizator și rulați psql:
# su - postgres
$ psql quassel
Mai întâi, adăugați o nouă coloană la tabelul de backlog:
ALTER TABLE backlog ADD COLUMN tsv tsvector;
În al doilea rând, adăugați cei doi noi indici:
CREATE INDEX backlog_tsv_idx
ON backlog
USING gin(tsv);
CREATE INDEX backlog_tsv_filtered_idx
ON backlog
USING gin(tsv)
WHERE (type & 23559) > 0;
În al treilea rând, configurați un declanșator pentru a popula coloana tsv:
CREATE TRIGGER tsvectorupdate
BEFORE INSERT OR UPDATE
ON backlog
FOR EACH ROW
EXECUTE PROCEDURE tsvector_update_trigger('tsv', 'pg_catalog.english', 'message');
În al patrulea rând, populează tsvcoloana " ":
UPDATE backlog SET messageid = messageid;
Acum puteți actualiza configurația Apache pe care am creat-o anterior și adăugați:
# Quassel Search
Alias /search /opt/quassel-rest-search
<Directory /opt/quassel-rest-search>
Require all granted
</Directory>
Reporniți Apache:
systemctl restart apache2
Dacă toate au decurs bine, puteți naviga la http://quassel.example.net/searchși veți vedea un ecran de logare.
Acum poate fi un moment bun pentru a vă asigura serverul web utilizând Let's Encrypt. Detalii despre cum se instalează și se configurează „Encrypt Let's” pot fi găsite pe site-ul web al EFF sau aici în documentele Vultr .
În cazul în care vă faceți griji cu privire la rămânerea RAM, este posibil să doriți să activați swap-ul pe VPS. Vă rugăm să urmați acest tutorial de swap pentru Linux .
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.
Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.
Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.
Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.
CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?
Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!
Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.
Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe