Mašinų augimas: AI pritaikymas realiame pasaulyje
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Brotli (br) yra naujas atvirojo kodo glaudinimo algoritmas, sukurtas Google kaip alternatyva Gzip, Zopfli ir Deflate. Interneto inžinerijos darbo grupėje (IETF) jis oficialiai apibrėžtas kaip RFC 7932 . „Google“ atvejo tyrimas „Brotli“ parodė, kad glaudinimo koeficientas yra iki 26% mažesnis nei dabartiniai metodai, naudojant mažiau procesoriaus.
„Nginx“ neturi oficialaus palaikymo, tačiau yra „Google“ sukurtas trečiosios šalies modulis, vadinamas ngx_brotli , kurį galime naudoti norėdami pridėti „Nginx“ palaikymą.
Šis vadovas parodys, kaip pridėti „Brotli“ palaikymą prie „Nginx“ naujame „Ubuntu 18.04 LTS Vultr“ egzemplioriuje.
PASTABA: Šis vadovas bus naudojamas johndoekaip naudotojo example.compavyzdys ir domeno pavyzdys. Pakeiskite juos pagal savo vardus.
A/ AAAAįrašaisPatikrinkite Ubuntu versiją.
lsb_release -ds
# Ubuntu 18.04 LTS
Sukurkite naują non-rootvartotojo paskyrą su sudoprieiga ir perjunkite į ją.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
PASTABA : pakeiskite johndoesavo vartotojo vardu .
Atnaujinkite savo operacinės sistemos programinę įrangą.
sudo apt update && sudo apt upgrade -y
Nustatykite laiko juostą.
sudo dpkg-reconfigure tzdata
Įdiekite reikiamus kūrimo įrankius ir paketus.
sudo apt install -y build-essential git apt-transport-https socat
„Brotli“ reikalauja, kad nustatytumėte ir naudotumėte HTTPS. Šioje dalyje gausime patikimą sertifikatą iš Let's Encrypt.
Atsisiųskite ir įdiekite 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
Patikrinkite versiją.
acme.sh --version
# v2.8.0
Gaukite RSA ir ECDSA sertifikatus 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
Paleidus aukščiau pateiktas komandas, jūsų sertifikatai ir raktai bus šiose vietose:
/etc/letsencrypt/example.com/etc/letsencrypt/example.com_eccAtsisiųskite ir įdiekite naujausią pagrindinę „Nginx“ versiją iš oficialaus „Nginx“ atpirkimo.
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
Patikrinkite versiją.
sudo nginx -v
# nginx version: nginx/1.15.2
Įgalinkite ir paleiskite „Nginx“.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Įdiegę Nginx, turime sukurti Brotli modulį ( ngx_brotli) kaip dinaminį Nginx modulį. Iš Nginx 1.11.5 versijos galima kompiliuoti atskirus dinaminius modulius nesudarius visos Nginx programinės įrangos. Kituose keliuose žingsniuose sukursime „Brotli“ modulį kaip dinamišką, nesudarydami viso „Nginx“.
Atsisiųskite naujausią pagrindinio „Nginx“ šaltinio kodo versiją ir išskleiskite ją.
wget https://nginx.org/download/nginx-1.15.2.tar.gz && tar zxvf nginx-1.15.2.tar.gz
PASTABA : labai svarbu, kad „Nginx“ paketo ir „Nginx“ šaltinio kodo versijų numeriai sutaptų. Jei įdiegėte Nginx 1.15.2 iš oficialios Nginx saugyklos, turite atsisiųsti tą pačią šaltinio kodo versiją, šiuo atveju 1.15.2.
Pašalinti nginx-1.15.2.tar.gz.
rm nginx-1.15.2.tar.gz
Klonas ngx_brotliiš GitHub.
git clone https://github.com/eustas/ngx_brotli.git
cd ngx_brotli && git submodule update --init && cd ~
Eikite į Nginx šaltinio kodo katalogą.
cd ~/nginx-1.15.2
Atsisiųskite reikiamas bibliotekas.
sudo apt install -y libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev
Sukompiliuokite ngx_brotlikaip dinaminį modulį ir nukopijuokite jį į standartinį Nginx modulių katalogą, /etc/nginx/modules.
./configure --with-compat --add-dynamic-module=../ngx_brotli
make modules
sudo cp objs/*.so /etc/nginx/modules
Išvardykite failus /etc/nginx/modulesir pamatysite ngx_http_brotli_filter_module.soir ngx_http_brotli_static_module.so.
ls /etc/nginx/modules
Nustatykite 644visų .sofailų leidimus .
sudo chmod 644 /etc/nginx/modules/*.so
Esame pasirengę konfigūruoti „Brotli“ palaikymą „Nginx“.
Paleiskite sudo vim /etc/nginx/nginx.confir failo viršuje pridėkite šias dvi direktyvas, kad įkeltumėte naujus „Brotli“ modulius.
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
Išbandykite konfigūraciją.
sudo nginx -t
Sukurkite dokumento šakninį katalogą example.comir sukurkite index.htmljame esantį turinį.
sudo mkdir -p /var/www/example.com
sudo -s
echo "Hello from example.com" >> /var/www/example.com/index.html
exit
Sukurkite virtualų prieglobą, skirtą example.com.
sudo vim /etc/nginx/conf.d/example.com.conf
Užpildykite jį naudodami šią konfigūraciją.
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;
}
Išbandykite konfigūraciją.
sudo nginx -t
Iš naujo įkelti Nginx.
sudo systemctl reload nginx.service
Apsilankykite svetainėje naudodami žiniatinklio naršyklę ir atidarykite kūrėjo įrankių tinklo skirtuką. Pamatysite Content-Encoding: bratsakymų antraštėse. Tai rodo, kad „Brotli“ suspaudimas veikia.

Savo žiniatinklio serveryje įgalinote „Brotli“ glaudinimą.
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.
Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…
Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.
Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį