Instalare RethinkDB Cluster pe CentOS 7
Introducere RethinkDB este o bază de date NoSQL care stochează date sub formă de documente JSON. Are un limbaj de interogare super intuitiv și are funcții disponibile în mod obișnuit
Redmine este un instrument gratuit și deschis de gestionare a proiectelor bazat pe web. Este scris în Ruby on Rails și acceptă mai multe servere de baze de date pentru stocarea bazei de date. Este o aplicație bogată în caracteristici care susține mai multe proiecte, ACL bazat pe rol și sistem de urmărire a problemelor. Are, de asemenea, suport Gantt și calendar, gestionarea fișierelor, pe proiectul wiki și forum, precum și multe alte funcții. Suporta sisteme de control a versiunilor precum Git, SVN sau CVS. De asemenea, este multilingvă, sprijinind până la 49 de limbi.
Acest ghid a fost redactat pentru Redmine 3.4.4, dar se poate aplica și versiunilor mai noi.
Pentru acest tutorial, vom folosi 192.168.1.1
ca adresă IP publică și redmine.example.com
ca nume de domeniu indicat spre instanța Vultr. Vă rugăm să vă asigurați că înlocuiți toate aparițiile numelui de domeniu și adresa IP de exemplu cu una reală.
Actualizați-vă sistemul de bază utilizând ghidul Cum actualizați CentOS 7 . După ce sistemul dvs. a fost actualizat, continuați să instalați dependențele.
Redmine este scris în Ruby on Rails, astfel că vom solicita Phusion Passenger să se integreze cu serverul web Apache pentru a servi aplicația. Instalați Apache.
sudo yum -y install httpd httpd-devel libcurl-devel
Pentru a construi aplicația Redmine, vom avea nevoie și de câteva instrumente de dezvoltare. Instalați instrumentele necesare.
sudo yum -y install ImageMagick ImageMagick-devel git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel
Redmine acceptă mai multe tipuri de servere de baze de date, cum ar fi MySQL, PostgreSQL și MSSQL. În acest tutorial, vom folosi PostgreSQL pentru a găzdui serverul de baze de date Redmine.
PostgreSQL este un sistem de baze de date relațional cu obiecte. Depozitul implicit yum
conține o versiune veche a PostgreSQL, așadar adăugați depozitul PostgreSQL la sistem.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Instalați serverul de baze de date PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inițializează baza de date.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Porniți serverul PostgreSQL și permiteți-l să pornească automat la momentul de pornire.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Modificați parola pentru utilizatorul implicit PostgreSQL.
sudo passwd postgres
Conectați-vă ca utilizator PostgreSQL.
sudo su - postgres
Creați un nou utilizator PostgreSQL pentru Redmine.
createuser redmine
Aveți dreptul să utilizați orice nume de utilizator în loc de redmine
. PostgreSQL oferă psql
shell - ul pentru a rula interogări pe baza de date. Comutați la shell-ul PostgreSQL.
psql
Setați o parolă pentru utilizatorul nou creat pentru baza de date Redmine.
ALTER USER redmine WITH ENCRYPTED password 'DBPassword';
Înlocuiți DBPassword
cu o parolă sigură. Creați o nouă bază de date pentru instalarea Redmine.
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
Ieșiți din psql
coajă.
\q
Comutați la sudo
utilizator.
exit
Editați pg_hba.conf
fișierul pentru a activa autentificarea bazată pe MD5.
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Găsiți următoarele linii și modificați valorile peer
și ident
în METHOD
coloană la trust
și md5
, respectiv.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
Odată actualizată, configurația ar trebui să arate astfel.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Reporniți PostgreSQL pentru ca modificările să aibă efect.
sudo systemctl restart postgresql-10
Instalați alte câteva dependențe PostgreSQL necesare.
sudo yum -y install libpqxx-devel protobuf-devel
Este recomandat să utilizați un utilizator nepriviat pentru a rula aplicația pentru a o ține izolată de restul sistemului. Creați un utilizator nou pentru Redmine și treceți la un utilizator nou creat.
sudo adduser redmine
sudo su - redmine
Vom instala cea mai recentă versiune de Ruby folosind Ruby Version Manager sau RVM. Este folosit pentru instalarea și gestionarea mai multor versiuni de Ruby.
Adăugați cheia GPG a RVM pe serverul dvs.
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Instalați RVM.
curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
Obțineți lista cu versiunile disponibile pentru Ruby.
rvm list known
Veți vedea o listă lungă de versiuni Ruby.
[redmine@vultr ~]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head
...
Instalați cea mai recentă versiune de Ruby din listă.
rvm install 2.4
Folosiți versiunea instalată de Ruby.
rvm use 2.4
Puteți verifica versiunea sa.
ruby -v
Veți vedea o ieșire similară.
[redmine@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
Instalați pachetul, care este managerul de dependență pentru aplicația Ruby.
gem install bundler
Ruby este acum instalat. Înainte de a instala Redmine, va trebui să instalăm Phusion Passenger.
Rulați următoarea comandă pentru a instala Pasagerul.
gem install passenger
Oferiți permisiunea de execuție în directorul principal al redmine
utilizatorului. Pasagerul trebuie să execute binare pentru a servi aplicația.
chmod o+x "/home/redmine"
Instalați modulul Apache pentru pasager.
passenger-install-apache2-module
Scriptul instalatorului vă va pune câteva întrebări. În primul rând, vă va oferi informații despre procesul de instalare. Apoi, vă va cere să selectați limba pe care o veți utiliza. Deoarece aplicația noastră este scrisă în Ruby on Rails, selectați Ruby din meniu și apăsați " Enter
" pentru a continua.
Which languages are you interested in?
Use <space> to select.
If the menu doesn't display correctly, press '!'
‣ ⬢ Ruby
⬡ Python
⬡ Node.js
⬡ Meteor
Instalatorul va verifica acum cerințele. Instalatorul nu va întâmpina nicio dependență care lipsește și va continua automat la compilarea și instalarea modulului.
După instalarea modulului, vă va solicita să adăugați modulul în fișierul de configurare Apache.
Almost there!
Please edit your Apache configuration file, and add these lines:
LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
PassengerDefaultRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
</IfModule>
After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!
Press ENTER when you are done editing.
Vom sări acest lucru deocamdată și îl vom completa mai târziu în tutorial, deoarece utilizatorul cu care suntem conectați nu are sudo
permisiuni. Apăsați " Enter
" pentru a sări acest pas.
În cele din urmă, script-ul de instalare va valida instalarea și veți vedea un avertisment care spune că modulul Pasager nu este specificat în configurația Apache.
Validating installation...
* Checking whether this Passenger install is in PATH... ✓
* Checking whether there are no other Passenger installations... ✓
* Checking whether Apache is installed... ✓
* Checking whether the Passenger module is correctly configured in Apache... (!)
You did not specify 'LoadModule passenger_module' in any of your Apache
configuration files. Please paste the configuration snippet that this
installer printed earlier, into one of your Apache configuration files, such
as /etc/httpd/conf/httpd.conf.
Detected 0 error(s), 1 warning(s).
Press ENTER to continue.
Acum că am instalat modulul Pasager pentru Apache, continuați să descărcați și să instalați Redmine.
Descărcați cea mai recentă versiune de Redmine de pe pagina oficială de descărcare Redmine .
cd ~
wget http://www.redmine.org/releases/redmine-3.4.4.tar.gz
Extrageți arhiva și redenumiți directorul din motive de comoditate.
tar -xf redmine-*.tar.gz
mv redmine-*/ redmine/
Copiați fișierele de configurare de exemplu în locația de producție.
cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml
Deschideți fișierul de configurare a bazei de date pe care tocmai l-am copiat pentru a introduce detaliile bazei de date.
nano config/database.yml
În mod implicit, fișierul bazei de date este configurat pentru MySQL. Găsiți configurațiile pentru producție și dezvoltare și testați care utilizează adaptorul MySQL. Comentați toate aceste rânduri.
#production:
# adapter: mysql2
# database: redmine
# host: localhost
# username: root
# password: ""
# encoding: utf8
#development:
# adapter: mysql2
# database: redmine_development
# host: localhost
# username: root
# password: ""
# encoding: utf8
#test:
# adapter: mysql2
# database: redmine_test
# host: localhost
# username: root
# password: ""
# encoding: utf8
Furthur, găsiți liniile care sunt comentate, având production
configurația pentru postgresql
adaptor. Deconectați liniile respective și actualizați numele bazei de date și datele de acreditare ale utilizatorului. Asigurați-vă că folosiți indentarea corectă, care este în două spații.
production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: "DBPassword"
Configurați aplicația pentru a utiliza configurația PostgreSQL.
bundle config build.pg --with-pg-config=/usr/pgsql-10/bin/pg_config
Instalați dependențele de aplicație solicitate de aplicație.
bundle install --without development test
La sfârșitul instalării veți vedea următorul mesaj.
Installing roadie-rails 1.1.1
Bundle complete! 31 Gemfile dependencies, 55 gems now installed.
Gems in the groups development and test were not installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
Următoarea comandă generează jetoane secrete care sunt utilizate pentru codificarea datelor sesiunii.
bundle exec rake generate_secret_token
Scrieți baza de date PostgreSQL.
RAILS_ENV=production bundle exec rake db:migrate
Rulați următoarea comandă, care scrie datele implicite în baza de date PostgreSQL.
RAILS_ENV=production bundle exec rake redmine:load_default_data
Comanda de mai sus vă va solicita să alegeți limba implicită care va fi utilizată cu aplicația. Alegerea implicită este engleza; alegeți în funcție de preferințe.
[redmine@vultr redmine]$ RAILS_ENV=production bundle exec rake redmine:load_default_data
Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, es-PA, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]
====================================
Default configuration data loaded.
Instalarea aplicației Redmine este acum terminată. Modificați proprietatea și permisiunile directoarelor și fișierelor.
mkdir -p tmp tmp/pdf public/plugin_assets
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets
Am configurat tot ce avem nevoie de la utilizatorul ne privilegiat. Comutați înapoi la sudo
utilizator rulând su - <username>
.
Adăugați modulul Pasager pentru Apache în fișierul de configurare Apache. Aceasta va încărca automat modulul Pasager.
echo "LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so" | sudo tee -a /etc/httpd/conf.modules.d/00-base.conf
Creați un nou fișier gazdă virtual pentru aplicația dvs. Redmine.
sudo nano /etc/httpd/conf.d/redmine.conf
Populați fișierul cu următorul conținut.
<VirtualHost *:80>
ServerName redmine.example.com
DocumentRoot /home/redmine/redmine/public
PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
PassengerUser redmine
<Directory /home/redmine/redmine/public>
Allow from all
Options -MultiViews
Require all granted
</Directory>
</VirtualHost>
Asigurați-vă că înlocuiți redmine.example.com
cu numele dvs. de domeniu real. De asemenea, asigurați-vă că calea către PassengerRoot
și PassengerRuby
sunt corecte. Calea către binare se poate schimba atunci când există o nouă versiune de Ruby sau Pasager. Pentru a găsi aceste căi, executați următoarea comandă.
sudo su redmine -c "passenger-config about ruby-command"
Veți obține următoarele rezultate.
[user@vultr ~]$ sudo su redmine -c "passenger-config about ruby-command"
passenger-config was invoked through the following Ruby interpreter:
Command: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
Version: ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
To use in Apache: PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
To use in Nginx : passenger_ruby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
To use with Standalone: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/bin/passenger start
După crearea fișierului gazdă virtuală, reporniți serverul web Apache.
sudo systemctl restart httpd
Modificați configurația firewallului pentru a permite portul 80
prin firewall.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload
Acum puteți accesa interfața Redmine pe http://redmine.example.com
. Autentificare cu nume de utilizator admin
și parolă admin
. La prima conectare, Redmine vă va solicita să actualizați parola.
Întrucât instalarea noastră Redmine este pe un server cu vedere publică, se recomandă utilizarea SSL pentru a asigura schimbul de date de pe server.
Instalați Certbot, care este aplicația client pentru Let's Encrypt CA.
sudo yum -y install epel-release
sudo yum -y install certbot mod_ssl
Înainte de a putea solicita certificatele, va trebui să permită portul 80
și 443
standard sau HTTP
și HTTPS
servicii prin intermediul firewall. Deoarece am permis deja portul 80
mai devreme, să permitem portul 443
.
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Notă: Pentru a obține certificate de la Let's Encrypt CA, domeniul pentru care se vor genera certificatele trebuie îndreptat către server. Dacă nu, faceți modificările necesare în înregistrările DNS ale domeniului și așteptați propagarea DNS înainte de a face din nou cererea de certificare. Certbot verifică autoritatea domeniului înainte de furnizarea certificatelor.
Generați certificatele SSL.
sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com
Este posibil ca certificatele generate să fie stocate în /etc/letsencrypt/live/redmine.example.com/
. Certificatul SSL va fi stocate ca cert.pem
și cheia privată vor fi stocate ca privkey.pem
.
Să criptăm certificatele să expire în 90 de zile, de aceea este recomandat să configurați reînnoirea automată a certificatelor folosind joburi Cron.
Deschideți fișierul de lucru Cron pentru root
utilizator.
sudo crontab -e
Adăugați următoarea linie la sfârșitul fișierului.
30 5 * * * /usr/bin/certbot renew --quiet
Locul de muncă Cron de mai sus se va desfășura în fiecare zi la 5:30 AM. În cazul în care certificatul expiră, acesta va fi reînnoit automat.
Editați fișierul gazdă virtual pe care l-am creat anterior pentru Redmine.
sudo nano /etc/httpd/conf.d/redmine.conf
Modificați fișierul gazdă virtuală pentru a arăta după cum urmează.
<VirtualHost *:80>
Redirect permanent / https://www.example.com/
ServerName redmine.example.com
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName redmine.example.com
DocumentRoot "/home/redmine/redmine/public"
<Directory "/home/redmine/redmine/public">
Options None
Require all granted
</Directory>
PassengerAppEnv production
PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
PassengerUser redmine
PassengerHighPerformance on
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/redmine.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/redmine.example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/redmine.example.com/chain.pem
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
<IfModule headers_module>
Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains"
</IfModule>
</VirtualHost>
Salvați fișierul și ieșiți din editor.
Reporniți Apache pentru ca modificările să aibă efect.
sudo systemctl restart httpd
Acum puteți acces Redmine peste HTTPS
pe https://redmine.example.com
.
Felicitări, ați instalat cu succes Redmine pe instanța dvs. CentOS 7. Începeți să dezvoltați proiectul dvs. fie prin crearea sau importarea proiectului.
Introducere RethinkDB este o bază de date NoSQL care stochează date sub formă de documente JSON. Are un limbaj de interogare super intuitiv și are funcții disponibile în mod obișnuit
În anumite ocazii, este posibil ca un administrator de sistem să aibă nevoie să creeze un cont de utilizator și să restricționeze accesul acestora la gestionarea propriilor fișiere prin sFTP, dar nu b
Folosind un sistem diferit? NGINX poate fi utilizat ca server HTTP / HTTPS, server proxy invers, server proxy de poștă, echilibrator de sarcină, terminator TLS sau cachin
Folosind un sistem diferit? Chamilo este un sistem gratuit și deschis de management al învățării (LMS), care este utilizat pe scară largă pentru educația online și colaborarea în echipă
Odoo, cunoscută anterior drept OpenERP, este o cunoscută platformă de afaceri ERP open source. Întreprinderile de orice dimensiune pot beneficia de Odoo, datorită licenței sale abundente
Folosind un sistem diferit? Couch CMS este un sistem de gestionare a conținutului (CMS) simplu și flexibil, gratuit și deschis, care permite proiectanților web să deseneze
Folosind un sistem diferit? SonarQube este un instrument open source pentru dezvoltarea sistemului de calitate. Este scris în Java și acceptă mai multe baze de date. Oferă
NextCloud, așa cum sugerează și numele său, este o alternativă promițătoare a unei alte soluții de hosting de fișiere open source OwnCloud. În acest articol, vă voi arăta
Folosind un sistem diferit? Netdata este o stea în creștere în domeniul monitorizării în timp real a metricilor sistemului. Comparativ cu alte instrumente de același fel, Netdata:
Folosind un sistem diferit? În acest tutorial, voi explica cum să configurați un server Starbound pe CentOS 7. Condiții preliminare Trebuie să dețineți acest joc pe dvs.
Bine ați venit la un alt tutorial Vultr. Aici, veți învăța cum să instalați și să rulați un server SAMP. Acest ghid a fost scris pentru CentOS 6. Condiții preliminare pe care le veți obține
Folosind un sistem diferit? Elgg este un motor de rețea socială open source care permite crearea de medii sociale, cum ar fi rețelele sociale din campus
RStudio Server este ediția web a RStudio care este o serie de instrumente concepute pentru a facilita munca de codare folosind limbajul de programare R. În ti
Bolt este un CMS open source scris în PHP. Codul sursă Bolts este găzduit pe GitHub. Acest ghid vă va arăta cum instalați Bolt CMS pe un nou CentOS 7 Vult
Bugzilla este un sistem gratuit și open source de urmărire a erorilor, care este utilizat pe scară largă de diverși furnizori pentru a-și îmbunătăți continuu softwar-ul
Prezentare generală Acest articol este menit să vă ajute să obțineți un cluster Kubernetes și să funcționeze cu kubeadm în cel mai scurt timp. Acest ghid va implementa două servere, pe
Folosind un sistem diferit? Introducere Sails.js este un cadru MVC pentru Node.js, similar cu Ruby on Rails. Face pentru dezvoltarea aplicațiilor moderne ver
Funcțiile Vultrs Adu-ți spațiul IP permite o libertate fără precedent în alocarea propriilor resurse IP serverelor din norul Vultr. Noi generall
Acest tutorial va acoperi procesul de instalare a unui server de joc Half Life 2 pe CentOS 6 System. Pasul 1: Instalarea condițiilor preliminare Pentru a configura ou
Introducere Sistemele Linux sunt livrate cu instrumente de monitorizare în mod implicit, cum ar fi top, df și du care ajută la monitorizarea proceselor și a spațiului pe disc. De multe ori însă, acestea sunt
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
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 blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
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.
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?
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.
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