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


Eine eigene kleine Root-CA für den localhost installieren

Autor*in: Benjamin Hofmann


Technologie


Es ist eigentlich ein Wunder, dass  es immer noch keine allgemein anerkannte Lösung dafür gibt, selbsterstelle Zertifikate auf dem lokalen Webserver auf einfache Art und Weise zu installieren. Zumindest ist mir keine bekannt und ich hatte heute das große Vergnügen genau dies tun zu müssen.


Beitrag lesen
02
AUG
18

Templating with good ol‘ Javascript

Autor*in: Benjamin Hofmann


Technologie


Die letzten Tage bin ich auf eine interessante Technik gestoßen, mit der man ein sehr simples Templating in Vanilla JS umsetzen kann. Das Ganze orintiert sich an den Techniken, die z.B. Handlebars.js oder die originale Micro-Templating-Technik von John Resig nutzen, ist jedoch deutlich kleiner. Der Code Der komplette Code basiert auf RequireJS, kann aber natürlich …


Beitrag lesen
29
SEP
16

Animierte Gifs im IE

Autor*in: Bastian Schwarz


Technologie


Gerade hat mich der IE mal wieder erstaunt (im negativen Sinne). Bei der IBE-Suche der AWK wird zur Überbrückung der Ladezeit eine Ladeanimation eingeblendet. Diese Animation wird mit einem animierten Gif dargestellt. Allerdings hat das Gif im Internet Explorer die Animation nicht ausgeführt. Nach ein wenig Recherche bin ich auf einen Bug im IE gestoßen …


Beitrag lesen
04
MAI
12

YouTube Data-API v2 ist tot.

Autor*in: Benjamin Hofmann


Technologie


Wer es noch nicht mitbekommen hat, Google stellt die Version 2 seiner Data API für YouTube ein. Die Ankündigung für die Abschaltung der v2-API kam bereits im März 2014. Mehr Informationen gibt es hier: https://www.googlewatchblog.de/2015/04/youtube-data-api-viele/ Einen Migration-Guide von Google gibt es hier: https://developers.google.com/youtube/v3/migration-guide


Beitrag lesen
22
APR
15