4D Server ist der multi-user, cross-plattform Daten- und Anwendungsserver für 4D.
Mit 4D Server können Sie multi-user Datenbanken und eigene Anwendungen in einer Client/Server-Architektur erstellen und einsetzen. Die plattformunabhängige Client/Server Architektur verwaltet nahtlos Anwendungen für remote 4D unter Windows und auf Macintosh. 4D Server bietet professionell ausgerichtete Entwicklungswerkzeuge, volle Skalierbarkeit, Datensicherheit und Connectivity Optionen für Unternehmenssysteme.
4D Server liefert eine vollständig integrierte Architektur, wobei Client und Server auf dieselbe 4D Applikation zugreifen. 4D Server befreit Entwickler von der Notwendigkeit, separate front-end und back-end Applikationen einzurichten. Darüberhinaus ist 4D Server ein “zero admin” Server. Er lässt sich leicht installieren, einsetzen und verwalten und ist äußerst kosteneffektiv.
4D Server füllt die Lücke zwischen low-end File-sharing basierten Systemen und komplexen SQL-basierten RDBMS. Jede 4D Server Applikation interagiert mühelos mit vorhandenen Unternehmensdatenbanken wie Oracle, Sybase, oder jedem ODBC kompatiblem Server. 4D Server erfüllt die Ansprüche von Workgroups in Unternehmen jeglicher Größe.
Mit 4D Server gibt es keinen Unterschied zwischen front-end und back-end Anwendungen. Client Software und Server Anwendung sind zwei Seiten desselben Produkts, nämlich 4D. Die 4D Server Anwendung selbst ist in zwei Teile gegliedert – 4D Server und 4D im remote Modus – diese entsprechen den Elementen der Client/Server Architektur.
4D Server, der Motor der Datenbank, liegt auf dem Server-Rechner. Er speichert und verwaltet die Datenbank auf dem Server und erlaubt Benutzern, von ihren eigenen Rechnern (Clients) aus in der Datenbank zu arbeiten.
Die 4D Anwendung liegt auf jedem Client-Rechner. Sie kann im lokalen oder im remote Modus verwendet werden. Im lokalen Modus arbeiten Benutzer mit einer Datenbank oder einer 4D Anwendung, die lokal auf Ihrem Rechner gespeichert ist. Im remote Modus können Benutzer auf die Datenbank auf dem Server zugreifen und verschiedene Operationen ausführen. Sie können Daten hinzufügen, Berichte erstellen und das Design der Datenbank verändern. Alles, was mit 4D im lokalen Modus möglich ist, kann genauso mit 4D Server und 4D im remote Modus ausgeführt werden.
Weder zusätzliche Middleware noch weitere Entwicklungsphasen sind für den Einsatz in einer Client/Server-Umgebung erforderlich. 4D und 4D Server nutzen dieselben Tools für die Benutzeroberfläche, dieselbe Sprache und dasselbe Datenmanagement-System.
Jede lokale Anwendung, die für eine Plattform (Windows oder Macintosh) erstellt wurde, kann mühelos auf eine Client/Server-Lösung für Arbeitsgruppen skaliert werden. Genauso ist umgekehrt die Abwärtsskalierung einer mit 4D Server generierten Anwendung auf eine eigenständige Anwendung im lokalen Modus möglich.
4D Server profitiert von dem hohen Maß an Benutzerfreundlichkeit in 4D. 4D Server ist ein echtes Plug&Play-System (PNP).
4D Server Verwaltungsfenster
Grafisch übersichtlich zusammengefasste Informationen: Das Verwaltungsfenster von 4D Server zeigt automatisch alle wichtigen Informationen an: der für 4D Server reservierte Speicher, der Daten-Cache, Anzahl und Name der angemeldeten Benutzer, Anzahl und Status der laufenden Prozesse, Überwachung von Backups und Anfragen, sowie der gesamten Serveraktivität.
Automatische Konfigurierung und Skalierbarkeit: 4D Server ist so konzipiert, dass das Hinzufügen neuer Clients und neuer Plug-Ins sowie für die Anbindung an andere Systeme ohne Neukonfigurierung oder Neuprogrammierung möglich ist.
Automatische und dynamische Aktualisierung sowie Versionskontrolle von Client-Workstations: Alle angemeldeten 4D Rechner werden automatisch und dynamisch aktualisiert, wenn die Datenbank modifiziert oder ein Plug-In bzw. eine Komponente hinzugefügt, entfernt oder geändert wird. Haben Sie eine eigene Client/Server Anwendung erstellt, können Sie auch automatisch neue Versionen der ausführbaren Client-Anwendungen laden, wenn die 4D Server Anwendung aktualisiert wird.
Automatische asynchrone Verbindungen über das Standardprotokoll TCP/IP: 4D Server und 4D kommunizieren über das TCP/IP Protokoll transparent miteinander, unabhängig auf welcher Plattform Client und Server laufen. Das TCP/IP Protokoll ist in alle Betriebssysteme integriert, so dass keine zusätzliche Installation notwendig ist.
Simultane Verwaltung von Sitzung und Status der SQL und HTTP Verbindungen: 4D Server erstellt und verwaltet automatisch eine aktuelle Arbeitsumgebung für jede Tabelle-/Prozess-/Benutzer-Kombination. Diese sitzungsorientierte Architektur macht es möglich, dass jeder Prozess Daten für jeden einzelnen Benutzer unabhängig und simultan verwalten kann. Der SQL Server von 4D Server verwaltet automatisch interne oder externe SQL Anfragen. Der HTTP Server in 4D Server antwortet auf HTTP Anfragen und auf SOAP Anfragen, wenn er aktiviert ist.
Automatische Datensatzsperre: 4D Server ermöglicht das automatische Sperren und Freigeben von Datensätzen, wodurch Probleme vermieden werden, die häufig durch das Ändern gerade verwendeter Objekte entstehen. Das Sperren von Datensätzen verhindert ebenfalls Probleme, die beim Sperren von Seiten oder Dateien auftreten können.
In der Benutzeroberfläche integriertes Meldungssystem: Die ursprünglich desktop-orientierte 4D Server Software umfasst sämtliche Aspekte einer Bedienerführung, vereint mit modernen, integrierten Entwicklungsumgebungen. So kann 4D Server Clients über Wartungsarbeiten am Server informieren, etwa über geplante Unterbrechungen, Backups und vieles mehr.
Automatisierte Start- und Abmeldemethoden: 4D Server löst automatisch fünf Datenbankmethoden als Antwort auf spezifische Ereignisse aus: On Server Startup, On Server Shutdown, On Server Open Connection, On Server Close Connection und On Web Connection. Die Datenbankmethode On Server Startup kann automatisch alle Objekte initialisieren und laden, die während der Sitzung benötigt werden.
Zusätzlich zu den Leistungsmerkmalen von 4D bietet 4D Server folgende Funktionalitäten:
Datenverwaltung im Mehrplatzbetrieb: Mehrere Benutzer können gleichzeitig Operationen in der Datenbank ausführen. Sie können z.B. in Datensätzen, die in der gleichen oder in verschiedenen Dateien liegen, zur gleichen Zeit Datensätze hinzufügen, ändern, löschen, sortieren oder ausdrucken. Das integrierte System zum Sperren gerade verwendeter Datensätze sorgt dafür, dass die Datenintegrität gewahrt bleibt.
Enwicklung im Team: Mehrere Entwickler können gleichzeitig eine Datenbank einrichtenund strukturieren. So können z.B. mehrere Benutzer zur selben Zeit Dateidefinitionen bearbeiten, Layouts, Skripte und Methoden anlegen und verändern. Das integrierte System zum Sperren gerade verwendeter Objekte und die Versionskontrolle über ein Check-in/Check-out-System sorgen für die Integrität Ihrer Datenbank.
Plattformunabhängige Client /Server Architektur: 4D Server steuert die Datenbank für Clients unter Windows und auf Mac OS gleichermaßen. Dazu gehört die simultane und plattformübergreifende Entwicklung im Team ebenso wie eine transparente Schnittstelle zu allen eingegebenen bzw. geänderten Daten auf den Arbeitsstationen in einer heterogenen Hardware Umgebung.
4D Plug-In Architektur für Windows und Mac OS: In der Windows und Mac OS Version von 4D Server können Sie sowohl Plug-Ins für Windows als auch für Mac OS installieren. So lassen sich plattformunabhängige 4D Plug-Ins schnell und problemlos zwischen 4D Server und 4D aufteilen, unabhängig von der Plattform der Arbeitsstation.
Integrierter HTTP Server: Wie 4D im lokalen Modus enthalten auch 4D Server und 4D im remote Modus eine HTTP Engine, mit der Sie 4D Datenbanken im Web publizieren können. Sie müssen dafür weder ein Datenbanksystem, noch eine Web Site entwickeln, noch eine CGI Schnittstelle zwischen beiden einrichten. Ihre Datenbank ist Ihre Web Site. Sie können auch jede Arbeitsstation in einen Web Server umwandeln. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Abschnitt SORT ARRAY.
Sicherheit der Verbindung via SSL (Secured Socket Layer): Sie können 4D Server Verbindungen verschlüsseln. Die “klassische” Client/Server Architektur kann das SSL Verschlüsselungssystem verwenden. Weitere Informationen dazu finden Sie im Abschnitt Client/Server Verbindungen verschlüsseln.
Trigger: Ein Trigger ist eine Methode, die einer Tabelle zugewiesen ist. Demzufolge ist es eine Tabelleneigenschaft. Trigger rufen Sie nicht selbst auf, sie werden automatisch von der 4D Datenbank Engine ausgelöst, wenn Sie Datensätze in der Tabelle bearbeiten, d.h. Datensätze hinzufügen, ändern und löschen. Mit 4D Server werden Trigger auf dem Server-Rechner ausgeführt. Die über Trigger festgelegten Regeln für die Datenbank gelten für alle Arbeitsstationen, egal, ob es sich um 4D oder um eine über ODBC angemeldete Anwendung handelt. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Abschnitt ARRAY REAL.
Serverprozeduren: Sie können 4D Methoden erstellen, die in einem eigenen Prozess lokal auf dem Server-Rechner laufen. In der Client/Server Terminologie wurde dafür der Begriff “Serverprozedur” eingeführt. 4D Server dagegen bietet eine Architektur, die weit über das gängige Konzept von Serverprozeduren hinausgeht. Mit 4D Server ist eine Serverprozedur ein eigener Server Prozess, mit dem Ihr Code asynchron und unabhängig von allen anderen Prozessen auf dem Server- oder Client-Rechner läuft. In der herkömmlichen Client/Server Architektur führt eine Serverprozedur eine Anweisung aus und gibt ein Ergebnis synchron oder asynchron zurück. Mit 4D Server können Sie eine Serverprozedur starten, die während einer ganzen Client/Server Sitzung läuft und Anfragen von Clients beantwortet. Sie können auch genauso eine Serverprozedur einrichten, die nicht mit Clients interagiert, sondern Daten mit einem SQL-Server oder einem anderen 4D Server abgleicht. Die Anzahl gleichzeitig ablaufender Serverprozeduren wird nur durch Hardware und Speicher begrenzt. Eine 4D Serverprozedur läuft in ihrem eigenen Prozess und kann so wie jeder andere Benutzerprozess ein individuelles Datenbankkontext haben, z.B. aktuelle Auswahlen. Die 4D Programmiersprache bietet außerdem Befehle, mit denen Client-Prozesse die Prozessvariablen jeder beliebigen Serverprozedur (einschließlich BLOB Variablen) lesen und schreiben können. Dadurch ist eine ausgeklügelte und flexible Kommunikation zwischen Clients und Serverprozeduren möglich. Schließlich können Sie mit Serverprozeduren auch neue und eigene Dienste in 4D Server hinzufügen. Weitere Informationen dazu finden Sie im Abschnitt Serverprozeduren.
Auf Client ausgeführte Serverprozeduren: Mit 4D Server können Sie von einem Server- oder Client-Rechner aus Serverprozeduren auf einem oder mehreren anderen Client-Rechnern ausführen. So können Sie die Verteilung des Arbeitsaufkommens optimieren oder Anwendungen erstellen, welche die Kommunikation zwischen den Clients ermöglicht. Weitere Informationen dazu finden Sie im Abschnitt Serverprozeduren.
Server Pfad: Sie können den Pfad auf eine Serverdatenbank mit einem Benutzerkennwort sichern. Der Benutzer kann sich durch Doppelklick auf ein 4DLink Dokument an die Serverdatenbank anmelden. Weitere Informationen dazu finden Sie im Abschnitt Anmeldung an eine 4D Server Datenbank.
Registrieren als Service: 4D Server lässt sich unter Windows und auf Mac OS als Service starten.
IntegriertesBackup System: 4D Server enthält ein komplettes Backup-Modul mit automatischer Restore-Funktion. Damit können Sie eine Datensicherung im laufenden Betrieb ausführen, ohne die Anwendung zu beenden. Backups lassen sich in regulären Zeitabständen und ohne Einwirken des Benutzers automatisch oder manuell starten. Sie können auch festlegen, dass die Datenbank im Störfall automatisch wiederhergestellt bzw. neu gestartet wird.
Backup durch logisches Spiegeln: Bei kritischen Anwendungen, die z.B. 24 Stunden laufen müssen, können Sie ein Backup durch logisches Spiegeln einrichten. Tritt ein Zwischenfall in der laufenden Datenbank ein, können Sie sofort mit dem Duplikat der Datenbank weiterarbeiten.
Connectivity Plug-Ins: Mit den 4D Connectivity Plug-In (4D ODBC Pro, etc.) können 4D Server und 4D direkt auf andere Systeme zugreifen, z.B. ORACLE oder andere Datenbankserver, die auf ODBC basieren. Zwischen diesen Datenbanken lässt sich Information interaktiv gemeinsam nutzen. Darüberhinaus bietet 4D einen ODBC Treiber für 4D Server, über den ein beliebiger ODBC Client sich an 4D Server anmelden und damit arbeiten kann.