xb2.net mehrere Ports
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
xb2.net mehrere Ports
wenn ich einen Webserver bauen möchte, der auf mehreren Ports lauschen kann, wie geht man da vor? Gibt es da eine Liste, die man befüllt, oder wird jedesmal eine neue Instanz benötigt?
Im Moment würde ich das über eine Schleife lösen, die dann eben je nach Menge die entsprechenden Instanzen erzeugt.
Der Server muß derzeit nur eine HTML Seite anzeigen, das andere Dienste nicht erreichbar sind für einen Zeitraum X. Also nichts großartiges an Arbeit leisten.
Im Moment würde ich das über eine Schleife lösen, die dann eben je nach Menge die entsprechenden Instanzen erzeugt.
Der Server muß derzeit nur eine HTML Seite anzeigen, das andere Dienste nicht erreichbar sind für einen Zeitraum X. Also nichts großartiges an Arbeit leisten.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2518
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: xb2.net mehrere Ports
Irgendwo startest du den HttpServer Thread etwa so:
Das machst du einfach erneut mit den gewünschten Parametern. Eine Liste gibts nicht. Pro Port ein Thread.
Code: Alles auswählen
oServer := xbHTTPServer():new( cIP, nPort )
Valar Morghulis
Gruss Carlo
Gruss Carlo
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: xb2.net mehrere Ports
aber es muß doch jedesmal ein neuer Instanzname vergeben werden!?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2518
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: xb2.net mehrere Ports
Nein. Nachdem du alle Werte gesetzt hast und die Start() Methode ausgeführt hast brauchts auch die die Variable nicht mehr.
Zuletzt geändert von ramses am Fr, 04. Dez 2020 13:19, insgesamt 1-mal geändert.
Valar Morghulis
Gruss Carlo
Gruss Carlo
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Du startest für jeden Port einen Server. Das machen wir z.B. für unsere Mobilanwendungen, wenn das Backend bei einem Kunden läuft, der mehrere Filialen hat, die mit nach Mandanten getrennten Datenbeständen arbeiten. Da läuft das Backend einmal, startet aber für jeden zugeordneten Port einen Server - und in diesen stehen natürlich auch nur die Daten des jeweiligen Mandanten zur Verfügung. Ein Statusserver, der per http erreichbar ist, informiert über die Aktivitäten auf den Servern.wenn ich einen Webserver bauen möchte, der auf mehreren Ports lauschen kann, wie geht man da vor
Herzlich,
Tom
Tom
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Wir speichern die Serverobjekte in einem Array - denn wir brauchen sie später tatsächlich noch, etwa für Statusabfragen. Außerdem basieren sie bei uns auf abgeleiteten Klassen, die z.B. statistische Daten über die jeweiligen Connections verwalten u.v.a.m.Nachdem du alle Werte gesetzt hast und die Start() Methode ausgeführt hast brauchts die die Variable nicht mehr.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: xb2.net mehrere Ports
@ramses
damit ich das jetzt nicht falsch verstehe.
Hier etwas vereinfacht.
@tom,
so mache ich das ja bisher. Aber wenn Wartungsarbeiten angesagt sind, dann läuft ja keiner von denen. Es muß aber ein Hinweis für den Anwender kommen, das Wartungsarbeiten anliegen und er warten soll. Aber nicht das die Seite nicht erreichbar ist. Meine Grundidee war eine Apache z.B. aufzusetzen, den auf die entsprechenden Ports lauschen zu lassen. Aber der würde nur gestartet, wen die anderen Webserver gerader heruntergefahren sind. Das OS läuft ja weiter und edshalb würde der Apache ragieren können, so lange bis die anderen Webserver wieder online gehen können.
damit ich das jetzt nicht falsch verstehe.
Hier etwas vereinfacht.
Code: Alles auswählen
oSWebServer := xbHTTPServer():new( INADDR_ANY, Val(oSysPara:doPara:port_https), MySSLContext() )
oSWebServer := xbHTTPServer():new( INADDR_ANY, Val(oSysPara:doPara:port_https2), MySSLContext() )
oSWebServer := xbHTTPServer():new( INADDR_ANY, Val(oSysPara:doPara:port_https3), MySSLContext() )
oSWebServer := xbHTTPServer():new( INADDR_ANY, Val(oSysPara:doPara:port_https4), MySSLContext() )
oSWebServer := xbHTTPServer():new( INADDR_ANY, Val(oSysPara:doPara:port_https5), MySSLContext() )
so mache ich das ja bisher. Aber wenn Wartungsarbeiten angesagt sind, dann läuft ja keiner von denen. Es muß aber ein Hinweis für den Anwender kommen, das Wartungsarbeiten anliegen und er warten soll. Aber nicht das die Seite nicht erreichbar ist. Meine Grundidee war eine Apache z.B. aufzusetzen, den auf die entsprechenden Ports lauschen zu lassen. Aber der würde nur gestartet, wen die anderen Webserver gerader heruntergefahren sind. Das OS läuft ja weiter und edshalb würde der Apache ragieren können, so lange bis die anderen Webserver wieder online gehen können.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Wir lassen bei Wartungsarbeiten (also Updates, Datensicherungen, Neuinstallationen) tatsächlich alle Server weiterlaufen, die dann (jedenfalls ihre http-Instanzen) darüber informieren, dass eben gerade Wartungsarbeiten stattfinden, und die auf SOAP basierenden Server für die Mobilanwendungen liefern entsprechende Funktionsantworten. Bei Neuinstallationen ist unser Backend nur für wenige Augenblicke offline. Es wäre sehr viel aufwendiger, einen fremden Server zu starten (und wenn, würde ich mit NODE.JS Ausfallserver bauen, nicht mit IIS oder Apache). Warum fahren Deine Server herunter? Welchen Zweck hat das?
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: xb2.net mehrere Ports
normalerweise kann jeder Server selbst merken, dass Wartungsarbeiten anliegen und dann selbst die Meldung erzeugen. Aber wie der Teufel es will, man muß den Server oder DLLs austauschen und dann will man ihn wieder neu starten und es klappt nicht, weil man irgendwas übersehen hat. Dann geht das Fratzenschneiden los und man kommt in Zeitnot. Währenddessen versuchen natürlich die Anwender genau dann die Webseiten abzurufen.
Ich gehe aber auch derzeit einfach nur ein paar Szenarien durch, wie man sowas für den Fall der Fälle lösen könnte.
Ich gehe aber auch derzeit einfach nur ein paar Szenarien durch, wie man sowas für den Fall der Fälle lösen könnte.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Wir haben mit NODE.JS einen Server implementiert, der alle aktiven Server regelmäßig anpingt und damit über ihren Status informiert. Wenn also ein bestimmter Server nicht erreichbar ist, kann man sich dort in aller Regel darüber informieren, woran das liegen mag. Aber wenn die Maschine überhaupt nicht erreichbar ist, kann man nichts machen.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: xb2.net mehrere Ports
@Tom
ich bin jetzt ein paar Schritte weiter. Das mit dem Node.js würde ich gerne mal etwas näher erklärt bekommen, was ihr da wie mit macht...
ich bin jetzt ein paar Schritte weiter. Das mit dem Node.js würde ich gerne mal etwas näher erklärt bekommen, was ihr da wie mit macht...
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Unser Server-Backend wird on premise von den Kunden selbst gehostet, aber unser Support nimmt die Installation vor oder begleitet sie. Die IPs oder URLs der installierten Backends werden in unser CMS eingetragen, und der fragliche kleine Server pingt regelmäßig alle installierten und aktiven Backends an, die auch über einen Service-Endpoint verfügen, über den wir ggf. ein paar Informationen abrufen können (Uptime, bewegte Datenmenge, Anzahl der Sessions, versuchte Attacken usw.). Aber ich kann Dir nicht sagen, wie das genau gemacht ist, weil ich das ausnahmsweise nicht selbst gemacht habe. Das Backend schon, aber nicht diesen kleinen Überwachungsserver. Ich könnte aber mal nachfragen.Das mit dem Node.js würde ich gerne mal etwas näher erklärt bekommen, was ihr da wie mit macht...
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: xb2.net mehrere Ports
für mich wäre interessant zu wissen, ob der dann eine Nachricht an den Client schicken kann, wenn aufgerufener anderer Server nicht zur Verfügung steht um dann darauf hinzuweisen, das irgendwas gerade ind er Mache ist. hauptsache es kommt keine Meldung:"Seite nicht erreichbar". So eine Lösung suche ich noch.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9387
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 103 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: xb2.net mehrere Ports
Hallo, Manfred.
Das könnte auch ein Xb2.Net-Server sein - eigentlich spielt keine Rolle, womit das gemacht ist, aber ein einfacher NODE.JS-Server ist tatsächlich in Minuten aufgesetzt. Und ein Server kann natürlich machen, was Du auch immer von ihm willst. Dieser sendet einen beliebigen Request und setzt eine Warnung, wenn überhaupt keine Antwort kommt. Er könnte auch Mails verschicken oder die Kaffeemaschine anschalten. Aber Du kannst mit einem Xb2.Net-Server dasselbe erreichen. Er agiert dann nur als Client, pingt die Server an und reagiert, wenn ein Timeout auftritt. Als Server antwortet er mit den Stati der diversen Maschinen. Dafür erzeugt er eine dynamische Website, die man im Intranet erreichen kann.
Das könnte auch ein Xb2.Net-Server sein - eigentlich spielt keine Rolle, womit das gemacht ist, aber ein einfacher NODE.JS-Server ist tatsächlich in Minuten aufgesetzt. Und ein Server kann natürlich machen, was Du auch immer von ihm willst. Dieser sendet einen beliebigen Request und setzt eine Warnung, wenn überhaupt keine Antwort kommt. Er könnte auch Mails verschicken oder die Kaffeemaschine anschalten. Aber Du kannst mit einem Xb2.Net-Server dasselbe erreichen. Er agiert dann nur als Client, pingt die Server an und reagiert, wenn ein Timeout auftritt. Als Server antwortet er mit den Stati der diversen Maschinen. Dafür erzeugt er eine dynamische Website, die man im Intranet erreichen kann.
Herzlich,
Tom
Tom