Перевод текста на русский язык:
typeof(FirstMessageEventHandler));
throw new Exception("Исключение потребления, демонстрация тестирования: сбой уведомления о потреблении из FirstMessageExceptionEventHandler!");
}
}
}
Install-Package Anno.EngineData.Cache
using System;
using System.Collections.Generic;
using System.Text;
using Anno.EngineData;
using Anno.EngineData.Cache;
namespace Anno.Plugs.CacheRateLimitService
{
public class CacheModule : BaseModule
{
/*
Параметр 1: длина кэша
Параметр 2: время жизни кэша
Параметр 3: является ли время жизни кэша скользящим
*/
[CacheLRU(5,6,true)]
public ActionResult Cache(string msg)
{
Console.WriteLine(msg);
return new ActionResult(true, null,null,msg);
}
}
}
Install-Package Anno.EngineData.RateLimit
using System;
using System.Collections.Generic;
using System.Text;
using Anno.EngineData;
using Anno.RateLimit;
namespace Anno.Plugs.CacheRateLimitService
{
public class LimitModule : BaseModule
{
/*
Параметр 1: алгоритм ограничения потока — это токеновый бак или дырявое ведро
Параметр 2: временной интервал ограничения потока в секундах
Параметр 3: количество запросов, которое можно пропустить за единицу времени
Параметр 4: ёмкость бака
*/
[EngineData.Limit.RateLimit(LimitingType.TokenBucket,1,5,5)]
public ActionResult Limit(string msg)
{
Console.WriteLine(msg);
return new ActionResult(true, null, null, msg);
}
}
}
#dotnet dotnet publish "E:\gitProject\Anno\DCS\AppCenter\AppCenter.csproj" -c Release -r linux-x64 -o "E:\gitProject\Anno\DCS\AppCenter\bin"
#Описание файла конфигурации
{
"Target": {
"AppName": "traceWeb",--имя службы
"IpAddress": "127.0.0.1",--адрес центра регистрации
"Port": 6660,--порт центра регистрации
"TraceOnOff": true--включение отслеживания цепочки вызовов
},
"Limit": {--ограничение потока
"Enable": true,--включить ограничение потока
"TagLimits": [--ограничения по тегам
{
"channel": "*",--канал
"router": "*",--маршрутизатор
"timeSpan": "10",--единица временного интервала в секундах
"rps": 1,--количество допустимых запросов за временной интервал
"limitSize": 2--размер буфера для использования в качестве буфера
}
],
"DefaultIpLimit": {--стратегия ограничения по умолчанию для IP
"timeSpan": 1,
"rps": 20,
"limitSize": 200
},
"IpLimits": [--стратегии ограничения для IP (ipMatch ссылается на IPAddressRange)
{
"ipMatch": "0.0.0.1",
"timeSpan": 1,
"rps": 100,
"limitSize": 100
},
{
"ipMatch": "192.168.0.10 - 192.168.10.20",
"timeSpan": 1,
"rps": 100,
"limitSize": 100
}
],
"White": [--белый список
"0.0.0.1",
"192.168.1.2",
"192.168.2.18"
],
"Black": [--чёрный список
"0.0.0.2",
"192.168.3.18"
]
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )