|
|
■ Programmierhinweise zu Internetseiten
Eine kurze technische Erläuterung zu den Internetseiten bei Agrarliga. Es handelt sich um normale Dateien mit der Dateiendung HTM oder um Dateien ohne Dateiendung (ähnlich einem Ordner). Außerdem gibt es Dateien mit der Dateiendung PDF, der Dateiendung MP4, der Dateiendung BMP und der Dateiendung JPG. Der Provider analysiert die Dateien sehr umfangreich. Dadurch ist das Datenvolumen sehr klein trotz starker Nutzung. Aktuell sind auf dem Server 7,50 Gigabyte Daten in 2994 Dateien. Hochgeladen werden die Dateien mit einem gewöhnlichen Programm via FTP.
Als Webserver wird vom Provider Apache oder NGiNX (Engine X) verwendet. NGINX ist eine von Igor Sysoev entwickelte, unter der BSD-Lizenz veröffentlichte Webserver-Software, Reverse Proxy und E-Mail-Proxy (POP3/IMAP). Nginx wird derzeit (Stand März 2018) bei rund 67 % der 10.000 Webseiten mit dem höchsten Traffic verwendet. Im Februar 2017 betrug der Marktanteil des Nginx-HTTP-Servers in Deutschland 8,57 %, in Österreich 9,55 % und in der Schweiz 10,78 %.
Nginx ist modular aufgebaut und unterstützt durch die verschiedenen Module Techniken wie Lastverteilung und Reverse Proxying, namens- und IP-basierte Virtual Hosts, FastCGI, direkten Zugriff auf den Memcached Cache, SSL, Flash-Video-Streaming, das WebSocket-Protokoll und vieles mehr. Mit dem Naxsi-Modul kann nginx auch als Web Application Firewall fungieren.
Nginx wurde speziell auf die Bedürfnisse der Projekte der großen russischen Suchmaschine Rambler zugeschnitten und wird dort heute noch verwendet. Aufgrund der Vielfältigkeit, der hohen Leistung und der guten Konfigurierbarkeit wird nginx bei vielen anderen großen Services wie WordPress.com, GitHub, SourceForge, ComputerBase, Golem.de, FastMail, Wikimedia, ImageShack, Hulu, Doodle und Netflix eingesetzt. Aufgrund der geringen Größe und der reverse-proxy-Funktionalität ist nginx zudem beliebt, um die wahre Adresse der Kontrollserver von Botnetzen zu verschleiern. Laut der Netcraft-Statistik wurden im Oktober 2015 16,65 % aller Webserver, die in der Statistik mit aufgenommen wurden, mit nginx betrieben; in absoluten Zahlen sind dies 146.229.307. Der zurzeit am weitesten verbreitete Webserver Apache gibt auch weiterhin Teile seiner Marktplatzierung an nginx, den Google Web Server und Microsoft Internet Information Services ab. Gründe hierfür sind der geringere Ressourcenverbrauch, immer weiter gehende Unterstützung von Projekten wie Parallels Plesk und die freie BSD-Lizenz.
In Russland steckt nginx laut der offiziellen Website hinter über 61,6 % aller Domains mit der Endung .ru. Führend ist die alternative Endung .su, bei der der Anteil bei 66,2 % liegt. An dritter Stelle steht mit 60,9 % die Endung .ua, die Top-Level-Domain der Ukraine. Die Endung .by von Weißrussland ist mit 59,6 % weiterhin nur noch auf Platz 4 (Stand: August 2012).
Prinzipiell unterstützt der Server auch Formulare mit einer Skriptsprache und einer Datenbank. Ein Beispiel hierfür ist das Content Management System WordPress. Verwendet wird die Skriptsprache PHP mit der Datenbank MySQL, welche Abfragen im Format SQL auswertet. Gespeichert werden die Daten in einer Tabelle (mit der Bezeichnung wp_posts). Der Datenrahmen besteht aus folgenden Datenfeldern (ID, post_author, post_date, post_date_gmt, post_content, post_title, post_excerpt, post_status, comment_status, ping_status, post_password, post_name, to_ping, pinged, post_modified, post_modified_gmt, post_content_filtered, post_parent, guid, menu_order, post_type, post_mime_type, comment_count). Ein Datenfeld ist das Gleiche wie die Spalte einer Tabelle. Die wichtigste Spalte bei WordPress ist post_content. Diese Spalte ersetzt den Inhalt der Dateien mit der Dateiendung HTM. Sonstige Dateien (z.B. Bilder) werden in einen Ordner für Uploads normal hochgeladen. Mit einer Oberfläche werden die Einträge der Datenbank (wp_posts) verwaltet. Mit der Bezeichnung posts sind Kommentare in einem Forum gemeint. WordPress wird aber hauptsächlich für gewöhnliche Internetseiten verwendet. In Deutschland wird auf 34 % der Internetseiten WordPress verwendet. Notwendig ist WordPress (oder ein ähnliches Programm) für eine Suchfunktion auf einer Internetseite.
In einer "schlampigen" Programmierung wird eine Datenbank, zum Beispiel für eine Suchanfrage, immer vollständig abgerufen.
SELECT * FROM wp_posts WHERE post_content LIKE '%Mietobergrenze%'
Eine Einschränkung vom Speicheraufwand geht mit JOIN, ist aber kompliziert zu programmieren.
SELECT * FROM INNER JOIN (wp_posts, wp_id) WHERE post_content LIKE '%Mietobergrenze%'
(oder ähnlich)
Werden mehr als 1 Gigabyte (oder 2 Gigabyte) Daten verwendet, müssen die Funktionsaufrufe speziell programmiert werden. Es können zum Beispiel mehrere Datenbanken verwendet werden mit einer Auswahl im Funktionsaufruf.
Hin und wieder werde ich an dieser Stelle die Zugriffszahlen der Homepage veröffentlichen (Stand 30. Oktober 2021). Bei einem normalen Webserver können die Anzahl der Dateiaufrufe (Files) 2 Millionen täglich betragen (Daily Avg). Die Anzahl der Seitenaufrufe (Pages) und die Anzahl der Besucher (Visits) können nicht größer sein. Dies sind 400 Verbindungen in der Sekunde. Das Datenvolumen kann 100 Gigabyte täglich betragen (40 Milliarden Kilobyte in 12 Monaten). Die Klickzahlen (Hits) können größer sein wegen externer Verlinkungen (inklusive eingebettete Videos). Für mehr Seitenaufrufe muss ein Cluster verwendet werden (Load Balance, Round Robin etc.), wofür es aber keinen Standard gibt und auch keine Garantie für identische Daten. |
|
|