Blog de dada

Logiciels, systèmes d'exploitation, politique et actualité... Libres.

Aller au contenu | Aller au menu | Aller à la recherche

Configuration d'auto-hébergeur

serveur.jpgSuite au "succès" des certains de mes billets, ma connexion internet se retrouve complètement noyée par la demande. Plus moyen de rien faire.

Imaginez : je m'auto-héberge fièrement et je ne peux plus profiter ni de mes services, ni de ma connexion internet. Problématique.



Il est hors de question que je change mes habitudes en passant par un hébergement autre, aussi associatif et libre puisse-t-il être.

Solution ? libapache2-mod-bw !

Installer ce paquet permet de configurer la bande passante utilisée par les personnes connectées sur votre serveur. Il est sans doute utilisé pour limiter la bande passante des hébergeurs professionnels et ainsi étoffer leurs offres, mais pas ici.

Installation sur Debian Squeeze

apt-get install libapache2-mod-bw

Configuration

Editez : /etc/apache2/sites-available/default

Rajoutez, par exemple :

<VirtualHost *:80>

(...)

    BandWidthModule On
    ForceBandWidthModule On

    BandWidth all 30720

(...)

</VirtualHost>

Redémarrez Apache

/etc/init.d/apache2 restart

C'est tout bon.


Le Blog de dada passe donc en mode "bridé". C'est un vilain mot, mais c'est une nécessité. La limite est de 30ko/s par utilisateur, moi y compris. Si ca ne me rend pas dingue et les choses évolues, je laisserais ca en place. Faut voir à l'usage.

Si vous avez d'autres idées, je suis preneur. :)

Pour la route :

Diaspora*
Kane Thornwyrd Kane Thornwyrd ·  06 septembre 2011, 19:10

Tu peux aussi réduire ta propre consommation de BP en t'installant un squid en mode proxy cache pour ton surf journalier, ça marche pas trop mal, même pour cacher les paquets deb, si tu trifouille un peu pas besoin de re-télécharger à chaque fois si c'est toujours la même version que tu ré-installe.

Concernant l'optimisation de la BP du site:
Tu peux feinter en arrêtant de servir toi-même les ressources "communes", genre jQuery, et passer par des CDN... Oui, tu n'aime pas le "cloud", moi non plus, mais c'est des librairie "standardisées", donc je part du principe que OSEF, puis si tu veux pass que Google chope les ips de tes visiteurs tu peux les "proxyfier".

Ensuite tu a PLEIN d'images sur ton site, il faudrait tuner le thème de ton dotclear pour qu'il utilise le principe des sprites CSS et mettre en place la gestion des eTags, pour ne pas avoir à renvoyer au visiteurs déjà connus le même contenu alors qu'il poourrait l'avoir en cache de manière plus siouxs.

Pareil pour les JS, ceux que tu sers pourraient être agrégés et caché.

Si tu passe à l'aggrégation d'images et js et la livraison via CDN des librairie js usuelles, je suis prêt à parier que tu gagnerai minimum 60% de bande passante.

Kane Thornwyrd Kane Thornwyrd ·  06 septembre 2011, 20:51

Correction, si tu proxyfie du contenu de CDN, c'est ta BP qui morfle.

dada dada ·  10 septembre 2011, 22:25

Va falloir que je regarde tout ca. C'est pas encore dans mes compétences. Merci :)

Fabien Bourdaire Fabien Bourdaire ·  14 septembre 2011, 20:53

Tu peux utiliser ce teste de google pour voire ou tu peux optimiser la configuration de ton server web & ton code html

http://pagespeed.googlelabs.com/

dada dada ·  15 septembre 2011, 15:38

@Fabien : Merci, m'en vais voir si Google me dit si je peux optimiser deux ou trois trucs :)

thomasp thomasp ·  19 septembre 2011, 12:22

Merci pour cette astuce!
Je m'auto-héberge moi aussi et j'utilisais pour le moment directement le noyau linux pour controller le traffic de mon serveur. (iptables etc..) Cela fonctionne très bien et permet de gérer le débit de manière très poussé mais la config est un peu complexe.
Je ne connaissais pas ce mod de apache2 et c'est bien plus simple!

En bonus, j'utilise aussi fail2ban et je l'active pour tout les services. Ca permet de protéger un peu le serveur des bruteforce, dos et autre bourinnages qui consome aussi l'air de rien de la charge et de la bande passante.

a+

DarkRedman DarkRedman ·  27 septembre 2011, 11:14

Techniquement, comment marche les virtualhosts ? j'essaye de faire la même chose mais pas pour Apache. Et j'ai du mal à comprendre si un visiteur qui arrive sur mon serveur, comment peut-on savoir de que site il vient. Est-on obligé de faire appel a une valeur GET dans l'url du genre http://www.site.fr?refer=http:// ...
Ou est-ce que la requête GET a gardé le DNS si la redirection du DNS est "visible" ?

Je me pose toutes ces questions car bientôt je vais héberger plus d'un site sur mon serveur mais je ne sais pas comment marche les VirtualHosts.

dada dada ·  28 septembre 2011, 00:07

Alors la, je ne peux pas vraiment t'aider. Le web n'est pas mon domaine de prédilection. Si je trouve des informations la dessus, je te le ferais savoir :)

farvardin farvardin ·  04 octobre 2011, 17:22

@DarkRedman : si tu as un seul nom de domain, ou une IP, tu peux indiquer des ports différents de connexion pour les différents vhots, par exemple http://www.site.com:8080 et http://www.site.com:8081
Il doit être possible également d'utiliser des sous-domaines, par exemple
http://truc1.site.com et http://truc2.site.com

aucune annexe



À voir également

visites.png

Retours sur le B2D de 2013

C'est une sorte de tradition à laquelle je me plie cette année : celle d’étaler au grand jour ses...

Lire la suite

banni.png

Inde : IP bannie de Numerama

Attention, j'aime lire Numerama; pas de mésentente avec ce site d'information que j'affectionne. Je...

Lire la suite