Réponse du serveur aux demandes ouvertes sur les fichiers verrouillés
La vie d’un verrou opportuniste comprend trois intervalles de temps distincts. Pendant chacun d’eux, le serveur détermine par différents moyens sa réaction à une demande d’un client pour ouvrir un fichier verrouillé par un autre client. En général, vous pouvez réduire l’impact que votre application a sur d’autres clients et l’impact qu’ils ont sur votre application en lui accordant autant de partage que possible, en demandant le niveau d’accès minimal nécessaire et en utilisant le verrou opportuniste le moins intrusif adapté à votre application.
Tout d’abord, la période après l’ouverture d’un fichier pour un client, mais avant d’accorder un verrou. Pendant ce temps, aucun verrou n’existe sur le fichier, et le serveur dépend du partage, des modes d’accès et du type de verrou opportuniste que vous demandez pour déterminer sa réaction à une autre demande pour ouvrir le même fichier. Par exemple, si vous ouvrez le fichier en question pour l’accès en écriture, vous pouvez empêcher l’octroi de verrous opportunistes qui autorisent l’accès en cache en lecture à d’autres clients. L’intervalle de temps avant que le serveur accorde un verrou est généralement dans la plage de millisecondes, mais peut être plus long.
Une fois le verrou opportuniste accordé, le serveur examine le verrou pour déterminer la réaction du serveur à une demande ouverte sur un fichier verrouillé. Là encore, la façon dont votre application a ouvert le fichier et le type de verrou qu’elle contient affecte la façon dont le serveur répond. Pour plus d’informations sur la façon dont le serveur répond dans chaque cas, consultez Types de verrous opportunistes.
Enfin, il existe l’étendue après que le serveur détermine que votre verrou doit être rompu (terminé) mais avant que votre application ne termine sa réaction à l’arrêt. Selon le type de verrou, votre application peut rétrograder le verrou au niveau inférieur ou à aucun. Votre application peut également fermer le fichier et le verrou. Pendant ce temps, le serveur contient en attente toutes les demandes d’autres clients pour ouvrir le fichier précédemment verrouillé. Cet intervalle de temps peut passer de millisecondes à dizaines de secondes. Pour plus d’informations, consultez Cassant les verrous opportunistes.