I dag reagerade jag över hur lång tid det tog för Maven att hämta hem pom-filer från Nexus. Okej att det går långsamt att ladda hem små filer, men varför är det så lång väntetid mellan varje fil?
Efter att ha sökt runt lite upptäckte jag att Nexus använder sig av något som kallas "Ordered Group Repositories". Vilken ordning dina repon ligger i påverkar prestandan en hel del, eftersom Maven börjar med att leta efter pom-filer i det översta repot, där efter det näst översta och så vidare.
I mitt testfall blev byggtiden mindre än hälften efter att ha flyttat runt ordningen på mina repon. Då vill jag poängtera att samtliga av mina repon är lokala och att Nexus-servern står i samma byggnad som jag befinner mig i. En reduktion från 6.5 minuter till 2-3.5 minuter är inte dåligt.
För att komma åt inställningen loggar du in på Nexus, trycker på repositories i vänsterkolumnen. Väljer din repository group i högerkolumnen och trycker där efter på fliken configuration.
Du kan nu dra i repon under "Ordered Group Repositories" för att flytta på dem.
I min mening är detta ett mycket dåligt designval. Delvis finns det ingen knapp som tydligt demonstrerar att repon kan flyttas upp och ner i listan. Det finns inte heller någon varningstext som påpekar att felaktig konfiguration har enorm inverkan på prestandan. Vad jag vet finns det inte heller något profilingverktyg som kan hjälpa dig att placera dina repon i rätt ordning.
Källor:
books.sonatype.com
siddesh-bg.blogspot.com
fredag 25 oktober 2013
måndag 21 oktober 2013
Smokeping i ubuntu/raspbian med lighttpd
För närvarande fungerar det inte särskilt bra att installera smokeping via apt-get om man kör lighttpd, därför har jag antecknat mina steg för att få igång en sådan installation.
Några av problemen är att smokeping är konfigurerat för att använda sendmail, men apt-get-paketet har inte sendmail som en dependency. Smokeping får också en trasig fil i sin rotmapp (smokeping.fcgi.dist). Vidare så installeras inte rrdtool automatiskt, fastän smokeping är oanvändbart utan.
Min installationsprocedur kanske inte är best practice, har du någon åsikt så kommentera gärna.
Installera nödvändiga paket
apt-get install lighttpd
apt-get install smokeping rrdtool
Skapa cgi-bin i din www-rot
sudo mkdir /var/www/cgi-bin
Länka in smokeping
sudo ln -s /usr/lib/cgi-bin/smokeping.cgi .
Kommentera ut sendmail ur konfigurationen
sudo nano /etc/smokeping/config.d/pathnames
Från:
sendmail = /usr/sbin/sendmail
Till
#sendmail = /usr/sbin/sendmail
Lägg till cgi-stöd i lighttpd
sudo lighttpd-enable-mod cgi
Starta om lighttpd
sudo service lighttpd restart
Starta om smokeping
sudo service smokeping restart
Nu ska du kunna nå smokeping på
hostname/cgi-bin/smokeping.cgi
Några av problemen är att smokeping är konfigurerat för att använda sendmail, men apt-get-paketet har inte sendmail som en dependency. Smokeping får också en trasig fil i sin rotmapp (smokeping.fcgi.dist). Vidare så installeras inte rrdtool automatiskt, fastän smokeping är oanvändbart utan.
Min installationsprocedur kanske inte är best practice, har du någon åsikt så kommentera gärna.
Installera nödvändiga paket
apt-get install lighttpd
apt-get install smokeping rrdtool
Skapa cgi-bin i din www-rot
sudo mkdir /var/www/cgi-bin
Länka in smokeping
sudo ln -s /usr/lib/cgi-bin/smokeping.cgi .
Kommentera ut sendmail ur konfigurationen
sudo nano /etc/smokeping/config.d/pathnames
Från:
sendmail = /usr/sbin/sendmail
Till
#sendmail = /usr/sbin/sendmail
Lägg till cgi-stöd i lighttpd
sudo lighttpd-enable-mod cgi
Starta om lighttpd
sudo service lighttpd restart
Starta om smokeping
sudo service smokeping restart
Nu ska du kunna nå smokeping på
hostname/cgi-bin/smokeping.cgi
Prenumerera på:
Inlägg (Atom)