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


PhotoSwipe: Responsive JavaScript Image Gallery

Autor*in: Benjamin Hofmann


Technologie // User Experience & Design


Ich bin gestern auf eine ziemlich geniale Lightbox-Lösung gestoßen: PhotoSwipe. Diese baut auf Vanilla JS auf und ist auf hohe Performance und die mobile Verwendung ausgelegt, bei der ja doch ziemlich viele Lightboxen scheitern oder von uns sogar deaktiviert werden. Und trotz all dieser Features sind das Skript und die dazugehörigen Styles sehr klein was …


Beitrag lesen
22
SEP
16

XAMPP unter Windows vs. SSL Authentifizierung

Autor*in:


Technologie


Heißen Käfer im Apache unter XAMPP auf Windows entdeckt: Im Zuge eines Relaunch bin ich heute auf einen kuriosen Fehler gestoßen. Um einen Import von Events aus dem Google-Kalender umzusetzen, musste ich mir erst mal die Google PHP Client Library laden und ins Projekt setzen. Diese versucht natürlich erst mal einen per SSL verschlüsselten Authentifizierungs-Request abzusetzen. …


Beitrag lesen
02
JUL
15

OOP 2015 – Tag 3

Autor*in: Marc Kurzmann


Technologie // Über den Tellerrand


Heute ging’s gleich technisch los mit dem ersten Vortrag über Möglichkeiten zur Vereinfachung von Deployments und Abhängigkeiten zur Laufzeitumgebung. Goßes Problem stellt hier zum Einen die oftmals mühsame Bereitstellung der Laufzeitumgebung dar (insbes. Appserver, wie Tomcat etc.), zum Anderen bringt das eine große Abhängigkeit in den zu verwendenden Bibliotheken mit sich (Servlet-API). Einen interessanten Ansatz …


Beitrag lesen
30
JAN
15

Netbeans 7.1patch1 released

Autor*in: Bastian Schwarz


Technologie


Gestern wurde Netbeans 7.4patch1 released in dem auch einige PHP Fixes mit drin sind. Näheres gibt es hier: https://netbeans.org/community/news/show/1602.html Das Auto-Namespacing geht leider immer noch nicht … Gruß Bastian


Beitrag lesen
26
NOV
13