Recomendado: o código para o site do filme Max para gerar feed RSS Há algum tempo, para adicionar a função de assinatura RSS ao meu site de filmes, escrevi um código ASP que gera dinamicamente o feed RSS. Não posso fazer upload de anexos, então acabei de colar o código. Não é muito tempo de qualquer maneira. Amigos que usam Max como site de filmes podem usá -lo diretamente. Altere outros tipos de sites.
Os desenvolvedores da ASP estão constantemente trabalhando para obter melhor desempenho e escalabilidade em seus projetos de design. Felizmente, existem muitos livros e sites que fornecem ótimos conselhos sobre isso. No entanto, a base dessas sugestões é a conclusão tirada da estrutura do trabalho da plataforma ASP e não há medição da melhoria real no desempenho. Como essas sugestões requerem processos de codificação mais complexos e reduzem a legibilidade da codificação, os desenvolvedores só podem medir a si mesmos se vale a pena pagar para melhorar o desempenho de seus aplicativos ASP sem ver o efeito operacional real.
Este artigo é dividido em duas partes, e apresentarei alguns resultados dos testes de desempenho para ajudar os desenvolvedores a determinar se uma iniciativa específica não vale apenas a pena para projetos futuros, mas também capaz de atualizar o projeto original. Na primeira parte, revisarei algumas questões básicas no desenvolvimento do ASP. Na segunda parte, alguma otimização das funções ADO estará envolvida e seus resultados serão comparados com a página ASP que chama o objeto VB COM para executar a mesma função ADO. Esses resultados são reveladores e às vezes surpreendentes.
Neste artigo, responderemos às seguintes perguntas:
* Qual é a maneira mais eficiente de escrever conteúdo gerado pelo ASP no fluxo de resposta?
* O buffer deve ser ativado?
* Devo considerar adicionar comentários ao código ASP?
* O idioma padrão deve ser explicitamente definido para a página?
* O estado da sessão deve ser desligado, se não for necessário?
* O script deve ser colocado em sub -rotinas e áreas de função?
* Quais são os efeitos do uso incluem arquivos?
* Que tipo de carga será aplicada ao executar o processamento de erros?
* Definir um processamento de contexto tem algum impacto no desempenho?
Todos os testes foram realizados usando o Web Applications Focus Tool (WAST) da Microsoft, uma ferramenta gratuita que pode ser encontrada aqui. Criei um script de teste simples com Wast, chamando repetidamente o teste da página ASP descrito abaixo (mais de 70.000 vezes cada). O tempo da reação é baseado no tempo total médio do último byte (TTLB), ou seja, a partir do momento em que o tempo inicial solicitado até o momento em que a ferramenta recebe o último bit de dados do servidor. Nosso servidor de teste é um Pentium 166 com 196 MB de memória e Pentium 450 com 256 MB de memória. Você pode pensar que o desempenho dessas máquinas não é muito avançado, mas não se esqueça de que não estamos testando a capacidade do servidor, estamos apenas testando o tempo necessário para o servidor processar uma página por vez. Essas máquinas não fazem outro trabalho durante o teste. Scripts de teste de Wast, relatórios de teste e todas as páginas de teste ASP estão incluídas no arquivo ZIP e você pode revisar e testá -lo sozinho.
Qual é a maneira mais eficiente de escrever conteúdo gerado pelo ASP no fluxo de resposta?
Uma das principais razões para o uso do ASP é gerar conteúdo dinâmico no servidor. Portanto, é óbvio que o ponto de partida do nosso teste é determinar a maneira mais adequada de enviar conteúdo dinâmico para o fluxo de resposta. Entre as muitas opções, duas são as mais básicas: uma é usar tags ASP embutidas, e a outra é usar a declaração de resposta.Write.
Para testar essas opções, criamos uma página ASP simples, onde algumas variáveis são definidas e seus valores são inseridos na tabela. Embora esta página seja simples e não muito prática, ela nos permite separar e testar algumas perguntas separadas.
Usando tags embutidas ASP
O primeiro teste envolve o uso de uma tag asp embutida < %= x %>, onde x é uma variável atribuída. Esse método é de longe o mais fácil de executar e mantém a parte HTML da página em um formato fácil de ler e manter.
| <% Opção explícita Dim FirstName Dim LastName Dim MiddleInitial Endereço escuro Dim City Estado escuro PhoneNumber fraco Dim FaxNumber Dim email Data de nascimento fraca Primeiro nome = John MiddleInitial = q LastName = público Endereço = 100 Main Street Cidade = Nova York Estado = NY PhoneNumber = 1-212-555-1234 FaxNumber = 1-212-555-1234 E -mail = [email protected] Data de nascimento = 1/1/1950 %> <html> <head> <title> Teste de resposta </title> </head> <Body> <h1> Teste de resposta </h1> <Tabela> <tr> <td> <b> primeiro nome: </b> </td> <td> < %= primeiro nome %> </td> </tr> <tr> <td> <b> Inicial do meio: </b> </td> <td> < %= Middleinitial %> </td> </tr> <tr> <td> <b> Sobrenome: </b> </td> <td> < %= lastName %> </td> </tr> <tr> <td> <b> Endereço: </b> </td> <td> < %= endereço %> </td> </tr> <tr> <td> <b> cidade: </b> </td> <td> < %= city %> </td> </tr> <tr> <td> <b> estado: </b> </td> <td> < %= state %> </td> </tr> <tr> <td> <b> Número de telefone: </b> </td> <td> < %= PhoneNumber %> </td> </tr> <tr> <td> <b> Número de fax: </b> </td> <td> < %= faxNumber %> </td> </tr> <tr> <td> <b> email: </b> </td> <td> < %= email %> </td> </tr> <tr> <td> <b> Data de nascimento: </b> </td> <td> < %= birthdate %> </td> </tr> </Tabela> </Body> </html> |
Código completo para /pp1/response1.asp
Melhor anterior (taxa de resposta) = 8,28 ms/página
Use a declaração Response.Write em cada linha de HTML
Muitos documentos de aprendizado melhores recomendam evitar o método anterior. O principal motivo é que, durante a página de saída e a página de processamento, aplicando o tempo de reação, se o servidor da Web precisar converter entre enviar HTML puro e scripts de processamento, ocorre um problema chamado conversão de contexto. Quando a maioria dos programadores ouve isso, sua primeira reação é envolver todas as linhas do HTML original na função de resposta.
| ... Response.Write (<Html>) Response.write (<head>) Response.write (<title> Teste de resposta </title>) Response.Write (</ad Head>) Response.Write (<Body>) Response.Write (<H1> Teste de resposta </h1>) Response.Write (<table>) Response.write (<tr> <td> <b> primeiro nome: </b> </td> <td> & primeiro nome & </td> </tr>) Response.Write (<tr> <td> <b> Inicial do meio: </b> </td> <td> & Middleinitial & </td> </tr>) ... < |
/pp1/Response2.asp Fragment
Melhor anterior (taxa de resposta) = 8,28 ms/página
Tempo de reação = 8,08 ms/página
Diferença = -0,20 ms (redução de 2,4%)
Podemos ver que o uso dessa abordagem é muito pequeno em desempenho em comparação com o uso de marcação embutida, talvez porque a página carregue o servidor com várias chamadas de pequenas funções. A maior desvantagem dessa abordagem é que, como o HTML agora está incorporado aos scripts, o código do script se torna mais detalhado e mais difícil de ler e manter.
Compartilhar: 20 exemplos muito úteis na programação ASP (i) 1. Como usar o ASP para determinar o caminho físico virtual do seu site Resposta: Use o método Mappath: < % = server.mappath () %> 2. Como sei que o navegador usado pelo usuário? Resposta: Use o método do objeto de solicitação:
5 páginas no total Página anterior Página 12345Next