Projet

Général

Profil

Wiki » Historique » Version 9

Benjamin Bohard, 16/04/2015 17:24

1 1 Benjamin Bohard
h1. Wiki
2 1 Benjamin Bohard
3 1 Benjamin Bohard
h2. Configuration du proxy-cache
4 1 Benjamin Bohard
5 1 Benjamin Bohard
Livrer une configuration ubuquiste pour squid n'est pas possible et il est fréquent de devoir ajuster les paramètres du proxy cache dans la phase d'administration.
6 1 Benjamin Bohard
7 1 Benjamin Bohard
L'approche qui sera mise en place proposera des profils orientant dans le choix de jeux de valeurs pour les paramètres de squid.
8 1 Benjamin Bohard
9 1 Benjamin Bohard
h3. Profils d'utilisation
10 1 Benjamin Bohard
11 1 Benjamin Bohard
Les profils d'utilisation d'un proxy-cache sont déterminés par le type de fichiers demandés, leur variété, leur fréquence de consultation.
12 1 Benjamin Bohard
Ces facteurs déterminants peuvent évoluer au cours de l'utilisation du serveur, aussi il ne faut pas compter sur la pérennité du choix fait à l'instanciation du serveur.
13 1 Benjamin Bohard
14 2 Benjamin Bohard
h3. Efficacité du proxy-cache
15 1 Benjamin Bohard
16 1 Benjamin Bohard
Le rôle de la fonction cache du proxy est d'alléger la charge sur la connexion à Internet et de fluidifier l'obtention de ressources en en stockant une partie en local.
17 1 Benjamin Bohard
On peut mesurer l'efficacité du proxy-cache avec trois marqueurs :
18 3 Benjamin Bohard
* hit rate : le rapport du nombre de fichiers distribués depuis le cache sur le nombre total de fichiers demandés ;
19 3 Benjamin Bohard
* byte hit rate : le rapport du volume des fichiers distribués depuis le cache sur le volume total des fichiers demandés ;
20 3 Benjamin Bohard
* temps de réponse : le temps nécessaire pour distribuer les fichiers demandés (depuis le cache ou non).
21 3 Benjamin Bohard
22 3 Benjamin Bohard
Selon les configurations, le temps de réponse peut-être plus long dans le cas d'une distribution depuis le cache.
23 3 Benjamin Bohard
24 3 Benjamin Bohard
h3. Paramètres d'optimisation
25 3 Benjamin Bohard
26 3 Benjamin Bohard
h4. Algorithme de suppression des objets du cache
27 3 Benjamin Bohard
28 5 Benjamin Bohard
h5. lru
29 5 Benjamin Bohard
30 5 Benjamin Bohard
least recently used
31 5 Benjamin Bohard
32 5 Benjamin Bohard
h5. lfuda
33 5 Benjamin Bohard
34 5 Benjamin Bohard
least frequently used dynamic aging
35 5 Benjamin Bohard
36 5 Benjamin Bohard
h5. gdsf
37 5 Benjamin Bohard
38 5 Benjamin Bohard
greedy dual size frequence
39 3 Benjamin Bohard
40 3 Benjamin Bohard
h4. Cache
41 3 Benjamin Bohard
42 3 Benjamin Bohard
h5. Taille
43 4 Benjamin Bohard
44 3 Benjamin Bohard
Relation forte avec la mémoire vive disponible : l'index du cache est gardé en mémoire vive
45 3 Benjamin Bohard
46 3 Benjamin Bohard
h5. FS sous-jacent
47 3 Benjamin Bohard
48 9 Benjamin Bohard
* un filesystem voire un disque propre (notamment pour permettre de remettre le cache à zéro plus rapidement et pour limiter la cohérence;
49 3 Benjamin Bohard
* journalisation ;
50 3 Benjamin Bohard
* option noatime.
51 3 Benjamin Bohard
52 3 Benjamin Bohard
h5. Structure du cache
53 4 Benjamin Bohard
54 6 Benjamin Bohard
h6. ufs
55 6 Benjamin Bohard
56 7 Benjamin Bohard
Le cache est géré dans une arborescence à deux niveaux.
57 7 Benjamin Bohard
58 7 Benjamin Bohard
L'accès et la création des fichiers sont gérés par le processus squid. Certaines fonctions sont bloquantes et participent au ralentissement du service.
59 6 Benjamin Bohard
60 6 Benjamin Bohard
h6. aufs
61 6 Benjamin Bohard
62 8 Benjamin Bohard
Le cache est géré dans une arborescence à deux niveaux (idem ufs).
63 8 Benjamin Bohard
Un nombre de threads par cache_dir est en charge d'accéder et de créer les fichiers dans le cache. Le nombre de fichiers ouvrables (file descriptors) est mutualisé. Selon la version de squid, tout ou partie des opérations sur le cache sont asynchrones.
64 6 Benjamin Bohard
65 6 Benjamin Bohard
h6. diskd
66 1 Benjamin Bohard
67 8 Benjamin Bohard
Le cache est géré dans une arborescence à deux niveaux (idem ufs).
68 6 Benjamin Bohard
Un processus indépendant est en charge du cache.
69 6 Benjamin Bohard
70 1 Benjamin Bohard
h6. rock (pour Trusty)
71 1 Benjamin Bohard
72 9 Benjamin Bohard
Un fichier
73 9 Benjamin Bohard
74 9 Benjamin Bohard
h2. Étude de cas
75 9 Benjamin Bohard
76 9 Benjamin Bohard
h3. Paramètres par défaut dans le module Amon
77 9 Benjamin Bohard
78 4 Benjamin Bohard
79 3 Benjamin Bohard
h3. Profilage du proxy-cache