This post is the second in a series. While I have worked for about three years professionally in the realm of security and feel that I now...
J'ai repris certains points comme les DNS de FDN, merci Seb.
En mettant la propriété :
# Pour Firefox :
browser.cache.disk.parent_directory="/tmp/cache/mozilla/firefox"
# Pour Thunderbird :
browser.cache.disk.parent_directory="/tmp/cache/mozilla/thunderbird"
Ne fonctionne que si /tmp est monté dans la ram biensûr !
Un super tuto expliquant le fonctionnement d'une JVM et toutes les manières de l'optimiser via du tuning :
Pour toi Animal, chose dont nous parlions il y a quelques temps.
Tout est dans le titre.
Comment définir la taille des blocs de vos partitions EXT4.
je cite :
Si vous utilisez la plupart du temps de gros fichiers, il sera probablement très profitable de formatter vos partitions avec des blocs de taille plus importante. En effet, Linux utilise par défaut des taille de blocs de 1024 octets. Vous pouvez changer avec des tailles de 4096 avec la commande mke2fs -b 4096 /dev/..., qui utilise des blocs de 4k au lieu de 1k. Cela va notamment réduire la fragmentation et réduire le temps de vérification lors d'un fsck.
Le lien propose toute une tripoté d'autres optimisations.
Ci-dessous se trouve mon /etc/fstab
$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sdc1 during installation
UUID=0b59763b-4454-4705-aa57-761039f56cb0 / ext4 errors=remount-ro,discard,noatime,nodiratime 0 1
## Fichier tmp dans la RAM
tmpfs /tmp tmpfs defaults,noatime,nodiratime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,nodiratime,mode=1777 0 0
## Pour les logs
tmpfs /var/log tmpfs defaults,noatime,nodiratime,mode=0755 0 0
Une courte intro sur les "profile" de Java 8. Je suis complètement passé à côté de la techno. A regarder pour améliorer les perfs
Un autre lien peut-être un peu plus clair sur les profiles : vitaflux
Un lien vers une doc NetBeans intégrant les Java 8 Compact profiles : Oracle NetBeans
Un autre lien vers la doc Oracle : Doc Oracle
Comment optimiser les performances avec SQLite
Pimper sa debian pour un raspberry pi ou un os sur clef usb
Comment supprimer l'écriture de log du kernel sous linux (pratique pour les OS sur clefs USB).
En résumé pour System V :
/etc/init.d/syslogd stop
Pour UpStart :
sudo service rsyslog stop
sudo systemctl disable syslog
sudo systemctl disable rsyslog
Nous en discutions avec Animal dans le train ce matin. Une JVM bien configurée permet de faire jusqu'à un fois10 en termes de performances. Cependant, les entreprises négliges systématiquement ces options.
En lien, la documentation officielle d'Oracle à ce sujet.
Linux a tendance à swapper dès que la RAM est consommée à plus de 40%. Une bonne façon de forcer Linux à consommer au moins 15 Go de RAM sur 16 Go est de changer la swappiness, c'est-à-dire la tendance du système à swapper.
En résumer il faut :
1) Ouvrir le fichier /etc/sysctl.conf
2) Ajouter / Modifier ceci :
Edit : L'explication à regarder ICI trouvée sur le site de RedHat qui doit être meilleure que la mienne :
## vm.swappiness : désactive le fichier d’échange (swap)
## Que signifie le "1" ? Que Linux commencera à swapper lorsqu'il vous restera moins de 1% de RAM libre. Voilà.
vm.swappiness = 1
## vm.laptop_mode : Secondes après une lecture des fichiers modifiés
vm.laptop_mode = 0
## vm.dirty_writeback_centisecs : Quand le noyau doit vérifier si des données modifiées sont à écrire sur le disque
## Ici toutes les deux minutes
vm.dirty_writeback_centisecs = 12000
## vm.dirty_expire_centisecs : Quand le noyau estime que les anciennes données doivent-être écrites sur le disque
## Ici toutes les deux minutes
vm.dirty_expire_centisecs = 12000
## vm.vm.dirty_ratio : quantité maximale de mémoire (en pourcentage) à utiliser pour stocker les données modifiées
## Ici toutes les deux minutes
vm.dirty_ratio = 10
## vm.dirty_background_ratio : quantité minimale de mémoire (en pourcentage) à utiliser pour stocker les données modifiées
vm.dirty_background_ratio = 1
## vm.vfs_cache_pressure : la tendance qu'aura l'OS à faire revenir les données swappée dans la RAM (je ne sais pas s'il s'agit d'une constante ou d'une probabilité)
vm.vfs_cache_pressure=50
Booster un petit peu son mobile Android.
Des conseils qui datent de Mandriva 2008 mais qui sont pour certains toujours d'actualité.
OHHHHHH ÇA C'EST BON !
Je copie-colle un extrait :
Java < 8
-server
-Xms<heap size>[g|m|k] -Xmx<heap size>[g|m|k]
-XX:PermSize=<perm gen size>[g|m|k] -XX:MaxPermSize=<perm gen size>[g|m|k]
-Xmn<young size>[g|m|k]
-XX:SurvivorRatio=<ratio>
-XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled
-XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=<percent>
-XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark
-XX:+PrintGCDateStamps -verbose:gc -XX:+PrintGCDetails -Xloggc:"<path to log>"
-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M
-Dsun.net.inetaddr.ttl=<TTL in seconds>
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<path to dump>`date`.hprof
-Djava.rmi.server.hostname=<external IP>
-Dcom.sun.management.jmxremote.port=<port>
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
Java >= 8
-server
-Xms<heap size>[g|m|k] -Xmx<heap size>[g|m|k]
-XX:MaxMetaspaceSize=<metaspace size>[g|m|k]
-Xmn<young size>[g|m|k]
-XX:SurvivorRatio=<ratio>
-XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled
-XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=<percent>
-XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark
-XX:+PrintGCDateStamps -verbose:gc -XX:+PrintGCDetails -Xloggc:"<path to log>"
-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M
-Dsun.net.inetaddr.ttl=<TTL in seconds>
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<path to dump>`date`.hprof
-Djava.rmi.server.hostname=<external IP>
-Dcom.sun.management.jmxremote.port=<port>
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false