JIT Grunt

Datum: 8. Februar 2017
Autor*in: Florian Müller


Dieser Beitrag nimmt Bezug auf meinen vorherigen Beitrag zur Optimierung von Grunt. Wer diesen nicht kennt, wird mit diesem hier nicht viel anfangen können.


Wer den Concurrent Task und dazu auch den Time-Grunt einsetzt, mag schon mal bemerkt haben, dass bei jedem Concurrent Task sämtliche Tasks geladen. Auf dem DEV dauert dies auch mal gerne 2 Sekunden und das für jeden Concurrent Task. Daher habe ich mal geschaut, was man daran noch optimieren kann und bin fündig geworden. JIT Grunt. Inzwischen ist dies auch Teil von load-grunt-config und muss dort nur noch konfiguriert werden. Hierbei musste ich ein extra Mapping konfigurieren, welches den usebanner task auf das Grunt-Banner plugin gematched hat. Nachfolgender Code muss in die gruntfile.js eingefügt werden:

...
require('load-grunt-config')(grunt, {
  jitGrunt: {
    staticMappings: {
      usebanner: 'grunt-banner'
    }
  },
  data: {
...

Vor der Integrierung von JIT Grunt sah die abschließende Statistik so aus:

 [sshexec] [exec] Execution Time (2017-02-08 09:09:19 UTC+1)
 [sshexec] [exec] loading tasks 2s ▇▇▇▇ 10%
 [sshexec] [exec] concurrent:test 4.6s ▇▇▇▇▇▇▇▇ 23%
 [sshexec] [exec] concurrent:production 12.4s ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 63%
 [sshexec] [exec] filerev_replace:production 536ms ▇ 3%
 [sshexec] [exec] Total 19.8s

Nachdem ich die oben genannte Config zur Gruntfile.js hinzugefügt habe, war das deployen auf den DEV deutlich schneller. Bei dem NSG Facelift war es eine Ersparnis von knapp 5 Sekunden.

 [sshexec] [exec] Execution Time (2017-02-08 09:12:13 UTC+1)
 [sshexec] [exec] loading tasks 484ms ▇▇ 3%
 [sshexec] [exec] concurrent:test 2.6s ▇▇▇▇▇▇ 17%
 [sshexec] [exec] concurrent:production 11s ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 74%
 [sshexec] [exec] filerev_replace:production 545ms ▇▇ 4%
 [sshexec] [exec] Total 14.9s

Gerade wenn man mal öfters auf den Dev deployen muss, summieren sich diese 5 Sekunden und man hat eine deutliche Ersparnis.


Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


Recap Velocity Conference Amsterdam 2016

Autor*in: Robert Klauser


Technologie // Über den Tellerrand


Nach drei spannenden Tagen von 7. bis 9. November 2016 in Amsterdam bin ich mit vielen neuen und interessanten Eindrücken von der Konferenz zurückgekehrt, die ich gerne mit Euch teilen möchte. Bei der Velocity Conference ging es um die Themen Web Performance in allen Facetten sowie DevOps als Prozess für den agilen und performanten Betrieb …


Beitrag lesen
11
NOV
16

Build seven good object-oriented habits in PHP

Autor*in: Benjamin Hofmann


Technologie


Es ist zwar schon eine ganze Weile her, dass ich bei IBM über einen wirklich guten Artikel zu OOP in PHP gestoßen bin. Darin geht es um gute Gewohnheiten beim Schreiben von Code. Es geht um insgesamt sieben gute Gewohnheiten: Be modest. Be a good neighbor. Avoid looking at Medusa. Embrace the weakest link. You’re …


Beitrag lesen
19
JAN
17

Builder Pattern Eclipse Plugin

Autor*in:


Technologie


J. Bloch schildert in „Effective Java“ die Vorzüge des Builder Patterns, insbesondere bei Konstruktoren mit mehr als 4 Parametern: verbesserte Lesbarkeit, vor allem bei einer Vielzahl an optionalen Parametern konsistente, in sich abgeschlossene Erzeugung von unveränderlichen Objekten (im Vergleich zur Erzeugung mittels JavaBean Settern) Trotzdem ist das Schreiben des Builder-Codes ein wenig zeitaufwändig. Mittels dieses …


Beitrag lesen
05
JUL
12

WJAX 2017: Web-APIs, einfach oder?

Autor*in: Regina Staller


Technologie


Wie im letzten Blog von mir erwähnt wurde, habe ich auf der diesjährigen WJAX einen Vortrag über den effektiven sowie effizienten client- und serverseitigen Umgang mit Web-APIs besucht. Gehalten wurde dieser Vortrag von Thilo Frotscher. Die wesentlichen Themen aus dieser Session möchte ich hier gerne noch einmal vorstellen. Besonders im Bereich IBE/Metasuche bin ich schon …


Beitrag lesen
20
NOV
17