Richten Sie Nginx unter Ubuntu ein, um Live-HLS-Videos zu streamen

HTTP Live Streaming (HLS) ist ein sehr robustes Streaming-Videoprotokoll, das von Apple Inc. implementiert wurde. HLS verwendet HTTP-Transaktionen, die Firewalls und Proxys durchlaufen und problemlos über CDNs verteilt werden können. Daher kann diese Technologie eine viel größere Zielgruppe erreichen als RTP oder andere UDP-basierte Protokolle. Ein Großteil des heutigen Online-Live-Streaming-Videos wird von teuren Systemen gehostet, die HLS verwenden. Diese sind jedoch im Allgemeinen teuer und erfordern viele Serverressourcen. Dieses Tutorial zeigt Ihnen, wie Sie ein sehr erschwingliches Ubuntu 14.04 VULTR VPS einrichten, um HLS-Live-Streaming-Ereignisse nur mit Open Source-Software durchzuführen.

Der erste Schritt besteht darin, Ihren Server gemäß dem Vultr Doc " Setup Nginx-RTMP on Ubuntu 14.04 " zu lesen und einzurichten . Die Anweisungen in diesem Dokument waren zum Zeitpunkt des Schreibens die umfassendsten für die Einrichtungsphase. Ich würde erwähnen, dass Sie möglicherweise "nginx-1.7.5" durch "nginx-1.9.4" ersetzen möchten oder was auch immer die neueste Version von Nginx verfügbar ist. Der andere Vorschlag besteht darin, Nginx mit dem HTTP-Stub-Statusmodul zu kompilieren, um selbst zu überwachen, wie viele Live-HLS-Viewer Sie später haben.

Anstatt zu kompilieren mit:

./configure --with-http_ssl_module  --add-module=../nginx-rtmp-module-master

Verwenden Sie diese Zeichenfolge in der im erforderlichen Dokument beschriebenen Vorgehensweise:

./configure --with-http_ssl_module --with-http_stub_status_module --add-module=../nginx-rtmp-module-master

Das Beispiel in diesem Lernprogramm erstellt sowohl "Live" - ​​als auch "Mobil" -Streams (optimiert) und verwendet ffmpeg (im vorherigen Lernprogramm installiert), um den bitratenangepassten, für Mobilgeräte optimierten HLS-Stream zu generieren. Das Beispiel zeigt auch, wie der Server veranlasst wird, Ihre Live-Streams automatisch aufzuzeichnen, und wie Sie die Aufzeichnungen als Video-on-Demand-Wiedergabedienst (VOD) wiedergeben können.

Erstellen Sie zunächst die Ordnerstrukturen, die für die Live- und mobilen HLS-Manifeste und Videofragmente erforderlich sind:

sudo mkdir /HLS
sudo mkdir /HLS/live
sudo mkdir /HLS/mobile
sudo mkdir /video_recordings
sudo chmod -R 777 /video_recordings

Es ist wahrscheinlich eine gute Idee, Ihre Firewall einzuschalten, wenn Sie dies noch nicht getan haben. In diesem Fall müssen Sie Datenverkehr in die von Nginx und HLS verwendeten Ports zulassen. Wenn Sie vorerst ohne Firewall ausgeführt werden möchten, ignorieren Sie den folgenden Abschnitt ufw.

sudo ufw limit ssh
sudo ufw allow 80
sudo ufw allow 1935
sudo ufw enable

HLS-Streaming erfordert eine erheblich andere Nginx-Konfiguration als die RTMP-Konfiguration im ersten Artikel. Bearbeiten Sie Ihre nginx.confDatei wie folgt und ersetzen Sie "my-ip" und "my-stream-key" durch Ihre Daten. Sie können alles verwenden, was Sie für "my-stream-key" möchten. Es ist nur ein Wort, das für Sie einzigartig und hilfreich ist. Möglicherweise möchten Sie zuerst Ihre ursprüngliche Konfigurationsdatei sichern und dann meine bereitgestellten Konfigurationsinformationen in den Editor einfügen und alles ersetzen, was dort vorhanden war:

sudo cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.original
sudo nano /usr/local/nginx/conf/nginx.conf

Neue nginx.conf:

worker_processes  1;
error_log  logs/error.log debug;
events {
worker_connections  1024;
}
rtmp {
server {
listen 1935;
allow play all;

#creates our "live" full-resolution HLS videostream from our incoming encoder stream and tells where to put the HLS video manifest and video fragments
application live {
allow play all;
live on;
record all;
record_path /video_recordings;
record_unique on;
hls on;
hls_nested on;
hls_path /HLS/live;
hls_fragment 10s;

#creates the downsampled or "trans-rated" mobile video stream as a 400kbps, 480x360 sized video
exec ffmpeg -i rtmp://192.168.254.178:1935/$app/$name -acodec copy -c:v libx264 -preset veryfast -profile:v baseline -vsync cfr -s 480x360 -b:v 400k maxrate 400k -bufsize 400k -threads 0 -r 30 -f flv rtmp://192.168.254.178:1935/mobile/$;
}

#creates our "mobile" lower-resolution HLS videostream from the ffmpeg-created stream and tells where to put the HLS video manifest and video fragments
application mobile {
allow play all;
live on;
hls on;
hls_nested on;
hls_path /HLS/mobile;
hls_fragment 10s;
}

#allows you to play your recordings of your live streams using a URL like "rtmp://my-ip:1935/vod/filename.flv"
application vod {
play /video_recordings;
}
}
}


http {
include       mime.types;
default_type  application/octet-stream;

server {
listen 80;
server_name 192.168.254.178;

#creates the http-location for our full-resolution (desktop) HLS stream - "http://my-ip/live/my-stream-key/index.m3u8"      
location /live {
types {
application/vnd.apple.mpegurl m3u8;
}
alias /HLS/live;
add_header Cache-Control no-cache;
}

#creates the http-location for our mobile-device HLS stream - "http://my-ip/mobile/my-stream-key/index.m3u8"        
location /mobile {
types {
application/vnd.apple.mpegurl m3u8;
}
alias /HLS/mobile;
add_header Cache-Control no-cache;
}   

#allows us to see how stats on viewers on our Nginx site using a URL like: "http://my-ip/stats"     
location /stats {
stub_status;
}

#allows us to host some webpages which can show our videos: "http://my-ip/my-page.html"     
location / {
root   html;
index  index.html index.htm;
}   
}
}

Drücken Sie Strg + X zu verlassen. Sagen Sie "Ja", um die Änderungen zu speichern.

In dieser nginx.confDatei finden Sie klare Anweisungen und Beispiele für die möglichen Variablen, wenn Sie Ihre bevorzugte Suchmaschine nach "nginx-rtmp-Direktiven" abfragen. Ich verwende seit einigen Jahren nginx-rtmp mit HLS, ohne die Anweisungen "Veröffentlichung zulassen" und "Veröffentlichung verweigern" zu verwenden, und ich habe keine Instanzen von Personen gesehen, die meine Videoserver verwenden / in diese eindringen. Deshalb habe ich diese Richtlinien hier nicht aufgenommen. Lesen Sie diese Anweisungen und fügen Sie sie hinzu, wenn Sie möchten.

Nach dem Ändern der nginx.confDatei müssen Sie Nginx neu starten, um die neue Konfiguration zu verwenden:

sudo service nginx restart

Achten Sie genau auf Nginx-Fehlermeldungen und beheben Sie alle Fehler, die möglicherweise durch Rechtschreibfehler, Ordnerbesitz oder Berechtigungsprobleme verursacht wurden. Wenn Sie keine Fehlermeldungen haben, können Sie Ihren Codierungsdatenstrom erstellen.

Sie benötigen einen Video-Encoder, um den Stream zu erstellen. Ich verwende OBS (Open Broadcaster Software) - Open Source und funktioniert gut für mich. Es stehen andere Lösungen zur Auswahl, die nicht in diesem Lernprogramm enthalten sind. Ich werde nicht alles über die Konfiguration eines RTMP-Video-Encoders behandeln. Sie alle erfordern jedoch ungefähr die gleichen Eingangsvariablen. Die wichtigsten Einstellungen, die Sie eingeben müssen, um meine genaue nginx.confKonfiguration zu verwenden und auf den meisten Playern / Browsern / Plattformen gut zu funktionieren, sind folgende:

  1. Encoder-x264
  2. Variable Bitrate (nicht CBR oder konstante Bitrate), höchste Qualität
  3. Maximale Bitrate-600kbps
  4. Audio-Codec-AAC
  5. Audio-Format-44.1khz
  6. Audio-Bitrate-64kbps
  7. FMS URL- "rtmp: // my-ip: 1935 / live"
  8. Stream Key- "Mein-Stream-Key"
  9. Auflösung 640 x 480
  10. FPS (Bilder pro Sekunde) -30
  11. CFR (Constant Frame Rate) - Ja
  12. Keyframe-Intervall - 2 Sekunden (ein Keyframe alle 2 Sekunden)
  13. x264-Codierung der Profilbasislinie (funktioniert möglicherweise mit main - hängt vom verwendeten Player ab)
  14. x264 CPU Present-veryfast

Ich empfehle, verschiedene Encoder auszuprobieren und mit ihnen zu experimentieren. Möglicherweise möchten Sie ein breites Seitenverhältnis - oder Ihre Kamera (oder andere Sendungsmaterialien) verlangen dies möglicherweise. Wenn ja, müssen Sie diese Informationen in Ihrem Encoder und auch das Seitenverhältnis ändern, das im Abschnitt exec-ffmpeg der von nginx.confmir angegebenen Datei aufgeführt ist. Andernfalls erhalten Sie einige doof aussehende Video-Feeds.

Sobald Ihr Encoder eingerichtet ist, können Sie alles testen. Starten Sie den Encoder mit Ihrer Webcam oder einem darauf laufenden Testfutter. Sie können Ihre Sendung zu diesem Zeitpunkt mit dem VLC-Player über folgende URLs anzeigen:

http://my-ip/live/my-stream-key/index.m3u8
http://my-ip/mobile/my-stream-key/index.m3u8

Diese sind für Ihre Haupt- und Ihre mobilen Videostreams vorgesehen. Ersetzen Sie Ihre IP und streamen Sie den Schlüssel entsprechend.

Nachdem Sie Ihre erste Stream-Prüfung erfolgreich gesendet haben (über ssh oder ftp), wurde Ihre Live-Übertragung im /video_recordingsOrdner auf Ihrem Vultr VPS aufgezeichnet. Sie können auch versuchen, diese aufgezeichnete Datei in VLC mit einer URL wie der folgenden abzuspielen:

rtmp://my-ip/vod/filename.flv

Nginx-Statistiken sind ebenfalls verfügbar (mit Nginx stub_status). Um Besucher- / Zuschauerstatistiken anzuzeigen, greifen Sie auf Folgendes zu:

http://my-ip/stats

Um Ihr Video auf einer Webseite anzuzeigen, benötigen Sie einen einbettbaren Player. Es stehen viele einbettbare Player zur Verfügung, mit denen HLS-Videos abgespielt werden können. Ich benutze JW Player seit einigen Jahren, aber die kostenlose Version wird HLS nicht spielen. Flowplayer und Bitdash von Bitmovin (unter anderem) sind großzügig genug, um eine nichtkommerzielle Version ihrer Player kostenlos anzubieten, mit der Ihr HLS-Stream in eine Webseite eingebettet wird. Für diesen Artikel habe ich beide ausprobiert und festgestellt, dass beide recht gut mit meinem Vultr / Nginx-basierten Videoserver funktionieren. Ich werde kurz zeigen, wie ich Flowplayer mit meiner Testbed-Maschine zum Laufen gebracht habe.

Wenn Sie Live-HLS-Streaming regelmäßig, nachhaltig oder kommerziell nutzen möchten, empfehle ich Ihnen, eine Lizenz von Flowplayer oder einem beliebigen Player zu erwerben, für den Sie sich entscheiden. Sie erhalten einen Player mit weniger Einschränkungen und mehr Funktionen, der Ihrer Organisation zugeordnet werden kann. Sie erhalten auch Unterstützung - was sehr wichtig sein kann. Abgesehen vom Vultr VPS sind dies wirklich die einzigen mit dem Projekt verbundenen Kosten.

Bevor Sie etwas anderes tun, ist es wichtig, die sogenannten "domänenübergreifenden" Einschränkungen zu beachten, die andernfalls Ihre Fähigkeit zum Streamen auf eine Webseite / Website beeinträchtigen würden. Erstellen Sie eine crossdomain.xmlDatei in Ihrem nginx/htmlOrdner und geben Sie Anweisungen ein, damit Daten zwischen Domänen fließen können:

sudo nano /usr/local/nginx/html/crossdomain.xml

Kopieren Sie zuerst (von dieser Seite) und fügen Sie dann (Rechtsklick) die folgenden XML-Daten in das Feld des Nano-Editors ein:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*"/>
</cross-domain-policy>

Drücken Sie Strg + O , um zu schreiben, und dann Strg + X , um die Datei auf der Festplatte zu speichern und zu beenden.

Ich habe mir HTML5 (Version 6.0.3) von Flowplayer geholt, das mir beim Entpacken eine Reihe von Dateien und einen Ordner gab. Ich habe alle Dateien und den Ordner in einen Unterordner des Nginx / HTML-Stammordners hochgeladen, den ich "flowplayer" nannte. Der genaue Weg war /usr/local/nginx/html/flowplayer.

Um unser Video zu testen, wenn es in eine Webseite eingebettet ist, erstellen Sie mit nano einige HTML-Dateien im Stammverzeichnis des Nginx / HTML-Ordners und füllen Sie sie mit den folgenden Inhalten.

Datei:

sudo nano /usr/local/nginx/html/hls.html

HTML Quelltext:

<!doctype html>
<head>
<link rel="stylesheet" href="#">
</head>

<body>
640x480 664kbps (live) Desktop Browsers<br>
<div style="width:640px;" class="flowplayer" data-swf="flowplayer/flowplayer.swf" data-ratio="0.75">
<video>
<source type="application/x-mpegurl" src="">
</video>
</div>
<br><br>
480x360 464kbps (mobile) Mobile Browsers <br>
<div style="width:480px;" class="flowplayer" data-swf="flowplayer/flowplayer.swf" data-ratio="0.75">
<video>
<source type="application/x-mpegurl" src="">
</video>
</div>
</body>

Datei:

sudo nano /usr/local/nginx/html/hls_progressive.html

HTML Quelltext:

<!doctype html>
<head>
<link rel="stylesheet" href="#">
<style> .flowplayer { width: 640px; } </style>
</head>

<body>
<div class="flowplayer" data-swf="flowplayer/flowplayer.swf" data-ratio="0.75">
<video>
<source type="application/x-mpegurl" src=""> 
<source type="application/x-mpegurl" src="">
</video>
</div>
<br>
</body>

Stellen Sie sicher, dass Sie "my-ip" und "my-stream-key" durch Ihre Daten ersetzen.

Sie müssen den Pfad flowplayer/skin/functional.cssfür das "#" - Zeichen im Stylesheet ersetzen href="#". Die Tutorial-Software entfernt den Pfad. Sie müssen in einer URL im füllen src=""Teil - durch die Tutorial Software, Nutzung gezupft wird http://my-ip/live/my-stream-key/index.m3u8und http://my-ip/mobile/my-stream-key/index.m3u8jeweils. Sie müssen auch Skript- srcTags im Kopf für jquery-1.11.2.min.jsund für hinzufügen flowplayer.min.js. Die Tags werden von der Tutorial-Software entfernt. example htmlInformationen zum Erstellen dieser Tags finden Sie in der Datei, die im Flowplayer-Kit enthalten ist.

Starten Sie den Encoder mit Ihrer Webcam oder einem darauf laufenden Testfutter. Sie können Ihre Sendung in einem Browser unter folgenden URLs anzeigen:

http://my-ip/hls.html
http://my-ip/hls_progressive.html

Die erste Seite zeigt einfach jeden Ihrer Streams - den Haupt- und den mobilen Plattform-Stream. Sie können beide starten und anzeigen. Sie werden feststellen, dass der Stream der mobilen Plattform kleiner ist. Diese Schritte dienen nur dazu, sicherzustellen, dass alles läuft.

Die zweite Seite zeigt einen einzelnen Stream. Es ist jedoch so eingerichtet, dass es als "progressives Streaming" bezeichnet wird. Dies bedeutet, dass sowohl ein Server als auch ein Player versuchen, dem Zuschauer beim Abspielen des Videos den Stream mit hoher Bitrate und hoher Qualität zu geben, wenn die Verbindung des Zuschauers dies aufrechterhalten kann. Wenn ihre Verbindung schlecht ist und die Verbindung nicht aufrechterhalten werden kann, wird der Stream mit niedrigerer Bitrate (mobil) angezeigt, dessen Bandbreite um 200 kbit / s niedriger ist. Wenn Sie möchten, können Sie mit ffmpeg abgestufte, progressive Streams erstellen und diese anhand meines Beispiels konfigurieren.

Ich habe diese Konfiguration auf einem einzelnen Kern, 1 GB Vultr VPS, getestet und festgestellt, dass mit einem einzelnen Live-Stream und dem mit ffmpeg erstellten trans-bewerteten mobilen Stream die CPU-Auslastung weniger als 35% betrug und nur 100 MB verbraucht wurden meine 1 GB RAM. Das ist ein sehr effizientes Setup.

Wenn Sie Videos streamen möchten, deren Pixelgröße viel größer als die von SD ist, müssen Sie möglicherweise ein leistungsfähigeres VPS verwenden. Ich war neugierig darauf und habe meinen Haupt-Stream auf 1280 x 960 Pixel und 2 Mbit / s ausgeführt - was die Dinge zusätzlich belastet. Der VPS verwendete jedoch immer noch nur 50% der CPU und die Speichernutzung blieb bei 100 MB. Ich habe ein Dutzend Viewer / Browser hinzugefügt und es machte fast keinen Unterschied in der Auslastung des VPS - nur die verwendete Bandbreite stieg. Ich bin sicher, dass das Erstellen zusätzlicher trans-bewerteter Streams mit ffmpeg das System weiterhin zusätzlich belasten würde.

Ich habe diesen Servertyp in Produktionsumgebungen mit 50 bis 100 gleichzeitigen Benutzern verwendet und festgestellt, dass die Ressourcennutzung mit zunehmenden Viewer-Verbindungen nur sehr wenig gestiegen ist. Experimentiere damit. Ich denke jedoch, dass die meisten Benutzer gerne einen Single-Core-VPS mit 1 GB verwenden würden. Viel Spaß mit Ihrem neuen HLS-Streaming-Server!



Leave a Comment

So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS

So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS

Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i

So installieren Sie Blacklistd unter FreeBSD 11.1

So installieren Sie Blacklistd unter FreeBSD 11.1

Einführung Jeder Dienst, der mit dem Internet verbunden ist, ist ein potenzielles Ziel für Brute-Force-Angriffe oder ungerechtfertigten Zugriff. Es gibt Tools wie fail2ba

Richten Sie einen TeamTalk-Server unter Linux ein

Richten Sie einen TeamTalk-Server unter Linux ein

TeamTalk ist ein Konferenzsystem, mit dem Benutzer hochwertige Audio- / Videogespräche führen, Text chatten, Dateien übertragen und Bildschirme freigeben können. Es i

So installieren und konfigurieren Sie CyberPanel auf Ihrem CentOS 7-Server

So installieren und konfigurieren Sie CyberPanel auf Ihrem CentOS 7-Server

Verwenden Sie ein anderes System? Einführung CyberPanel ist eines der ersten Control Panels auf dem Markt, das sowohl Open Source als auch OpenLiteSpeed ​​verwendet. Was ist das?

Installieren Sie eSpeak unter CentOS 7

Installieren Sie eSpeak unter CentOS 7

Verwenden Sie ein anderes System? ESpeak kann TTS-Audiodateien (Text-to-Speech) generieren. Diese können aus vielen Gründen nützlich sein, z. B. um Ihr eigenes Turin zu erstellen

So installieren Sie Thelia 2.3 unter CentOS 7

So installieren Sie Thelia 2.3 unter CentOS 7

Verwenden Sie ein anderes System? Thelia ist ein Open-Source-Tool zum Erstellen von E-Business-Websites und zum Verwalten von Online-Inhalten, die in PHP geschrieben wurden. Thelia Quellcode i

Installieren von Fuel CMS unter Ubuntu 16.04 LTS

Installieren von Fuel CMS unter Ubuntu 16.04 LTS

Verwenden Sie ein anderes System? Fuel CMS ist ein CodeIgniter-basiertes Content-Management-System. Der Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie t

So installieren Sie Cockpit unter CentOS 7

So installieren Sie Cockpit unter CentOS 7

Cockpit ist ein kostenloses Open Source-Programm für die Linux-Serververwaltung. Es ist sehr leicht und hat eine schöne, einfach zu bedienende Weboberfläche. Es erlaubt System

So richten Sie ein GitHub Style Wiki mit Gollum unter CentOS 7 ein

So richten Sie ein GitHub Style Wiki mit Gollum unter CentOS 7 ein

Gollum ist die Git-basierte Wiki-Software, die als Backend des GitHub-Wikis verwendet wird. Durch die Bereitstellung von Gollum können Sie ein GitHub-ähnliches Wiki-System auf Ihnen hosten

So installieren Sie Gitea unter Fedora 29

So installieren Sie Gitea unter Fedora 29

Verwenden Sie ein anderes System? Gitea ist ein alternatives Open-Source-Versionskontrollsystem, das von Git unterstützt wird. Gitea ist in Golang geschrieben und ist

So stellen Sie Ghost v0.11 LTS unter Ubuntu 16.04 bereit

So stellen Sie Ghost v0.11 LTS unter Ubuntu 16.04 bereit

Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird

So installieren Sie Paste 2.1 auf einem Fedora 26 LAMP VPS

So installieren Sie Paste 2.1 auf einem Fedora 26 LAMP VPS

Verwenden Sie ein anderes System? Paste 2.1 ist eine einfache und flexible, kostenlose und Open-Source-Pastebin-Anwendung zum Speichern von Code, Text und mehr. Es war ursprünglich

So installieren Sie Pip unter Linux

So installieren Sie Pip unter Linux

Pip ist ein Tool zum Verwalten von Python-Paketen. Die Verwendung eines Paketmanagers ermöglicht eine effiziente Verwaltung Ihres Servers. In diesem Tutorial erkläre ich, wie t

So installieren Sie YOURLS unter CentOS 7

So installieren Sie YOURLS unter CentOS 7

YOURLS (Your Own URL Shortener) ist eine Open-Source-Anwendung zur URL-Verkürzung und Datenanalyse. In diesem Artikel werden wir den Installationsprozess behandeln

Installieren von Docker unter Ubuntu 14.04

Installieren von Docker unter Ubuntu 14.04

Verwenden Sie ein anderes System? Docker ist eine Anwendung, mit der Programme bereitgestellt werden können, die als Container ausgeführt werden. Es wurde im beliebten Go-Programm geschrieben

So installieren Sie LimeSurvey unter CentOS 7

So installieren Sie LimeSurvey unter CentOS 7

LimeSurvey ist ein kostenloses und Open-Source-Online-Umfragetool, das häufig zum Veröffentlichen von Online-Umfragen und zum Sammeln von Umfrage-Feedback verwendet wird. In diesem Artikel werde ich

So installieren und konfigurieren Sie CyberPanel unter Ubuntu 18.04 LTS

So installieren und konfigurieren Sie CyberPanel unter Ubuntu 18.04 LTS

Verwenden Sie ein anderes System? Einführung CyberPanel ist eines der ersten Control Panels auf dem Markt, das sowohl Open Source als auch OpenLiteSpeed ​​verwendet. Was ist das?

Installieren Sie Java SE unter CentOS

Installieren Sie Java SE unter CentOS

Einführung Java ist eine beliebte Softwareplattform, mit der Sie Java-Anwendungen und -Applets in verschiedenen Hardwareumgebungen entwickeln und ausführen können. Es gibt

So installieren Sie SonarQube unter Ubuntu 16.04

So installieren Sie SonarQube unter Ubuntu 16.04

Verwenden Sie ein anderes System? SonarQube ist ein Open Source-Tool für die Entwicklung von Qualitätssystemen. Es ist in Java geschrieben und unterstützt mehrere Datenbanken. Es bietet

So installieren Sie dotCMS unter Ubuntu 16.04

So installieren Sie dotCMS unter Ubuntu 16.04

Verwenden Sie ein anderes System? DotCMS ist ein Open-Source-Content-Management-System für Unternehmen, das in Java geschrieben wurde. Es enthält fast alle erforderlichen Funktionen

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.