Mašīnu pieaugums: AI reālās pasaules lietojumi
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.
Brotli (br) ir jauns atvērtā pirmkoda saspiešanas algoritms, ko Google izstrādājis kā alternatīvu Gzip, Zopfli un Deflate. Interneta inženierijas darba grupā (IETF) tas ir formāli definēts kā RFC 7932 . Google gadījuma izpēte par Brotli ir parādījusi līdz pat 26% mazāku saspiešanas pakāpi nekā pašreizējās metodes, izmantojot mazāku CPU izmantošanu.
Nginx nav oficiāla atbalsta, taču ir Google izstrādāts trešās puses modulis ar nosaukumu ngx_brotli, ko mēs varam izmantot, lai pievienotu Nginx atbalstu.
Šī rokasgrāmata parādīs, kā pievienot Brotli atbalstu Nginx jaunā Ubuntu 18.04 LTS Vultr instancē.
PIEZĪME. Šī rokasgrāmata tiks izmantota johndoekā lietotāja piemērs un example.comdomēna piemērs. Nomainiet tos atbilstoši saviem vārdiem.
A/ AAAAierakstiemPārbaudiet Ubuntu versiju.
lsb_release -ds
# Ubuntu 18.04 LTS
Izveidojiet jaunu non-rootlietotāja kontu ar sudopiekļuvi un pārslēdzieties uz to.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
PIEZĪME . Aizstāt johndoear savu lietotājvārdu .
Atjauniniet operētājsistēmas programmatūru.
sudo apt update && sudo apt upgrade -y
Iestatiet laika joslu.
sudo dpkg-reconfigure tzdata
Instalējiet nepieciešamos veidošanas rīkus un pakotnes.
sudo apt install -y build-essential git apt-transport-https socat
Brotli ir nepieciešams iestatīt un izmantot HTTPS. Šajā daļā mēs iegūsim uzticamu sertifikātu no Let's Encrypt.
Lejupielādējiet un instalējiet Acme.sh.
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~
source ~/.bashrc
Pārbaudiet versiju.
acme.sh --version
# v2.8.0
Iegūstiet RSA un ECDSA sertifikātus example.com.
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --accountemail your_email@example.com --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --accountemail your_email@example.com --ocsp-must-staple --keylength ec-256
Pēc iepriekš minēto komandu izpildes jūsu sertifikāti un atslēgas atradīsies šādās vietās:
/etc/letsencrypt/example.com/etc/letsencrypt/example.com_eccLejupielādējiet un instalējiet jaunāko galveno Nginx versiju no oficiālā Nginx repo.
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt
Pārbaudiet versiju.
sudo nginx -v
# nginx version: nginx/1.15.2
Iespējojiet un palaidiet Nginx.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Pēc Nginx instalēšanas mums ir jāizveido Brotli modulis ( ngx_brotli) kā dinamisks Nginx modulis. No Nginx versijas 1.11.5 ir iespējams apkopot atsevišķus dinamiskos moduļus, nekompilējot visu Nginx programmatūru. Nākamajās darbībās mēs izveidosim Brotli moduli kā dinamisku, nekompilējot visu Nginx.
Lejupielādējiet jaunāko galvenā Nginx pirmkoda versiju un izņemiet to.
wget https://nginx.org/download/nginx-1.15.2.tar.gz && tar zxvf nginx-1.15.2.tar.gz
PIEZĪME . Ir ļoti svarīgi, lai Nginx pakotnes un Nginx pirmkoda versiju numuri atbilstu. Ja instalējāt Nginx 1.15.2 no oficiālā Nginx repozitorija, jums ir jālejupielādē tā pati avota koda versija, šajā gadījumā 1.15.2.
Noņemt nginx-1.15.2.tar.gz.
rm nginx-1.15.2.tar.gz
Klons ngx_brotlino GitHub.
git clone https://github.com/eustas/ngx_brotli.git
cd ngx_brotli && git submodule update --init && cd ~
Dodieties uz Nginx pirmkoda direktoriju.
cd ~/nginx-1.15.2
Lejupielādējiet nepieciešamās bibliotēkas.
sudo apt install -y libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev
Kompilējiet ngx_brotlikā dinamisku moduli un kopējiet to Nginx moduļu standarta direktorijā /etc/nginx/modules.
./configure --with-compat --add-dynamic-module=../ngx_brotli
make modules
sudo cp objs/*.so /etc/nginx/modules
Sarakstiet failus, /etc/nginx/modulesun jūs redzēsit ngx_http_brotli_filter_module.soun ngx_http_brotli_static_module.so.
ls /etc/nginx/modules
Iestatiet atļaujas 644visiem .sofailiem.
sudo chmod 644 /etc/nginx/modules/*.so
Mēs esam gatavi konfigurēt Brotli atbalstu Nginx.
Palaidiet sudo vim /etc/nginx/nginx.confun faila augšdaļā pievienojiet šādas divas direktīvas, lai ielādētu jaunus Brotli moduļus.
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
Pārbaudiet konfigurāciju.
sudo nginx -t
Izveidojiet dokumenta saknes direktoriju example.comun izveidojiet index.htmltajā esošo saturu.
sudo mkdir -p /var/www/example.com
sudo -s
echo "Hello from example.com" >> /var/www/example.com/index.html
exit
Izveidojiet virtuālo saimniekdatoru example.com.
sudo vim /etc/nginx/conf.d/example.com.conf
Aizpildiet to ar šādu konfigurāciju.
server {
listen 80;
server_name example.com; # Replace with your domain name
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com; # Replace with your domain name
root /var/www/example.com; # Replace with your document root
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
brotli on;
brotli_static on;
brotli_types text/plain text/css text/javascript application/javascript text/xml application/xml image/svg+xml application/json;
}
Pārbaudiet konfigurāciju.
sudo nginx -t
Pārlādēt Nginx.
sudo systemctl reload nginx.service
Apmeklējiet savu vietni savā tīmekļa pārlūkprogrammā un atveriet izstrādātāja rīku tīkla cilni. Jūs redzēsit Content-Encoding: bratbilžu galvenēs. Tas ir rādītājs, ka Brotli saspiešana darbojas.

Jūs savā tīmekļa serverī esat iespējojis Brotli saspiešanu.
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.
Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.
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.
Š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