Wie sieht die Verzeichnisstruktur beim openWIM-Server aus?
<2020-05-06>
Beim einem openWIM-Server gibt es einheitliche durchgehende Struktur der Datei-Verzeichnisse. Hier wird erläutert, wie dieses Grundgerüst aussieht.

Die Dateien zum Betrieb des openWIM-Servers befinden sich normalerweise in einem "wim" benannten Verzeichnis. Je nach Betriebssystem (und Laune des Systemmanagers etc.) kann dieses wim-Verzeichnis an der einen oder anderen Stelle platziert werden. In den Scripten werden die Verzeichnis-Positionierung abgefragt bzw. die Pfade relativ adressiert.

Nachfolgend sind die wichtigsten Unterverzeichnisse und Dateien aufgeführt und etwas kommentiert:

  • -
  • certificates (👈???)
  • databases👈
    • -
    • preview👈
      { Die vom "preview"-Service zu verwendende Datenbasis.. Muss vorhanden sein, wenn der "preview"-Service aktiv sein soll. }
      • _io👈
        • project-group-name-A👈
          • dumps👈
            { Bereich für wöchentlich automatisch erstellte Sicherheitskopien zur Projektgruppe der Art "backup_2020w19.json"👈3️⃣ sowie
                Sicherheitskopien von Obj-Daten vom Zeitpunkt der letzten Speicherung in der Art "ObjId 20200504_.json" 3️⃣}
            • project-name-13️⃣
              {Enthält wöchentlich automatisch erstellte Projekt-Backup-Dateien der Art "backup_2020w19.json"}
            • project-name-23️⃣
              { siehe Kommentar bei project-name-1 }
            • ...
          • objData3️⃣
            {Enthält Dateien des Datenbanksystems}
          • objData-mrview-...{Zahlen-/Buchstaben-Folge}3️⃣
            {Diverse vom Datenbanksystem angelegte Verzeichnisse zu ihren Views}
          • words3️⃣
            {Enthält Dateien der Datenbank der Worte}
          • wordsToObj3️⃣
            {Enthält Dateien der Datenbank der Referenzen der Worte auf Artikel und Themen}
        • project-group-name-B👈3️⃣
          {siehe Kommentar bei project-group-name-A}
        • ...
    • retired👈
      {analog untergliedert wie "preview" . Muss vorhanden sein, wenn der "retired"-Service aktiv sein soll.}
    • test👈
      {analog untergliedert wie "preview. Muss vorhanden sein, wenn der "test"-Service aktiv sein soll.}
    • update👈
      {analog untergliedert wie "preview". Muss vorhanden sein, wenn der "update"-Service aktiv sein soll. }
    • www👈
      {analog untergliedert wie "preview". Muss vorhanden sein, wenn der Stndard-Service aktiv sein soll. }
  • files👈
    • -
    • project-name-1👈
      {Enthält Dokumente, Bilddateien etc., die nur im interaktiven Sitzungskontext öffentlich abrufbar sind}
      • priv👈
        {Enthält nicht öffentlich abrufbare Dokumente, Bilddateien etc.}
      • pro👈
        {Enthält öffentlich uneingeschränkt abrufbare Dokumente, Bilddateien etc.}
      • project-name-2👈
      • ...👈
    • 33.2.1👈
      { Verzeichnis mit Script-Dateien etc. zu Server- und Client-Software einer bestimmten Systemversion, hier als Beispiel "33.2.1". Es sind zeitgleich mehrere Versionen vorhanden. Verzeichnisse zu nicht mehr benötigten Versionen werden (auf dem Cloud-Server) gelöscht.}
      • -
      • cloud👈
        • -
        • build2️⃣(👈)
          { Enthält die mittels "Polymer build" zusammengefassten und minimierten Dateien für die Übermittlung an den Browser-Client bzw. die "App" }
          • DEFAULT2️⃣(👈)
            { Die Standard-Aufbereitung der Client-Dateien. Die Unterverzeichnisse und ihre Dateien haben gleiche Aufgaben wie die unverdichteten Verzeichnisse und Dateien.}
            • node_modules2️⃣(👈)
            • projects_modules2️⃣(👈)
              • project-name-12️⃣(👈)
              • project-name-22️⃣(👈)
              • ...2️⃣(👈)
            • src2️⃣(👈)
            • wim_modules2️⃣(👈)
          • es5-bundled2️⃣(👈) { optional, Name nicht fix }
          • es6-bundled2️⃣(👈) { optional, Name nicht fix }
          • es6-unbundled2️⃣(👈) { optional, Name nicht fix }
        • node_modules1️⃣
          { Enthält diverse Javascript-Dateien zur Realisierung des (Daten-)Server-Betriebs }
        • projects_modules👈
          { Für jedes betreute Projekt muss ein Verzeichnis bereitstehen.
          Diese Dateien sind nur für Entwicklung und Fehlerbehebung verfügbar und NICHT im normalen Betrieb.}
          • project-name-1👈
            { Pro Projekt werden spezifische Dateien benötigt. Mindestens werden die Dateien "project-name-modules.js", "project-name-simple-templates.js" und "project-name.css" erwartet }
          • project-name-2👈
          • ...👈
        • src👈
          { Hier stehen die spezifischen Script-Dateien zur Realisierung des (Daten-)Servers. Teilweise werden Dateien auch beim Client und/oder Users-Server verwendet.
          Diese Dateien sind für Clients nur bei der Entwicklung und Fehlerbehebung verfügbar und werden im normalen Betrieb nicht genutzt.}
        • wim_modules👈
          { Hier sind Verzeichnisse mit Script-Dateien enthalten, die für den Betrieb der Clients benötigt werden.
          Diese Dateien sind nur für Entwicklung und Fehlerbehebung verfügbar und NICHT im normalen Betrieb.}

        Weiterhin müssen in diesem "cloud"-Verzeichnis mindestens folgende Dateien enthalten sein:

        • "package.json" { Einstellungen für NPM }
        • "polymer.json" { Einstellungen für polymer build.}
        • "wim-objdata-server.js"  { Das Haupt-Script des Daten-Servers (~ index.js) }
        • Automatisch erstellte Dateien gesellen sich dazu.
           
      • logfiles3️⃣
        { Enthält Protokolldateien zur Analyse von Systemproblemen und zur Betriebs-Optimierung }
      • users👈
        { Enthält alle Script-Dateien für den Users-Server und den Browser-Client einer Systemsoftware-Version}
        • -
        • build2️⃣(👈)
          { Enthält die mittels "Polymer build" zusammengefassten und minimierten Dateien für die Übermittlung an den Browser-Client }
          • DEFAULT2️⃣(👈)
            { Die Standard-Aufbereitung der Client-Dateien}
            • node_modules2️⃣(👈)
            • src2️⃣(👈)
          • es5-bundled2️⃣(👈) { optional, Name nicht fix }
          • es6-bundled2️⃣(👈) { optional, Name nicht fix }
          • es6-unbundled2️⃣(👈) { optional, Name nicht fix }
        • node_modules1️⃣
          { enthält diverse Javascript-Dateien zur Realisierung des Servers für die Nutzer-Verwaltung }
        • src👈
          { enthält diverse Javascript-Dateien zur Realisierung des Browser-Clients für die Nutzer-Verwaltung }
      • Weiterhin sind auf dem Entwicklungs-Server in diesem Verzeichnis die .geany-Dateien für den Quellcode-Editor enthalten ( objData.geany, users.geany, etc.).

    Weiterhin werden im Basisverzeichnis ("wim") mindestens folgende Dateien benötigt, die für alle Service-Versionen der Server gelten:

    • server.json : ACHTUNG: Es ist unbedingt nötig, den Inhalt dieser Datei an die spezifischen Aufgaben des Servers anzupassen ! ! !
    • users-admin.json : Steuerungsdaten für alle Users-Server
    • wim-admin.json : Steuerungsdaten für alle Daten-Server

    Zeichenerklärung:

    • 👈: Bei Neuinstallation das Verzeichnis explizit manuell einzurichten bzw. die Datei dorthin kopieren.
    • 1️⃣: Wird durch NPM bei der Installation erzeugt (einschließlich aller Unterverzeichnisse und darin enthaltener Dateien) => Finger weg!
    • 2️⃣(👈): Wird von Polymer build erzeugt bzw. die auf einem Test-Server erzeugten Dateien werden dorthin kopiert
    • 3️⃣: Wird durch das openWIM-System im laufenden Betrieb erzeugt /aktualisiert.

    Anmerkung: Die obenstehende "Baumstruktur" wurde explizit NICHT als auf- und zuklappbare Darstellung generiert, damit möglichst kein Verzeichnis und keine Datei übersehen werde.

Themen hierzuAssciated topics:

openWIM-Server

Das könnte Sie auch interessierenFurther readings:
Was ist bei der Installation eines openWIM-Servers zu beachten ?
<2020-05-04>
Wenn ein neuer openWIM-Server Installiert wird sind verschiedene Aktionen manuell durchzuführen, weil es derzeit noch kein automatisches Installationsverfahren gibt. Die einzelnen Schritte werden hier vorgestellt.   Mehr »
Allgemeine Objektparameter
Von: @VB <2015-03-20>
Objekte sind Kern des WIM-Systems. Und "Parameter" (also "Datenwerte") sind essentielle Bestandteile der WIM-Objekte. In dieser Info werden Standard-Parameter kurz vorgestellt.   Mehr »
Ausfallsicherheit ("fail save") im Konzept des WIM-Systems
<2013-02-25>
Auch wenn sich die Systemdesigner und -entwickler noch so viele Mühe geben - es ist prinzipiell nicht vermeidbar, dass ein System "ausfällt". Ein wesentliches Konzept des WIM-Systems ist es, solche "Ausfälle" auf möglichst kleine Bereiche einzugrenzen und möglichst "sicher" abzufangen.   Mehr »
Auswahl und Reihenfolge der Dokumente bei INFOS-Listen
<2015-11-07>
An diversen Stellen des WIM-Systems sind Listen von Infos zu finden. Hier werden die Verfahren zur Auswahl und Bestimmung der Reihenfolge der dargestellten Infos vorgestellt.   Mehr »
Standard-Request-Parameter
<2013-06-13>
WIM-Requests haben einen Basis-Satz von Parameter. Diese werden hier beschrieben.   Mehr »
Wie bearbeiten Cloud-Server eintreffende Anforderungen der openWIM-Clients?
Wie sind die Schnittstellen und Funktionen gestaltet?
Von: @VB <2016-10-06>
Von den Internet-Browsern ("Clients") werden die URLs der Projekte aufgerufen. Die URLs führen zum (zuständigen) "Cloud"-Server, der - nach Möglichkeit - die von den Clients gewünschten Aktionen ausführt. Beispielsweise zu ladende Daten liefert.   Mehr »
Wie werden Aufrufe der Basis-URL vom Frontend-Server bearbeitet?
Von: @VB <2015-06-01>
Aufrufe der Projekt-URLs können von verschiedenen Quellen mit verschiedensten Intentionen kommen. Hier sollen die Bearbeitungsvorgänge des Frontend-Servers beschrieben werden.    Mehr »
Die Boot-Vorlage-Datei boot-template.xhtml im Frontend-Server
Von: @VB <2015-05-23>
Für alle Projekte gibt es ein Vorlage-Dokument mit dem Grundgerüst der Basis-Internetseite. Diese Vorlage wird bei jedem Aufruf ihrer Projektseite vom Frontend-Server projekt-, einstellungs- und aufrufspezifisch ergänzt und zu den Clients gesendet.   Mehr »
W🎯 Die openWIM-Version 34 ist einsatzbereit
 Ein Betrieb ohne Nutzung des Legacy-Servers ist möglich
<2019-06-01>
Mit der openWIM-Version 34 ist ein Betrieb völlig unabhängig vom alten Server-System möglich.   Mehr »
Wie werden Zugriffe auf - ggf. nicht vorhandene - Dateien beim Frontend-Server bearbeitet?
<2015-06-01>
Das Starten /Hochfahren der WIM-App ist für die Akzeptanz bei den Nutzern von besonderer Bedeutung. Die angewendeten Verfahren und Randbedingungen werden hier näher betrachtet.   Mehr »
Was ist bei der Implementierung mehrsprachlicher Internetpräsenzen zu beachten?
Von: @VB <2016-10-03>
Wenn Informationssysteme für Nutzer in mehreren Sprachen betrieben werden sollen, sind bei der Implementation verschiedenste Aspekte zu beachten, die hier vorgestellt werden.   Mehr »
Internet-Links für openWIM-Entwickler
<2020-03-10>
In den Weiten des Internets gibt es etliche hilfreiche Internetpräsenzen und Dokumente, die für die Entwickler des openWIM-Systems hilfreich sein können. Hier sind einige aufgelistet:   Mehr »
Daten-Layer und -Aktualisierung
<2013-01-06>
Im WIM-System spielen "Vorlagen" eine bedeutende Rolle. Oftmals wird beim Zugriff auf einen Objekt-Parameter der Wert von einem Vorlage-Objekt geholt.   Mehr »
Bereitstellung von Objektdaten
 
<2019-02-17>
Für die Erarbeitung der Darstellungen werden Objekt-Daten benötigt. Die zur Beschaffung dieser Objektdaten genutzten Verfahren werden hier erläutert.   Mehr »
Spezifische Begriffe im openWIM-System
<2019-02-15>
Im openWIM-System werden verschiedene spezielle Begriffe verwendet. Hier wird deren Bedeutung im openWIM-Kontext erläutert.   Mehr »
Problem: Langsamer Server; scheinbar leere DB; ...
<2013-06-03>
Die Dateien einer Perl-Datenbasis können irgendwie /plötzlich /unerklärlich "kaput gehen". Mögliche Auswirkungen sind sehr vielfältig!   Mehr »
Wie kann der ordnungsgemäße Betrieb von openWIM-Systemen überwacht werden?
Von: @VB <2015-03-16>
Für eine zuverlässige Nutzung von openWIM-Systemen ist es unerlässlich, dass der laufende Betrieb "in Realzeit" überwacht werden kann. Der openWIM-Monitor wird dazu verwendet und hier beschrieben.   Mehr »
Die Bildrechte werden in der Online-Version angegeben.For copyright notice look at the online version.

Bildrechte zu den in diese Datei eingebundenen Bild-Dateien:

Hinweise:
1. Die Bilder sind in der Reihenfolge ihres ersten Auftretens (im Quelltext dieser Seite) angeordnet.
2. Beim Anklicken eines der nachfolgenden Bezeichnungen, wird das zugehörige Bild angezeigt.
3, Die Bildrechte-Liste wird normalerweise nicht mitgedruckt,
4. Bildname und Rechteinhaber sind jeweils im Dateinamen des Bildes enthalten.