Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Experimentell] JS-Controller compact mode

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Experimentell] JS-Controller compact mode

    This topic has been deleted. Only users with topic management privileges can see it.
    • AlCalzone
      AlCalzone Developer last edited by

      Für TypeScript-Entwickler kann das Ganze so aussehen:

      2.: src/main.ts

      let adapter: ioBroker.Adapter;
      function startAdapter(options: Partial <iobroker.adapteroptions>= {}) {
      	return adapter = utils.adapter({
      		// Default options
      		...options,
      		// custom options
      		name: "my-adapter",
      		// ...
      	});
      }
      
      // ...
      
      if (module && module.parent) {
      	// Export startAdapter in compact mode
      	module.exports = startAdapter;
      } else {
      	// Otherwise start the adapter immediately
      	startAdapter();
      }</iobroker.adapteroptions> 
      
      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Wir nehmen übrigens auch seeeehr gern PRs für ioBroker Adapter an falls jemand schneller als Bluefox mit Umbauen ist ;-))

        Wer langeweile hat kann ggf durch http://download.iobroker.net/list.html# … =1&filter= gehen und von oben nach unten arbeiten 😉

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Weitere Infos unter https://github.com/ioBroker/ioBroker.js … issues/290

          1 Reply Last reply Reply Quote 0
          • Mic
            Mic Developer last edited by

            Super, vielen Dank für diese Erweiterung!

            @Bluefox:

            In diesem Modus startet js-controller alle Adapter (die diesen Modus unterstützen) in dem selben Prozess wie js-controller. `
            Aus "Systemoptimierungs-Sicht" stellt sich mir hier noch die Frage, ob es zukünftig auch angedacht ist, einzelne Adapter auszuschließen zu können, also in separaten Prozessen zu betreiben, während man die "stabilen" Adapter im selben Prozess wie der JS-Controller laufen lässt…

            Dann wäre das nämlich auch eine tolle Option für User, deren Raspi an der Speicherobergrenze von 1 GB ist. Sie könnten dann die stabilen Adapter alle im selben Prozess halten, und die paar problematischen (falls es die gibt), die mal abschmieren, ausschließen...

            Nur so eine Idee...

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 last edited by

              Vllt … https://github.com/ioBroker/ioBroker.admin/issues/351 🙂

              Apollon77 created this issue in ioBroker/ioBroker.admin

              closed Add support for Compact mode #351

              1 Reply Last reply Reply Quote 0
              • Mic
                Mic Developer last edited by

                🙂 8-)

                1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active last edited by

                  wird dann der einzelstart bzw restart eines Adapters noch gehen ??

                  1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 last edited by

                    Erst einmal muss man den compact Mode für den JS:Controller einschalten. Wenn er aus ist werden alle Adapter gestartet wie bisher auch. Also alle die VMs und genug RAM haben werden wohl das weiter so nutzen wie jetzt.

                    Mit dem oben verlinkten Admin-Issue und der Erweiterung darin könnte man dann pro Instanz auch bei aktiviertem compact-Mode entscheiden welche Instanz wie läuft. Und wenn man https://github.com/ioBroker/ioBroker.js … issues/303 noch macht wirds noch flexibler 🙂

                    Auf Low-Memory Systemen kann der compact Mode genutzt werden

                    1 Reply Last reply Reply Quote 0
                    • AlCalzone
                      AlCalzone Developer last edited by

                      @arteck:

                      wird dann der einzelstart bzw restart eines Adapters noch gehen ?? `

                      Aktuell nicht, soll aber noch behoben werden.

                      1 Reply Last reply Reply Quote 0
                      • J
                        Jan1 last edited by

                        Gleich mal ne Frage zur Version, ich habe gesehen, das im latest wieder js-controller 1.5.3 angeboten wird. Läuft die Version nun problemlos, oder sollte man da besser bei 1.4.2 bleiben?

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Uups auch nicht Absicht. Sage es bluefox.

                          Gesendet vom Handy …

                          1 Reply Last reply Reply Quote 0
                          • J
                            Jan1 last edited by

                            Alles klar und danke für die Info.

                            1 Reply Last reply Reply Quote 0
                            • apollon77
                              apollon77 last edited by

                              For All: Ich habe eine Zeile oben im Initialen Post gefixt:

                              > typeof module !== undefined muss entweder typeof module !== "undefined" oder module != undefined oder einfach nur module sein.

                              1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 last edited by

                                Koordiniering der Implementierung in alle Adapter: https://docs.google.com/spreadsheets/d/ … sp=sharing

                                1 Reply Last reply Reply Quote 0
                                • apollon77
                                  apollon77 last edited by

                                  Update compact Mode: aktuellste GitHub Version 1.6.0 sollte stoppen von compact-adatern und auch prozess-umbenennen gefixt haben

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    SchuetzeSchulz last edited by

                                    Hallo zusammen,

                                    ich würde auch gern meine Adapter (lgtv, lgtv11, hp-ilo, enet) ändern.

                                    Allerdings habe ich den zu ändern Code

                                         const adapter = new utils.Adapter({
                                              name: ...,
                                              stateChange: function () {...},
                                              ...
                                         });
                                    
                                    

                                    So in keinen meiner Adapter drin. Alle meine Adapter sind vom Aufbau im Prinzip gleich. Kann da mal jemand schauen und mir sagen was ich wo ändern muss? Den Eintrag in der JSON sehe ich nicht als Problem.

                                    1 Reply Last reply Reply Quote 0
                                    • blauholsten
                                      blauholsten Developer last edited by

                                      … er geschrieben dann überlegt :oops:

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        BasGo last edited by

                                        @SchuetzeSchulz:

                                        Hallo zusammen,

                                        ich würde auch gern meine Adapter (lgtv, lgtv11, hp-ilo, enet) ändern.

                                        Allerdings habe ich den zu ändern Code

                                             const adapter = new utils.Adapter({
                                                  name: ...,
                                                  stateChange: function () {...},
                                                  ...
                                             });
                                        
                                        

                                        So in keinen meiner Adapter drin. Alle meine Adapter sind vom Aufbau im Prinzip gleich. Kann da mal jemand schauen und mir sagen was ich wo ändern muss? Den Eintrag in der JSON sehe ich nicht als Problem. `

                                        Kann dir gerne im Laufe des Tages mal deinen ioBroker.lgtv anpassen und dir einen PR schicken?

                                        Dort hast du z.B. in Zeile 161 sowas wie ..

                                        adapter.on('stateChange', function (id, state)
                                        { ... }
                                        

                                        .. und das müsste u.a. halt ersetzt werden. 8-)

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          SchuetzeSchulz last edited by

                                          @BasGo:

                                          Kann dir gerne im Laufe des Tages mal deinen ioBroker.lgtv anpassen und dir einen PR schicken? `

                                          Das wäre super. Dann würde ich das für die anderen Adapter übernehmen wollen.

                                          Vielen Dank schon mal im Voraus!

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            SchuetzeSchulz last edited by

                                            Danke BasGo 🙂

                                            Funktioniert prima. Habe die anderen jetzt ach angepasst.

                                            Geht doch einfacher als es aussieht 🙂

                                            Einer noch 🙂

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            750
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            14
                                            47
                                            8287
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo