Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme mit NODE nach Serverumzug

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme mit NODE nach Serverumzug

    Hallo Forum,

    ich habe schon unzählige Stunden in meinen Socket-server gesteckt, der jetzt nach einem Server-Umzug leider nicht mehr läuft =(


    Package.json

    Code:
    {
      "name": "wpoDev",
      "version": "0.0.1",
      "private": true,
      "scripts": {
        "start": "node ./bin/www"
      },
      "dependencies": {
        "event": "*",
        "jsftp": "*",
        "memcache": "*",
        "mysql": "*",
        "node-mysql": "*",
        "request": "*",
        "socket.io": "*",
        "util": "*",
        "memcache": "*",
        "socket.io-client": "*",
        "squel": "*",
        "striptags": "*",
        "validator": "*",
        "xss-filters": "*"
        "assert": "*",
      }
    }

    Fehlerbericht:
    Code:
    root:/# node /srv/wpo/node_modules/socket.io/lib/app.js
    util.js:989
        throw new TypeError('The super constructor to "inherits" must not ' +
        ^
    
    TypeError: The super constructor to "inherits" must not be null or undefined
        at Object.exports.inherits (util.js:989:11)
        at Object.<anonymous> (/srv/wpo/node_modules/memcache/lib/memcache.js:45:6)
        at Module._compile (module.js:571:32)
        at Object.Module._extensions..js (module.js:580:10)
        at Module.load (module.js:488:32)
        at tryModuleLoad (module.js:447:12)
        at Function.Module._load (module.js:439:3)
        at Module.require (module.js:498:17)
        at require (internal/module.js:20:19)
        at Object.<anonymous> (/srv/wpo/node_modules/socket.io/lib/lobby.js:7:16)

    Nun verwirrt mich das ganze etwas, weil abgesehen von der letzten Line es alles Fehler der Module sind.
    In meinem System habe ich eine app.js die individuell aufs Projekt geschneidert wird und eine lobby.js welche grundlegendes Handling übernimmt und hier wird auch memcache eingebunden.
    Es wird zwar genau so eingebunden wie zuvor auch aber es scheint nicht mehr zu klappen =(

    lobby.js (wird in app.js eingebunden)
    Code:
    module.exports = lobby;
    
    /**
     * Module dependencies.
     */
    var util = require('util'),
        memcache = require('memcache'),
            vali = require('validator');
    
    function lobby(opt, sdb, io){
    /** global constants */
        //...
    
        // memcache for use php-session
        mc = new memcache.Client(opt.memcache.port, opt.memcache.server);
        mc.on('error', function(e){
            if( e.errno == 111 ){
                exports['startup test'] = function(){ assert.ok(false, "You need to have a memcache server running on localhost:11211 for these tests to run"); }
                return;
            }
    
            exports['startup test'] = function(){
                assert.ok(false, "Unexpected error during connection: "+util.inspect(e));
            }
        });
        mc.connect();
        // alter startbefehl
        // this.cache = new memcache.Client(opt.memcache.port, opt.memcache.server);
        // this.cache.connect();
    
    /** option-parameter */
    // rest der lobby
    // ...
    }

    Nun vllt. hatte da ja mal Jemand das gleiche Problem oder kann erkennen warum der Start missglückt
    Wäre für jede Hilfe dankbar.

    MfG: Paykoman

    ::EDIT::
    Interessant ist das es am memcache.js Modul zu liegen scheint, sobald ich dieses raus lasse und den code natürlich ausklammere wo es verwendet wird dann läuft der Server...

  • #2
    Und keiner der Lösungsansätze im Internet hat funktioniert?
    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      Wenn ich was gefunden hätte, hätte ich net gepostet...

      Kommentar


      • #4
        Wonach hast du denn gesucht (klick)?
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Ja das war auch meine Suche und ich weiß nicht wo da jetzt die Lösung des Problems sein soll?
          Das erste ist nodeftp gefolgt von anderen Modulen...

          Kommentar


          • #6
            Also doch keine Lösung für das Memcache Modul?

            Kommentar


            • #7
              Also ich bekomme auch heute noch nicht das Problem gelöst.
              Wäre echt toll wenn da Jemand die Lösung preis geben würde

              Kommentar


              • #8
                Entweder fehlt die ein Modul (schauen, wo dieses "inherit" vorkommt und welches Modul dafür gebraucht wird) oder du hast eine alte Version von node. Das wären meine 2 Anlaufstellen.
                [URL="https://github.com/chrisandchris"]GitHub.com - ChrisAndChris[/URL] - [URL="https://github.com/chrisandchris/symfony-rowmapper"]RowMapper und QueryBuilder für MySQL-Datenbanken[/URL]

                Kommentar


                • #9
                  Leider bringt mich das nicht weiter... Ich habe aber mal die Nodeversion gecheckt: v7.10.0

                  Ganz oben im Topic stehen soweit alle Infos, wobei ich noch mal anmerken möchte das der Server läuft sobald eben das Modul memcache ausgeklammert ist

                  Code:
                  // oben sind die Module dependencies.
                  
                  /**
                   * Module dependencies.
                   */
                  var util = require('util'),
                      //memcache = require('memcache'),
                          vali = require('validator');
                  
                  /* memcache for use php-session
                      mc = new memcache.Client(opt.memcache.port, opt.memcache.server);
                      mc.on('error', function(e){
                          if( e.errno == 111 ){
                              exports['startup test'] = function(){ assert.ok(false, "You need to have a memcache server running on '"+opt.memcache.server+":"+opt.memcache.port+"' for these tests to run"); }
                              return;
                          }
                  
                          exports['startup test'] = function(){
                              assert.ok(false, "Unexpected error during connection: "+util.inspect(e));
                          }
                      });
                      mc.connect();
                      // this.cach = new memcache.Client(opt.memcache.port, opt.memcache.server);
                      // this.cach.connect();
                      */
                  Sobald es wieder eingebunden ist erscheint der Fehler wegen inherits (oben).
                  Code:
                  root@vps1290833:~# node /srv/wpo/node_modules/socket.io/lib/app.js
                  Juhu Server running
                  site-DB Connection established
                  socket-DB Connection established

                  Kommentar


                  • #10
                    und gepostet:
                    https://github.com/elbart/node-memcache/issues/43
                    scheintert ja wohl daran,

                    https://github.com/elbart/node-memca...emcache.js#L45

                    könnte man ja debuggen; wohl kein klassicher doppelpost.

                    Kommentar


                    • #11
                      Danke tomBuilder, da habe ich wenigstens einen Anfang.

                      Nun soll die util.inerhits ja die Funktionen vererben...
                      Aber die Funktion bzw. der Superconstructor "process.EventEmitter" gibt es nicht, die console gibt undefined aus.

                      Wenn ich die ganze line ausklammer ist die Frage ob Memcache dann noch richtig arbeitet, habe leider kein Schimmer was die Funktion bezwecken sollte.
                      In "process" steckt ne ganze menge Zeug drin, woher auch immer das kommt.

                      Kommentar


                      • #12
                        ok,
                        https://github.com/defunctzombie/nod...r/util.js#L570

                        sonst steh ich grad echt aufm schlauch, was ist denn prozess-- console.log()?

                        Kommentar


                        • #13
                          Da deine package.json keine Versionsnummern für die Abhängigkeiten enthält (bad practice) kann es durchaus sein, dass du nach dem Umzug aktuellere Pakete installiert hast. Vergleiche mal die Versionsnummern mit der alten Installation.
                          [SIZE="1"]Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.[/SIZE]

                          Kommentar


                          • #14
                            Habe die alte gefunden, sind zwar nicht bei allen die Nummern drin aber ich hatte den ganzen Server runtergeladen (Backup) da kann ich mir die Versionsnummern raus kramen.

                            Hätte aber noch mal 2 ne Frage "^1.3.7" wofür steht das "^" das eben auch neuere Versionen installiert werden?

                            ::EDIT::
                            Aktuelle util version ist 1.3.24 davon hatte ich leider kein Backup sonst könnte ich dort ne ältere version eintragen...


                            Läuft leider nicht, immer noch Problem mit inerhits! =(
                            Code:
                            {
                              "name": "wpoDev",
                              "version": "0.0.1",
                              "private": true,
                              "scripts": {
                                "start": "node ./bin/www"
                              },
                              "dependencies": {
                                "event": "*",
                                "jsftp": "*",
                                "memcache": "0.3.0",
                                "memcached": "2.2.0",
                                "mysql": "*",
                                "node-mysql": "*",
                                "request": "^2.65.0",
                                "socket.io": "^1.3.7",
                                "util": "0.10.3",
                                "socket.io-client": "*",
                                "squel": "*",
                                "striptags": "^2.0.3",
                                "validator": "^4.0.6",
                                "xss-filters": "^1.2.6",
                                "assert": "*"
                              }
                            }

                            Kommentar


                            • #15
                              @ tomBuilder: Habe kein Dunst woher prozess kommt es ist jedenfalls nicht aus der memcache.js dort ist nämlich nichts zu finden, der log ist zulang für die Ausgabe in Putty, sehe da nur den unteren Teil, welcher eben gefüllt mit Funktionen und Variablen ist...

                              Kommentar

                              Lädt...
                              X