Fujiy

Blog sobre .NET, C#, ASP.NET entre outras tecnologias de desenvolvimento de software

Organizando planos de execução gigantes

25/07/2011 09:16:00 Por Fujiy

Neste post quero mostrar uma forma de organizar um plano de execução gigante.

Muitas vezes quando trabalhamos com bancos de dados antigos e complexos, acabamos lidando com problemas de performance e o plano de execução da algumas dicas por onde começar o trabalho de otimização.

O problema é quando o próprio plano de execução é grande e complexo, dificultando a leitura e tornando o simples trabalho de achar os pontos críticos em uma tarefa entediante.

O primeiro passo pra isso é salvar o plano de execução em XML. No Sql Management Studio, basta clicar com o botão direito sobre o Plano de Execução e selecionar "Save Execution Plan As". Após isso é necessário abrir o plano de execução no bloco de notas e re-salvar em Unicode, pois o XML está marcado como Unicode, mas o Management Studio salva em condificação ANSI, o que gera um problema no próximo passo.

Assim que temos o arquivo XML preparado, basta fazer alguns SELECT´s no arquivo XML, onde podemos ordenar por tempo estimado de CPU, IO ou a diferença entre o número de linhas esperados e o número atual:

Leia mais...

ReSharper Tips and Tricks Video from NDC

23/06/2011 17:02:00 Por Fujiy

No NDC deste ano o Hadi Hariri, ASP.NET MVP e Technical Evangelist da Jetbrains, fez uma apresentação sobre Resharper, apresentando algumas das últimas novidades da versão 5 e 6.

Pra quem ainda não usa esta ferramenta essencial pra qualquer desenvolvedor C#, deve assistir o vídeo completo ou a seleção com alguns pontos mais interessantes:

Sessão completa: http://tv.jetbrains.net/videocontent/resharper-tips-and-tricks-live-session-at-ndc-2011

Entity Framework Power Tools CTP1

18/05/2011 20:56:00 Por Fujiy

O time do Entity Framework/ADO.NET acabou de lançar uma ferramenta sensional, o Entity Framework Power Tools CTP1.

Quem usa Code First sempre tem que ter um trabalhão pra mapear um banco de dados já existente, principalmente se for muito grande e com falhas de modelagem. Com essa nova ferramenta, quando você clica com o botão direito em um projeto C#, tem uma nova opção: "Entity Framework -> Reverse Engineer Code First"

Leia mais...

Qual a sua opinião sobre programação mais controversa?

11/05/2011 09:04:00 Por Fujiy

Uma pergunta feito pelo Jon Skeet, no Stack Overflow, "What's your most controversial programming opinion?".

Há algumas bem interessantes, da até pra fazer uma lista "TODO" para ser um programador melhor.

A mais votada acho que é a mais importante, e tem por consequência a maior parte das outras: "Programmers who don't code in their spare time for fun will never become as good as those that do." Se você programar apenas pra se sustentar vai estar sempre limitado ao que te mandam fazer e dificilmente vai evoluir como quem realmente gosta do que faz, isso vale em qualquer profissão. Se você gosta do que faz, inclusive o faz em seu tempo livre, vai se manter sempre atualizado e aprendendo.

Leia mais...

Dicas para melhorar a performance no ASP.NET MVC 3

05/03/2011 02:32:00 Por Fujiy

Vi o sessão sobre Performance no ASP.NET MVC 3 do mvcConf. Tem algumas dicas para melhorar a performance da aplicação sem grandes alterações:

-Nas View fortemente tipadas sempre passar uma instância do objeto em vez de null. É muito comum na Action Add passar null pra View: "return View();. O problema acontece quando se usa os HtmlHelpers que aceitam Expression Tree, Html.TextBoxFor(x=> x.Name), ele vai disparar uma exception que é automáticamente capturada, mas que impacta na performance.

-Remover View Engines não utilizadas, assim evita que o ASP.NET MVC 3 procure por Views que não existes no disco.

-Usar OutputCache onde possível

-Desisintalar UrlRewriter do IIS caso não esteja usando no servidor