Tntnet

Aus MARJORIE-WIKI
Wechseln zu: Navigation, Suche
Tntnet
Tntnet-Logo
Maintainer Tommi Mäkitalo
Aktuelle Version 1.6.3
(3. Juni 2008)
Aktuelle Vorabversion 1.6.99
(13. Juni 2009)
Programmier­sprache C++
Kategorie Server-Software
Lizenz LGPL
http://www.tntnet.org/

Tntnet ist ein freier in C++ geschriebener Webserver, welcher andere C++-Programme zur Bearbeitung von Anfragen als Modul einbinden kann. Damit lassen sich Webapplikationen in C++ entwickeln. Die entsprechenden Schnittstellen werden von Tntnet bereitgestellt, etwa für den Import der per GET oder POST übergebenen Daten, die Kommunikation über das Netzwerksocket und die Parallelverarbeitung der eintreffenden Anfragen. Durch die Verwendung der Programmiersprache C++ können Programmiertechniken wie Objektorientierung, Vererbung und Polymorphismus eingesetzt werden.

Entstehung[Bearbeiten]

Da der weit verbreitete Webserver Apache in der Sprache C geschrieben ist, ist eine Verwendung von C++ zur Entwicklung von Erweiterungen nicht ohne Weiteres möglich. Deshalb entwickelte Tommi Mäkitalo das Framework Tntnet. Tntnet ist also einerseits ein Webserver, der aber im Quellcode vorliegt. So lässt sich der Webserver wie eine Vorlage für eigene Programme verwenden. Fertig übersetzt ergeben sie ein Programm im Binärformat welches einmal gestartet Webanfragen entgegennimmt und mit der integrierten Webapplikation bearbeitet. Die Webapplikation befindet sich zusammen mit dem Serverprozess immer im Arbeitsspeicher. Weitere Bibliotheken stellen Hilfsmittel für den Programmierer bereit.

Bestandteile[Bearbeiten]

Die Programmschnittstellen stellt Tntnet über eine Bibliothek mit dem Namen Cxxtools bereit. Um eine mit Tntnet geschriebene Applikation auf dem eigenen Rechner übersetzen zu können ist die Installation der Cxxtools notwendig.

Mit der Bibliothek Tntdb werden Zugriffe auf Datenbanken abstrahiert. Somit lassen sich Programme entwickeln, die von der eingesetzten Datenbank unabhängig sind. Tntdb stellt die Verbindung zwischen dem in Tntnet laufenden Programm und einer Datenbank, derzeit Postgres, SQLite 3, MySQL oder Oracle, her.

Die Software ist unter den Bedingungen der GNU General Public License (Version 2) erhältlich.

Applikationen[Bearbeiten]

  • tntwiki, eine in C++ programmierte Wiki-Engine welche die Datenbankstruktur von MediaWiki verwendet
  • tntzenoreader, ein Betrachtungsprogramm für die Zeno-Dateien der „Wikipedia-DVD“
  • VDR live-plugin, eine Weboberfläche für Video Disk Recorder, eine freie Software für den Empfang und die Aufnahme von digitalem Fernsehen (DVB)
  • diverse Firmen- und Projekthomepages
  • diverse Beispielapplikationen (im Tntnet-Paket im Ordner /demos/ enthalten)

Ende 2008 entstand aus dem tntzenoreader-Projekt openZIM[1], eine freie Implementierung des aus Zeno entstandenen Dateiformats ZIM (Zeno Improved).

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

Info Sign.svg Dieser Wikipedia-Artikel wurde, gemäß GFDL, CC-by-sa mit der kompletten History importiert.