Поделиться через


Orleans.Providers.Streams.Common Пространство имен

Классы

BlockPoolMonitorDimensions

Статистические измерения для мониторов пула блоков.

CacheDataComparerExtensions

Функции расширения сравнения данных кэша, которые переключают порядок аргументов

CachedMessageBlock

CachedMessageBlock — это блок тесно упакованных структур, содержащих данные отслеживания кэшированных сообщений. Эти данные плотно упакованы для снижения давления мусора. Данные отслеживания используются кэшем очередей для обхода кэша, обслуживая упорядоченные сообщения очереди по потоку.

CachedMessageBlock<TCachedMessage>

CachedMessageBlock — это блок тесно упакованных структур, содержащих данные отслеживания кэшированных сообщений. Эти данные плотно упакованы для снижения давления мусора. Данные отслеживания используются кэшем очередей для обхода кэша, обслуживая упорядоченные сообщения очереди по потоку.

CachedMessageExtensions

Расширения для CachedMessage.

CacheMonitorDimensions

Агрегирование измерений для монитора кэша.

ChronologicalEvictionStrategy

Стратегия вытеснения, которая вытеснает данные на основе возраста.

ChronologicalEvictionStrategy<TCachedMessage>

Стратегия вытеснения, которая вытеснает данные на основе возраста.

DefaultBlockPoolMonitor

Блочный монитор пула, используемый в качестве параметра по умолчанию в GeneratorStreamProvider и MemoryStreamProvider.

DefaultCacheMonitor

монитор кэша, используемый в качестве параметра по умолчанию в GeneratorStreamprovider и MemoryStreamProvider

DefaultQueueAdapterReceiverMonitor

Монитор приемника адаптера очереди, используемый в качестве параметра по умолчанию в GeneratorStreamprovider и MemoryStreamProvider

EventSequenceToken

Токен последовательности потоковой передачи, отслеживающий порядковый номер и индекс событий

EventSequenceTokenV2

Токен последовательности потоковой передачи, отслеживающий порядковый номер и индекс событий

EvictionStrategyCommonUtils
FixedSizeBuffer

Управляет непрерывным блоком памяти. Вызывает действие очистки с самим собой в качестве запроса на очистку, когда он получает сигнал о очистке.

MonitorAggregationDimensions

Базовый класс для хранения статистических измерений монитора

ObjectPool<T>

Простой пул объектов, использующий стек для хранения доступных объектов.

ObjectPoolMonitorBridge

ObjectPoolMonitor сообщает метрики для ObjectPool, основанные на количестве объектов. Метрики отчета BlockPoolMonitor для BlockPool, основанные на размере памяти. Эти два монитора сходятся в инфраструктуре кэша Orleans, где ObjectPool используется в качестве пула блоков для выделения памяти, где каждый объект представляет блок памяти с размером. ObjectPoolMonitorBridge — это мост между этими двумя мониторами в инфраструктуре кэша. Когда ObjectPoolMonitor сообщает метрику, пользователь, настроенный BlockPoolMonitor, вызовет соответствующий метод и метрику отчета на основе математики: memoryInByte = objectCount*objectSizeInByte

PersistentStreamProvider

Поставщик постоянного потока, использующий адаптер для сохраняемости

PersistentStreamProvider<TAdapterFactory>

Поставщик постоянного потока, использующий адаптер для сохраняемости

PooledQueueCache

PooledQueueCache — это кэш, предназначенный для использования в качестве кэша сообщений в IQueueCache. Он способен хранить большое количество сообщений (концерты сообщений) в течение длительных периодов времени (в минутах до неопределенного времени), а также минимальное снижение производительности из-за сборки мусора. Этот кэш в пуле выделяет память и никогда не освобождает ее. Он сохраняет свободные ресурсы, доступные в пулах, которые остаются в использовании приложениями на протяжении всего срока службы. Это означает, что эти объекты переходят в 2-е поколение, сжимаются, а затем остаются там. Это относительно дешево, так как единственная стоимость, на которые они в настоящее время взимается, это стоимость проверки, чтобы узнать, должны ли они быть освобождены в каждом цикле сбора. Так как в этом кэше используется небольшое количество больших объектов с относительно простыми графами объектов, проверка большого количества небольших объектов с более сложными графами объектов будет менее затратной. Из соображений производительности этот кэш предназначен для более тесного согласования с данными, зависящими от очереди. Отчасти поэтому, в отличие от SimpleQueueCache, этот кэш не реализует IQueueCache. Он предназначен для использования в конкретных реализациях IQueueCache для конкретных очередей.

PooledQueueCache<TQueueMessage,TCachedMessage>

PooledQueueCache — это кэш, предназначенный для использования в качестве кэша сообщений в IQueueCache. Он способен хранить большое количество сообщений (концерты сообщений) в течение длительных периодов времени (в минутах до неопределенного времени), а также минимальное снижение производительности из-за сборки мусора. Этот кэш в пуле выделяет память и никогда не освобождает ее. Он сохраняет свободные ресурсы, доступные в пулах, которые остаются в использовании приложениями на протяжении всего срока службы. Это означает, что эти объекты переходят в 2-е поколение, сжимаются, а затем остаются там. Это относительно дешево, так как единственная стоимость, на которые они в настоящее время взимается, это стоимость проверки, чтобы узнать, должны ли они быть освобождены в каждом цикле сбора. Так как в этом кэше используется небольшое количество больших объектов с относительно простыми графами объектов, проверка большого количества небольших объектов с более сложными графами объектов будет менее затратной. Из соображений производительности этот кэш предназначен для более тесного согласования с данными, зависящими от очереди. Отчасти поэтому, в отличие от SimpleQueueCache, этот кэш не реализует IQueueCache. Он предназначен для использования в конкретных реализациях IQueueCache для конкретных очередей.

PooledResource<T>

Служебный класс для поддержки объектов в пуле, позволяя им отслеживать пул, из который они пришли, и возвращаться к нему при удалении

ReceiverMonitorDimensions

Статистические измерения для монитора приемника.

RecoverableStreamProviderSettings

Общие параметры поставщика потоков, совместно используемые EventHubStreamProvider, MemoryStreamProvider и GeneratorStreamProvider

SegmentBuilder

Служебный класс для кодирования данных в ArraySegment.

SimpleQueueAdapterCache

Адаптер для простых кэшей очередей.

SimpleQueueCache

Кэш очереди, который хранит элементы в памяти.

SimpleQueueCacheCursor

Наведите курсор в простой кэш очереди.

StreamPosition

Положение потока однозначно определяет позицию события в потоке. При получении позиции потока для пакета событий позиция потока будет первой в пакете.

TimePurgePredicate

Определяет, следует ли удалять данные в зависимости от времени.

Структуры

CachedMessage

Это плотно упакованная кэшированная структура, содержащая сообщение очереди. Он должен содержать только типы значений.

Интерфейсы

IBlockPoolMonitor

Отслеживайте метрики, связанные с пулом блоков отслеживания. Пул блоков используется в системе кэша для управления памятью

ICacheDataAdapter

Кэш очередей в пуле хранит данные в плотно упакованных структурах, которые необходимо быстро преобразовать в различные другие форматы. Так как форматы данных могут изменяться в соответствии с типом очереди и форматом данных, этот интерфейс позволяет разработчикам адаптеров создавать пользовательские преобразования данных, соответствующие различным типам данных очереди.

ICacheDataAdapter<TQueueMessage,TCachedMessage>

Кэш очередей в пуле хранит данные в плотно упакованных структурах, которые необходимо быстро преобразовать в различные другие форматы. Так как форматы данных могут изменяться в соответствии с типом очереди и форматом данных, этот интерфейс позволяет разработчикам адаптеров создавать пользовательские преобразования данных, соответствующие различным типам данных очереди.

ICacheDataComparer<TCachedMessage>

Сравнивает кэшированные сообщения с различными сведениями о потоке.

ICacheMonitor

Отвечает за мониторинг метрик, связанных с кэшем.

IEvictionStrategy

Стратегия вытеснения для PooledQueueCache

IEvictionStrategy<TCachedMessage>

Стратегия вытеснения для PooledQueueCache

IObjectPool<T>

Простой интерфейс пула объектов. Выделенные объекты должны возвращаться в пул при удалении.

IObjectPoolMonitor

Мониторинг метрик, связанных с пулом объектов отслеживания

IPurgeObservable

Функциональные возможности для действий, связанных с очисткой.

IPurgeObservable<TCachedMessage>

IPurgeObservable реализуется кэшем для выполнения связанных действий по очистке и вызывается методом EvictionStrategy.

IQueueAdapterReceiverMonitor

Отвечает за мониторинг метрик производительности приемника.

Перечисления

PersistentStreamProviderCommand

Команды, которые могут обрабатываться .PersistentStreamProvider

PersistentStreamProviderState