5. Agenda
1. Qu’est ce que le cache ?
2. Pourquoi le cache ?
3. Planifier le cache
4. Configurer le cache
5. Quelques exemples
6. Un peu de Debug
7. Etat de santé
8. Un peu d’archi si on a le temps
9. Pourquoi le cache ?
Pourquoi le cache ?
Gagner de la charge processeur (Puissance de traitement)
Gagner de la bande passante
Pourquoi partager le cache ?
Multiplier les bénéfices du cache
Pourquoi le cache distribué ?
Il est extensible … dans une certaine mesure
Plus résistant en cas de panne
10. Les inconvénients du Cache
Les données obsolètes
Changement de sources, modification extrêmement fréquentes
Expiration de minuterie et événements dotés, expulsion manuelle du nœud
Le cache n’est pas aussi fort que la source de données
Les BDD sont faites pour être en haute dispo, sauvegardes, redondantes
Pas le cache
Le cache a besoin de mémoire
Plus d'espace mémoire et disque requis ; moins de temps réseau et traitement requis
12. SharePoint 2013 Distributed Cache Service
Installation et démarrage sur tous les Serveurs
Activé par défaut sauf le SQL.
Arrêt via CA, Powershell est préféré
13. Cache Setup
Compte de Ferme qui éxécute le Cache Service
- AppFabric Caching Service
Identique au Sync User Profil ( setup et diminution des privilèges)
14. General Cache Server Sizing Guidelines
Serveurs de cache utilisent environ 50 % de la mémoire allouée pour le fonctionnement général
16 Go par Serveur de Cache ( si >Timeout possible pour le vidage de cache)
2 Go pour OS
Au-dessus cela fonctionnera, mais le vidage du cache peut prendre plus de temps que prévu pour l’effacer, il se peut que le
serveur affiche des timeouts
Avec un serveur à 14 Go de RAM :
50% * = 7 Go de stockage et de 7 Go pour le cache
Dans l’exemple précèdent,
/ (50% * = Nb de servers de caches dont vous aurez besoin.
15. Cache Implementation
Serveurs dédiés pour le cache. (Pas de role WFE ou de Service Apps)
Les données dans leur ensemble sont divisées et distribuées entre tous les serveurs de cache
Si un serveur tombe en panne de façon inattendue, la performance de l'utilisateur va souffrir jusqu'à ce
que d'autres serveurs se remplissent avec les données perdues
-> Ce processus peut être accéléré avec des commandes PowerShell :
- Clear-SPDistributedCacheItem
- Update-SPRepopulateMicroblogLMTCache
- Update-SPRepopulateMicroblogFeedCache
- Stop-SPDistributedCacheServiceInstance
18. AppFabric Physical Architecture
Cache Cluster: Collection de serveurs permettant un accès unique au Distributed Cache
Service.
Cache Cluster Configuration: Stock la configuration des données de la ferme
Cache Host: Membre des nœuds de la ferme
19. AppFabric Logical Architecture
Named Caches: Conteneurs des éléments du cache
Cached Objects: Clé/Valeur individuelle stockée dans un cache
nommé
Regions: Collections d’objets mis en cache.
Les objets peuvent être placés directement
dans un cache ou une région spécifique.
20. SharePoint Cache Infrastructure
Chaque objet ou region du cache est stocké UNE SEULE FOIS
Sera perdu du host si éteint…
SharePoint peut avoir des problèmes avec les hôtes qui ne sont pas disponible.
Stopping a host:
Stop-SPDistributedCacheServiceInstance –Graceful
Remove-SPDistributedCacheServiceInstance
Starting a host:
Start-SPServiceInstance
Add-SPDistributedCacheServiceInstance
New-SPConfigurationDatabase -SkipRegisterAsDistributedCacheHost
25. Cache Host Configuration
Communication Ports
Cache Port (22233)
Cluster Port (22234)
Arbitration Port (22235)
Replication Port (22236)
Size
HighWatermark and LowWatermark
IsLeadHost ( Gestion du cluster)
26. Memory Requirements
Allocation initiale de 5% de la mémoire physique totale ( Caching Service)
CacheSize + 100MB doit être disponible dès le démarrage du service
Changer le cache size:
Update-SPDistributedCacheSize
Set-AFCacheHostConfiguration
Recommendations:
Machine AppFabric dédiée
Alloue 50% de la mémoire physique disponible
>16GB of RAM
Throttling
Moins de 15% sur la mémoire physique disponible
Moins 4% du cache alloué disponible
Dynamic Memory n’est pas supporté
28. SharePoint Cache Management
Get/Set-SPDistributedCacheClientSetting
Clear-SPDistributedCacheItem
Non supporté pour :
Lire ou Ecrire dans les caches de SharePoint
Créer des caches nommés supplémentaires via le modèle d'objet SharePoint
Créer des caches nommés supplémentaires sur les serveurs de cache distribué SharePoint via AF
PowerShell
Besoin d'un cache d'AppFabric pour une application personnalisée?
Créer un cluster séparé pour cette application.
31. Logs
Event Logs
Microsoft-Windows-Application Server-System Services
Microsoft-Windows-Application Server-Applications
DistributedCacheService.exe.config
configuration/dataCacheConfig/log: location and logLevel
For PowerShell sessions
Set-AFCacheAdminLogging
Set-AFCacheConfigurationLogging
WCF Tracing
Enable via system.diagnostics in DistributedCacheService.exe.config
32. PerfMon
AppFabric Caching: Cache and Host
Total Eviction Runs (Cache and Host)
Total Data Size Bytes (Cache and Host)
Total Object Count (Cache and Host)
AppFabric Caching: Host
Available Memory Percentage
Gateway Process Time
Total Available Memory Bytes
Throttled Connections Count
.NET CLR Memory
# Bytes in all Heaps
% Time in GC
Memory
Process/Working Set and Virtual Bytes
33. Cache Server Performance
Compteurs de performances dans Developer ’s Dashboard
●
# of reads
●
# of writes
●
# of hits
●
# of misses
●
time for read
●
time for write
●
Total I/O (how much data has been transferred in a given period of time)
34. Cache Service Health
Tracking du Cache Service :
– Si un des Cache Host dans le Cluster est down(Availability)
– Cache host est en état throttled (Availability)
– Le noeud de haute disponibilité pour le Cache Distribué de SP n'est pas disponible
(Availability) –arrive quand il ya moins de 2 serveurs exécutant le service de cache
– Mauvais réglage Firewall sur le Cache Host (Configuration)
– Existe au moins un cache host dans le cluster et SP ne le sais pas (Configuration) – arrive quant le
service de cache est désactivé (SP) mais AppFabric Caching Service tourne
– Objets mis en cache ont été expulsées(Configuration) – indique que “l’éviction” s’est déroulé
36. Conclusion
Les details de la configuration sont stockés dans la Config DB
10 SharePoint Caches
Caches personnalisés ne sont pas supportés;
il faut utiliser des serveurs indépendant.
High Availability/Redundancy non disponible pour les caches de
SharePoint
AppFabric PowerShell cmdlets peuvent être utilisés pour surveiller et
manipuler les caches.
Blob Cache: Les bases de données – Les lectures disques sont plus rapides qu’un A/R vers la BDD Cache de sortie pages Asp : Copie en local des pages HTML Cache des objets : Les requêtes CrossSite (pas besoin de rééxécuter la requête) Filesystem Cache : Sérialiser les objets persistants de SharePoint (configDB) Distributed Cache : Stocke différentes données des services SharePoint