ADC

Prise en charge du cache pour les protocoles de base de données

La fonction de cache intégrée surveille et met en cache la demande de base de données tel que déterminé par les stratégies de cache. Les utilisateurs doivent configurer les stratégies de cache pour les protocoles MYSQL et MSSQL car l’appliance Citrix ADC ne fournit aucune stratégie par défaut. Lors de la configuration des protocoles par défaut, rappelez-vous que les stratégies basées sur les demandes ne prennent en charge que les actions CACHE et INVAL, tandis que les stratégies basées sur les réponses ne prennent en charge que l’action « NOCACHE ». Après avoir configuré les stratégies, vous devez les lier aux serveurs virtuels. Les stratégies MYSQL et MSSQL, à la fois requête et réponse, sont liées uniquement aux serveurs virtuels.

Avant de créer une stratégie de cache, vous devez créer un groupe de contenu de cache de type MYSQL ou MSSQL. Lorsque vous créez un groupe de contenu de cache, associez au moins un sélecteur de sélection à celui-ci. Reportez-vous à la section Configuration d’un groupe de contenu de base pour configurer un groupe de contenu de cache.

L’exemple suivant explique comment configurer et vérifier la prise en charge du cache pour les protocoles SQL.

> enable feature IC
> set cache parameter -memlimit 100
> add cache selector sel1 mssql.req.query.text

> add cache contentgroup cg1  -type "MSSQL" -hitselector "sel1" -invalselector "inval_sel" -relExpiry "500" -maxResSize
 "100"
> add cache policy cp1  -rule "mssql.req.query.command.contains("select")" -action "CACHE" -storeInGroup "cg1"
> add cache policy cp2  -invalObjects "cg1" -rule "mssql.req.query.text.contains("insert")" -action "INVAL"
> add db user user1  -password "Pass1"
> add service svc_sql_1 10.102.147.70 mssql 64834 -healthMonitor "NO" -downstateflush "ENABLED"
> add lb vserver lb_mssql1 mssql 10.102.147.77 1433  -lbmethod "roundrobin"
> bind lb vserver lb_mssql1 svc_sql_1
> bind lb vserver lb_mssql1 -policyName cp1  -type "REQUEST" -priority "2"
> bind lb vserver lb_mssql1 -policyName cp2  -type "REQUEST" -priority "1"

> show cache selector sel1
     Name:sel1
                    Expressions:
                    1)mssql.req.query.text
> show cache policy cp1
                    Name:cp1
     Rule:mssql.req.query.command.contains("select")
                    CacheAction:CACHE
                    Stored in group: cg1
                    UndefAction:Use Global
                Hits:2
                    Undef Hits:0
                    Policy is bound to following entities
                    1) Bound to:
                                REQ VSERVER lb_mssql1
                                Priority:2
                                GotoPriorityExpression: END
<!--NeedCopy-->

Remarque :

Les méthodes de réduction des foules flash, comme expliqué dans Réduction des foules Flash, ne sont pas prises en charge pour les protocoles MYSQL et MSSQL.

Prise en charge du cache pour les protocoles de base de données