OnCorretor 3.0.0.0

De MSTECH wiki
Ir para: navegação, pesquisa

Dados do teste

Sistemas:

  • OnCorretor 3.0.0.0

Período do teste:

  • 24/11/2016 a 02/12/2016

Responsável pelos testes:

  • Taynara Nakashima
  • André Iguera

Verificação de Desempenho

Observação do teste

Durante a construção dos cenários de testes foram encontrados alguns bugs, segue relação dos mesmos abaixo:

Log 1

Message:Object reference not set to an instance of an object.
Source error:App_Web_qlczfjuy
Stack Trace:   at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.<>c__DisplayClass38.<>c__DisplayClass3a.<Execute>b__2c(ContentQueryResultItem ci) in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 200
  at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
  at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
  at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
  at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.<>c__DisplayClass38.<>c__DisplayClass3a.<Execute>b__29(TextWriter __razor_template_writer) in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 200
  at System.Web.WebPages.HelperResult.ToString()
  at MStech.CMS.Web.HtmlTemplate`1.WriteTo(HtmlTextWriter writer)
  at MStech.CMS.Web.UI.WidgetView.Render(HtmlTextWriter writer)
  at System.Web.WebPages.WebPageBase.Write(HelperResult result)
  at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.Execute() in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 38
  at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
  at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
  at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
  at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
  at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1a.<InvokeActionResultWithFilters>b__17()
  at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation)
  at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation)
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult)

Log 2

  • Erro ao migrar Log
Message:Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were    loaded. See http://go.microsoft.com/fwlink/?LinkId=472540 for information on understanding and handling optimistic concurrency exceptions.
Source error:EntityFramework
Stack Trace:   at System.Data.Entity.Internal.InternalContext.SaveChanges()
  at MStech.CMS.Web.Data.Entity.LogErrorsRepository.ArquivarLogs()
  at MStech.CMS.Web.ServiceModel.JobsQuartz.MigrarLog.Execute(IJobExecutionContext context)
Inner exception:Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities  were loaded. See http://go.microsoft.com/fwlink/?LinkId=472540 for information on understanding and handling optimistic concurrency exceptions.
Message:Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. See http://go.microsoft.com/fwlink/?LinkId=472540 for information on understanding and handling optimistic concurrency exceptions.
Source error:EntityFramework
Stack Trace:   at System.Data.Entity.Core.Mapping.Update.Internal.UpdateTranslator.ValidateRowsAffected(Int64 rowsAffected, UpdateCommand source)
  at System.Data.Entity.Core.Mapping.Update.Internal.UpdateTranslator.Update()
  at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction,  Boolean releaseConnectionOnSuccess)
  at System.Data.Entity.Core.Objects.ObjectContext.SaveChangesToStore(SaveOptions options, IDbExecutionStrategy executionStrategy, Boolean  startLocalTransaction)
  at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
  at System.Data.Entity.Core.Objects.ObjectContext.SaveChangesInternal(SaveOptions options, Boolean executeInExistingTransaction)
  at System.Data.Entity.Internal.InternalContext.SaveChanges()

Log 3

  • Erro na aplicação. Por favor, entre em contato com o suporte.
Message:A potentially dangerous Request.Path value was detected from the client (&).
Source error:System.Web
Stack Trace:   at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
  at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)

Log 4

*Message:'Newtonsoft.Json.Linq.JValue' does not contain a definition for 'id'
Source error:Anonymously Hosted DynamicMethods Assembly
Stack Trace:   at CallSite.Target(Closure , CallSite , Object )
  at System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0)
  at CallSite.Target(Closure , CallSite , Object )
  at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.<>c__DisplayClass38.<>c__DisplayClass3a.<Execute>b__2a(Object x) in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 175
  at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
  at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
  at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
  at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.<>c__DisplayClass38.<>c__DisplayClass3a.<Execute>b__29(TextWriter __razor_template_writer) in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 175
  at System.Web.WebPages.HelperResult.ToString()
  at MStech.CMS.Web.HtmlTemplate`1.WriteTo(HtmlTextWriter writer)
  at MStech.CMS.Web.UI.WidgetView.Render(HtmlTextWriter writer)
  at System.Web.WebPages.WebPageBase.Write(HelperResult result)
  at ASP._Page_content_widgets_banners_BannerCarrossel_index_cshtml.Execute() in \\ds-ht04\webteste\sites\OnCorretor\Construtor\Content\widgets\banners\BannerCarrossel\index.cshtml:line 38
  at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
  at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
  at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
  at MStech.CMS.Web.WidgetHtmlExtensions.SaveWidgetHtml(Controller controller, WidgetInstance widget, String viewName, Object model)
  at MStech.CMS.Web.Controllers.WidgetController.GenericChildAction(Int32 id, WidgetInstance wgi)
  at lambda_method(Closure , ControllerBase , Object[] )
  at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
  at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass42.<BeginInvokeSynchronousActionMethod>b__41()
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.<BeginInvokeActionMethodWithFilters>b__33()
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<>c__DisplayClass2a.<BeginInvokeAction>b__20()
  at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult)

Log 5

Message:An error occurred when trying to create a controller of type 'MStech.CMS.Web.Controllers.DynamicUIController'. Make sure that the controller has a parameterless public constructor.
Source error:System.Web.Mvc
Stack Trace:   at System.Web.Mvc.DefaultControllerFactory.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType)
  at System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName)
  at System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory)
  at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state)
  at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
  at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Inner exception:No parameterless constructor defined for this object.
Message:No parameterless constructor defined for this object.
Source error:mscorlib
Stack Trace:   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached,  RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
  at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
  at System.Activator.CreateInstance(Type type, Boolean nonPublic)
  at System.Activator.CreateInstance(Type type)
  at System.Web.Mvc.DefaultControllerFactory.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType)

Log 6

  • Erro ao construir a URL de integração com o Venda Online na Landing Page grupoabc do site mbs-abc.com.br
Message:Sequence contains no elements
Source error:System.Core
Stack Trace:   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
  at ASP._Page_Views_LandingPage_LandingPageLayout3_cshtml.Execute() in \\ds- ht04\webteste\sites\OnCorretor\Construtor\Views\LandingPage\LandingPageLayout3.cshtml:line 269


Para a realização dos testes foram utilizados:

  • 1 Servidor SQL
  • 8 Servidores WEB
  • 1 Controller
  • 1 Test agent

Análise do teste

Os testes foram divididos em dois cenários principais:

  • Cenário C1 - Usuários acessando a página do corretor (90%) e corretores fazendo login, adicionando banner e salvando (10%);
  • Cenário C2 - Usuários acessando a página do corretor (100%)

OS testes foram realizados com 50 e 100 usuários simultâneos. Os servidores WEB utilizados (8) tiveram uma alta taxa de utilização de memória RAM, inviabilizando testes com mais de 100 usuários. Esta situação pode ser comprovada com a alta taxa de páginas por segundo, podendo indicar uma falta de memória, resultando na utilização de memória virtual pela aplicação.

Em relação à memória RAM do SQL, houve uma diminuição considerável do consumo nos cenários sem a utilização de cache. No cenário C1 com cache, o alto consumo pode ser explicado pelo fato do cache ter sido esvaziado antes do início dos testes, fazendo com que o sistema consumisse carga para realizar uma nova gravação do cache. No cenário C2, o consumo de memória do SQL se manteve estável em 20%. Podemos concluir que as atividades de edição do cenário C1 são responsáveis por grande parte do consumo de memória do SQL.

A expectativa de vida das páginas está muito acima do recomendado em todos os cenários, sendo pior nos cenários com cache. Indica que as páginas estão ficando muito tempo na área de buffers, sem referência.

Em relação ao processador, foi possível observar que o processador possui uma elevada taxa de mudança de contexto, o que significa que o processador é compartilhado repetidamente, por exemplo, por muitos segmentos de igual prioridade. A alta taxa de contexto-chave muitas vezes indica que existem muitos segmentos que competem para os processadores no sistema. A taxa de trocas de contexto também pode afetar o desempenho de computadores com múltiplos processadores. A fila do processador ficou dentro do esperado em todos os cenários.

Em relação à rede, apresentou menores taxas de falhas TCP nos cenários com cache. Pode ser explicado pelo fato de que, com a utilização do cache, o sistema não precisa fazer tantas requisições ao BD. No cenário C2, as taxas foram baixas com ou sem a utilização de cache, o que pode indicar uma relação entre as ações de login/edição e os erros TCP.

Em relação aos tempos de resposta, a ação "Acessar site do corretor" foi a mais demorada, levando em média de 8 a 12 segundos em todos os cenários, seguida da ação "Realizar login".

O JMeter encontrou mais erros durante a execução dos cenários sem cache.

Cenários de uso

Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
Cenário C1: Editar página corretora (corretor)
01 - Acessar tela de login 5 1
01 - Realizar login 3 10
01 - Clicar em "Editar página" 5 1
01 - Clicar para exibir componentes 5 1
01 - Adicionar componente banner 5 1
01 - Adicionar banner 8 2
01 - Salvar 10 2
01 - Logout 5 1
Cenário C2: Acesso a home (usuário)
02 - Acessar site do corretor 5 1
02 - Acessar um item do menu 10 3
02 - Acessar um item do menu 10 3
02 - Acessar um item do menu 10 3
02 - Acessar um item do menu 10 3

TOP queries mais lentas

  • Item 1

Média de CPU 00:00:00.260 / Tempo decorrido 00:00:07.113

1  (@p__linq__0 datetime2(7))SELECT 
2     [Extent1].[ID] AS [ID], 
3     [Extent1].[LogErrorsType] AS [LogErrorsType], 
4     [Extent1].[Message] AS [Message], 
5     [Extent1].[MessageDetail] AS [MessageDetail], 
6     [Extent1].[Logged] AS [Logged], 
7     [Extent1].[WebId] AS [WebId]
8     FROM [dbo].[LogErrors] AS [Extent1]
9     WHERE [Extent1].[Logged] < @p__linq__0
  • Item 2

Média de CPU 00:00:00.250 / Tempo decorrido 00:00:00:383

 1  SELECT ShareID FROM dna_ContentDataItems WHERE ShareID in 
 2  ('60fe13b5-12fe-47d7-ace1-03e7d410b30e','b8bd3b95-7a94-4f69-b3b6-0492a91a6188',
 3  '1cf3843a-218e-420d-a496-05498470f3fc','369216b5-24e6-4c0d-9ecb-0c2eea6d9330',
 4  'bb8a1944-a304-4003-9905-176e60c37bd0','bbe3da72-e92b-4ead-910b-22fe049a5287',
 5  '02c21b43-7e98-41ab-a931-234d71312197','cc87d018-39e2-49b7-b2af-23a7a8b56558',
 6  '59fb5ebb-6972-4405-99f7-2498695c9d4c','4dbb1abc-2be2-47dd-a7dd-260a4a97fedc',
 7  '9f5204e7-a93f-488b-8d39-2a0108e62072','cd980489-60c4-42ea-a5e9-395f66f7bc85',
 8  '243d692a-6e24-4b76-8d2f-3bc872fca2d9','b839e845-2153-4b19-80f4-3e5e53bee6de',
 9  '21c4e8b0-efe2-4f5f-a917-43fbbc1ab909','b2a6c7d9-6faa-4d3c-96a6-46e8863f8aea',
10  'c5a82a38-1371-46ab-8164-477a72763a0b','92ff54e6-c647-4ace-98c2-48085afdde2a',
11  'dcb4fd07-aac3-46ec-9137-4a90dfe4fc3b','8f56ae73-ea2b-415d-b772-4bed0d9e505d',
12  '5ff656e2-f14f-465b-8428-5543e936e1f2','e4d2a28c-63a3-472f-97e8-5817fd11e33b',
13  '44327975-0932-482d-aefb-60692e518b0a','91e376bc-8259-4827-943c-62b7221e86f2',
14  '0a983fbe-0ee4-4129-82b0-661ccd1cf7af','394cf071-428e-4af9-8aa4-6b7237fb715d',
15  'b3cef7f1-6bdc-4b1b-960a-71a3f47765ef','736a6761-0f9f-4d7f-9dc8-745431d8d3d7',
16  '97eeb60b-99fe-4149-b16a-81206c16d723','fa61aa3e-c045-4056-870c-81eb8e3535f0',
17  'f72e1512-56c4-4999-9515-95672a0767a4','329d36d0-1a99-436e-b733-9723d0c160f6',
18  '2b71bd0e-8b32-4c50-b7e0-991a28b7bc14','503b2711-bed0-4d6b-be6d-9f6bd4f792cb',
19  '7c973f33-4dca-4a61-a691-a067a0e6ffe0','7e72d5ff-477e-4b54-8fc1-aa9965a47dd3',
20  'ff55997a-361b-4a62-a92e-aecaafa33a6c','4d3099d5-07fd-4553-ab39-af049c7a1ff1',
21  '8485f7d9-66fb-4dbd-ab58-b4df8b79a849','5402d404-23f7-44ed-8221-b89a926d8388',
22  'ce7f8ae8-6bd1-4243-b7df-bc863d4520a4','e0488c72-4b5c-4b0d-8505-bca2852263ff',
23  'b2bbd63a-630b-4033-9621-bf6c26100665','fe709cd6-27e9-43e6-8bdc-c0ff6582cd66',
24  'f930495c-5f92-4639-a1e1-c27057dcade1','76925fc3-c174-4e33-a744-c498234a80fa',
25  '0cdac002-fa37-489a-9082-c50a33905014','44c23d09-6e0f-4c2b-bacd-ca1f00b749e4',
26  'c28afc8c-d00c-46a1-ab04-cb27f3c75230','a99e4394-be19-4245-90e9-cf2ce6d14348',
27  '5a1cf8ee-af83-4927-80a9-d62ba67fc287','19dbde2e-fda9-44bb-84ac-d84d84103e13',
28  'c4591219-9eb8-4888-86c8-e3c83a11ee5f','ff33510d-5df3-4dcc-8477-e431b02f37a4',
29  'cd5f9db9-1d99-47e0-a0a0-e5b456ae42d7','4981ca97-ae60-4e73-929b-eaef96985d72',
30  'e2226a3d-c516-4b89-a648-eb2842fab746','da61a3c7-9908-4ddc-a824-ef237ab95748',
31  '96831f46-0733-4a8b-96db-f39c6ad7cbe2','eab97894-5db2-4600-9a17-f4c823c778c5',
32  '2e58249d-20a7-4168-87c0-f8e58a02eb8b','f1a0d47c-3f31-4615-bc65-fbfb21f0a466',
33  '6bf8b19b-48d7-4688-8a06-fd3fb10e9ae1')
  • Item 3

Média de CPU: 00:00:00.187 / Tempo decorrido: 00:00:00.207

 1  /****** Script for SelectTopNRows command from SSMS  ******/
 2  SELECT TOP 1000 [ID]
 3       ,[LogErrorsType]
 4       ,[Message]
 5       ,[MessageDetail]
 6       ,[Logged]
 7       ,[WebId]
 8   FROM [OnCorretor].[dbo].[LogErrors]
 9 
10   where logged >'2016-11-30 18:20:00'

Resultado dos testes

Nesta seção serão apresentados os resultados obtidos da execução dos testes.

  • Processador e disco
Contador: Porcentagem de tempo ocioso
Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
Limite recomendado: Acima de 75 %.
Análise: Cenário C1/C2: O sistema ficou dentro do limite esperado, acima de 75%. Não houve grande variação. Cenário C2: Apenas o servidor WEB07 ficou abaixo do recomendado em 5%. Não houve grande variação.

2016-12-02 Tempo ocioso OnCorretor 50.png 2016-12-02 Tempo ocioso OnCorretor 100.png 2016-12-02 Tempo ocioso OnCorretor 100 C2.png


Contador: Porcentagem de espaço livre
Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
Limite recomendado: Acima de 25%.
Análise: O sistema ficou dentro do limite esperado, acima de 25%. Não houve grande variação.

2016-12-02 Espaço livre OnCorretor 50.png 2016-12-02 Espaço livre OnCorretor 100.png 2016-12-02 Espaço livre OnCorretor 100 C2.png


Contador: Mudança de contexto
Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.
Limite recomendado: Quanto menor melhor.
Análise: Apresentou maior mudança de contexto nos cenários com cache.

2016-12-02 Mudança contexto OnCorretor 50.png 2016-12-02 Mudança contexto OnCorretor 100.png 2016-12-02 Mudança contexto OnCorretor 100 C2.png


  • Memória
Contador: Páginas/segundo
Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
Análise: Os servidores ARR e SQL ficaram dentro do limite em todos os cenários. Os servidores WEB ficaram muito acima do limite em todos os cenários, tendo uma pequena melhora quando o cache não está sendo utilizado.

2016-12-02 Paginas segundo OnCorretor 50.png 2016-12-02 Paginas segundo OnCorretor 100.png 2016-12-02 Paginas segundo OnCorretor 100 C2.png


Contador: % Memória virtual comprometida
Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
Análise: Os servidores WEB consumiram mais de 90% em todos os cenários. A alta utilização de memória do SQL no cenário C1 com cache pode ser explicada pela limpeza de cache que foi realizada antes do início de cada teste. No cenário C2 (apenas acesso), o SQL teve desempenho satisfatório, não ultrapassando 20% com ou sem o uso do cache.

2016-12-02 Memoria comprometida OnCorretor 50.png 2016-12-02 Memoria comprometida OnCorretor 100.png 2016-12-02 Memoria comprometida OnCorretor 100 C2.png


Contador: Memória disponível em MBytes
Descrição: Indica quantidade de memória disponível para alocação em MBytes.
Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
Análise: Os servidores WEB consumiram mais de 90% em todos os cenários. A alta utilização de memória do SQL no cenário C1 com cache pode ser explicada pela limpeza de cache que foi realizada antes do início de cada teste. No cenário C2 (apenas acesso), o SQL teve desempenho satisfatório, não ultrapassando 20% com ou sem o uso do cache.

2016-12-02 Memoria disponivel OnCorretor 50.png 2016-12-02 Memoria disponivel OnCorretor 100.png 2016-12-02 Memoria disponivel OnCorretor 100 C2.png


  • Network
Contador: Mbytes totais pela interface de rede
Descrição: Indica quantos Mbytes foram enviados e recebidos a cada segundo pela interface de rede.
Limite recomendado: Menor que 5 Mbytes para uma rede de 100Mbps, menor que 50 Mbytes para uma rede de 1000 Mbps. (Quanto menor melhor).
Análise: O sistema ficou dentro do limite recomendado em todo os cenários.

2016-12-02 Interface rede OnCorretor 50.png 2016-12-02 Interface rede OnCorretor 100.png 2016-12-02 Interface rede OnCorretor 100 C2.png


Contador: Falhas de conexão (TCP)
Descrição: Este é o número bruto de conexões TCP que falharam desde que o servidor foi iniciado. Uma falha normalmente indica uma perda de dados em lugar no processo. A perda pode ocorrer em muitos locais. Esta poderia ser uma indicação de um outro dispositivo que está sendo para baixo, ou problemas com a configuração do lado do cliente do software.
Limite recomendado: Quanto menor melhor.
Análise: Houve uma diminuição considerável de falhas no cenário C2, levando a crer que a maior quantidade de falhas TCP ocorre na edição dos sites. No cenário C1, a quantidade de falhas foi maior sem o cache, o que pode ser explicado pelo aumento do acesso ao BD.

2016-12-02 Falhas TCP OnCorretor 50.png 2016-12-02 Falhas TCP OnCorretor 100.png 2016-12-02 Falhas TCP OnCorretor 100 C2.png


  • ARR
Contador: Current application pool uptime
Descrição: Permite que você veja se a aplicação foi reiniciada ou não.
Análise: A aplicação não foi reiniciada durante os testes.


2016-12-02 Pool Uptime OnCorretor 50.png 2016-12-02 Pool Uptime OnCorretor 100.png 2016-12-02 Pool Uptime OnCorretor 100 C2.png


  • SQL
Contador: Expectativa de vida da página
Descrição: Indica o número em segundos que uma página vai ficar na área de buffers, sem referências.
Limite recomendado: Quanto menor melhor.
Análise:

2016-12-02 SQL Expectativa OnCorretor 50.png 2016-12-02 SQL Expectativa OnCorretor 100.png 2016-12-02 SQL Expectativa OnCorretor 100 C2.png


Contador: Fila de disco SQL
Descrição: Este contador fornece o tamanho médio da fila de disco no servidor SQL.
Limite recomendado: Máximo de 2
Análise: A fila ultrapassou o limite no cenário C1, chegando a 10 sem o cache. Como o cenário C2 não apresentou o mesmo problema, podemos constatar que a edição de páginas do cenário C1 é a responsável pelo aumento da fila do disco no servidor SQL.

2016-12-02 Fila disco SQL OnCorretor.png


  • ASP.NET
Contador: Request por segundo
Descrição: Indica o número de requests por segundo.
Limite recomendado: Quanto maior melhor. Em caso de utilização de mais de um servidor web deve-se estar próximo a quantidade de requests.
Análise: Os valores estão satisfatórios. No cenário C2 não houve requisições.

2016-12-02 Requests Sec OnCorretor 50.png 2016-12-02 Requests Sec OnCorretor 100.png 2016-12-02 Requests Sec OnCorretor 100 C2.png


  • Aplicação
Dado: Sampler
Descrição: Informa a quantidade threads.
Análise: O número de samplers sem a utilização de cache.

2016-12-02 Jmeter Sampler OnCorretor 50.png 2016-12-02 Jmeter Sampler OnCorretor 100.png 2016-12-02 Jmeter Sampler OnCorretor 100 C2.png


Dado: Tempo médio de resposta
Descrição: Informa o tempo médio de resposta.
Limite recomendado: Quanto menor melhor.
Análise: a ação "Acessar a tela de login" foi a que apresentou pior tempo de resposta em todos os cenários.

2016-12-02 Jmeter Responde time OnCorretor 50.png 2016-12-02 Jmeter Responde time OnCorretor 100.png 2016-12-02 Jmeter Responde time OnCorretor 100 C2.png


Dado: Vazão
Descrição: Informa a quantidade de dados transferidos.

2016-12-02 Jmeter Vazao OnCorretor 50.png 2016-12-02 Jmeter Vazao OnCorretor 100.png 2016-12-02 Jmeter Vazao OnCorretor 100 C2.png