Sua implantação não está causando 12.000 transações. Isso está causando talvez 5-10 (como pode haver várias leituras de bloco, dependendo do tamanho do pacote de implantação).
Quando você implanta no Windows Azure, precisa de algum modo de monitorar seu aplicativo externamente. É aqui que o Diagnóstico do Windows Azure entra em execução. Todos os seus logs de diagnóstico, contadores de desempenho, instruções de rastreamento, etc. do Windows Azure são gravados no Armazenamento de Tabela (ou armazenamento de blob, no caso de logs do IIS).
Se você acumulou 12.000 transações em, digamos, 3 dias, a média é de 2 a 3 por minuto. Nesse ritmo, você acumula cobranças de cerca de 12 centavos por mês.
Se você quiser reduzir o número de transações, você mesmo pode configurar diagnósticos, em vez de confiar nos valores padrão (sejam eles quais forem). Por exemplo, aqui está uma configuração bem simples que poderia ser encontrada em OnStart()
:
DiagnosticMonitorConfiguration diag = DiagnosticMonitor.GetDefaultInitialConfiguration();
var perfCounter = new PerformanceCounterConfiguration()
{
CounterSpecifier = @"\processor(*)\% Processor Time",
SampleRate = TimeSpan.FromSeconds(30)
};
diag.PerformanceCounters.DataSources.Add(perfCounter);
diag.PerformanceCounters.ScheduledTransferPeriod = TimeSpan.FromMinutes(5);
diag.DiagnosticInfrastructureLogs.ScheduledTransferLogLevelFilter = LogLevel.Error;
diag.DiagnosticInfrastructureLogs.ScheduledTransferPeriod = TimeSpan.FromMinutes(5);
diag.Logs.ScheduledTransferLogLevelFilter = LogLevel.Error;
diag.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(5);
DiagnosticMonitor.Start(CloudStorageAccount.DevelopmentStorageAccount, diag);
Embora esses valores sejam arbitrários, o ponto-chave é que as transferências para o armazenamento de tabela (ou Blob) agora ocorrem apenas uma vez a cada 5 minutos, por tipo de objeto. Observação: se você tiver várias instâncias em execução, também terá vários uploads para armazenamento .