Webanwendungen - Pro angemeldeter Benutzer eine Instanz oder doch besser eine Instanz für alle?



  • Ich will ne Webanwendung mit Benutzeranmeldung schreiben.

    Die normale Anmeldung kann dabei noch auf normalem Wege über den Webserver laufen.
    Aber die eigentliche Nutzanwendung wäre was eigenständiges. Also ne Lösung via Java, CGI etc.

    Die Sache ist nur die, so ne Anwendung kann auch mal abstürzen und um das zu verhindern bietet es sich ja an, für jeden Benutzer eine Instanz laufen zu lassen.
    Das hätte den Vorteil, daß der Benutzer nur seine eigene Instanz zum Absturz bringen könnte, die anderen davon aber unberührt bleiben würden und wenn er sich neu einlogt, dann wird eine neue Instanz für ihn automatisch geladen.

    Da ich nicht mit so vielen Nutzern gleichzeitig rechne, wäre das mit den Instanzen IMO durchaus noch machbar.
    Mehr als 300 Nutzer gleichzeitig werden es sicher nicht sein.

    Was sagt ihr dazu oder gäbe es bessere Lösungen?



  • zu wenig info.

    willst du einen eigenen socket in java aufmachen? dann bietet sich der übliche "thread für den einzelnen der sich anmeldet" an.

    wenn du im http bleibst, ist die verbindung nach senden sowieso gleich wieder geschlossen, logisch.

    mal eben...als erste Idee

    ....
    ....
    
    public Server(int port)  throws IOException {
        s = new ServerSocket(port);
    }
    
    void runService()  throws IOException {
        try {
    
          while (true) {
    
            Socket socket = s.accept();   
            new ServerThread(socket).start(); 
          }
        } finally {
          //....
        }   
      }
    
    ....
    ....
    


  • Bei CGI hast du doch für jede Anfrage eine Instanz.



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Webzeugs verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • elise schrieb:

    zu wenig info.

    Meinst du den Webserver oder willst du einen eigenen Appserver bauen?



  • Er meint sein eigenes Programm, das eine eigene Instanz oeffnen soll, und das tut es doch dann so oder so, schliesslich wird sie vom Webserver neu aufgerufen, so wie jede PHP-Datei bei erneutem Aufruf von aussen auch intern neu aufgemacht wird. Das wirst du so leicht nicht beeinflussen koennen. Aber da es ohnehin schon standardmaessig das ist, was du suchst, duerfte sich das Thema erledigt haben.


Anmelden zum Antworten