BasicHttpBinding.MaxBufferSize Propriété

Définition

Obtient ou définit la taille maximale (en octets) d'une mémoire tampon qui reçoit les messages du canal.

public:
 property int MaxBufferSize { int get(); void set(int value); };
public int MaxBufferSize { get; set; }
member this.MaxBufferSize : int with get, set
Public Property MaxBufferSize As Integer

Valeur de propriété

Int32

Taille maximale, en octets, d’une mémoire tampon qui stocke des messages pendant leur traitement pour un point de terminaison configuré avec cette liaison. La valeur par défaut est de 65 536 octets.

Exemples

L’exemple suivant définit MaxBufferSize sur 1 000 000 octets.

BasicHttpBinding binding = new BasicHttpBinding();

// set to one million
binding.MaxBufferSize = 1000000;

La valeur de cette propriété peut également être définie dans le fichier de configuration.

Remarques

S’il n’y a pas suffisamment de mémoire dans le pool de mémoires tampons pour stocker le message pendant son traitement, davantage de mémoire doit être allouée à partir du tas CLR, ce qui augmente le traitement de l’opération garbage collection. Une allocation importante de mémoire issue du tas de garbage CLR indique que la taille de mémoire tampon du message est trop petite et qu'il est possible d'améliorer les performances en augmentant la limite.

La valeur de la propriété MaxBufferSize et sa signification est différente selon que les messages sont mis en mémoire tampon ou diffusés sur le canal via lequel ils sont reçus :

Les limitations de la taille de la mémoire tampon définies ici ont pour but d'optimiser les performances des échanges de messages. Si un message dépasse la valeur maximale définie pour la mémoire tampon, il n'est pas supprimé. À la place, le gestionnaire demande davantage de mémoire au tas CLR. Le traitement de l’opération garbage collection est par conséquent plus important que dans le cas de l’utilisation de mémoires tampons.

Notes

Les paramètres de MaxBufferSize et MaxReceivedMessageSize sont des paramètres comportementaux locaux. Cela signifie qu'ils ne sont pas transmis à d'autres points de terminaison dans les métadonnées. Si vous générez un proxy pour un service qui limite dans les métadonnées les messages à une taille maximale de 2 Go, le proxy reprend la valeur par défaut de 64 Ko. Les administrateurs locaux peuvent ainsi contrôler les limites de taille des messages et des tampons de messages.

S’applique à