Jump to content


Photo

Sobre Buffer


  • Faça o login para participar
5 replies to this topic

#1 lazerediversao

lazerediversao

    Lazer e Diversão - O seu portal de entretenimento é aqui.

  • Usuários
  • 256 posts
  • Sexo:Masculino
  • Localidade:Guarulhos / São Paulo

Posted 20/07/2005, 05:42

Olá pessoal da comunidade, bem venho hj através deste tirar algumas dúvidas, é sobre BUFFER e encontrei este artigo publicado no IMASTERS

Um buffer é uma armazenagem que mantém dados durante um certo período antes de liberá-lo. A vantagem é que seu comportamento pode ser controlado de modo a armazenar dados até um determinado evento, que faz com que o buffer libere os dados ou os descarte.

Exemplo:

<%
Option Explicit
Response.Buffer = TRUE
Response.Expires = 60
%>
<html>
<body>
Este texto não irá aparecer!!
<%
Response.Clear
Response.Expires = 0
%>
<html>
<body>
Agora sim!!
<%
Response.Flush
%>
</body>
</html>
<%
Response.End
%>

Agora vamos analisar o que foi feito neste exemplo:

Response.Buffer = TRUE: esta instrução deve ser colocada antes de qualquer tag HTML.
Quando ativamos o buffer, significa que o servidor armazenará a saída da página e não envia uma resposta ao browser até que todo o programa tenha sido processado ou até que o método Flush ou End tenha sido chamado.

Response.Expires = 60: Aqui, o valor 60 representa em minutos, ou seja, a página expirará em 1 hora. Útil para sites que mudam seu conteúdo de hora em hora.

Response.Clear: Quando o navegador chega lê essa linha, ocorre a limpeza do buffer, ou
seja, toda a página html que estava armazenada no buffer antes do comando, é limpo (apagado), por isso nunca será exibida aquela mensagem anterior. E por isso também, que é necessário escrever um novo documento HTML. Observe que após o Response.Clear foi setado um novo prazo de expiração da página (0) e um novo código HTML foi inserido.

Response.Flush: Esta instrução força o servidor a enviar imediatamente ao cliente qualquer saída armazenada em buffer. Nesse caso, há apenas o novo html criado após a “limpeza”.

Response.End: Esta instrução faz com que o servidor pare de processar o script e retorne
o resultado atual. Isto significa que se houver mais códigos após o Response.End, ele não será mais processado e enviado ao browser.


Ai me veio a idéia de usá-lo em um sistema de bate-papo no lugar do tão temido Refresh.

Um pouco antes de eu postar esse tópico eu encontrei esse tópico que aborda esse assunto e até deu um exemplo:

<%
response.buffer = true

sub sleep(segundos)
hrInicial = second(time) + (minute(time) * 60) + (hour(time) * 60 * 60) + 10 : hrAtual = second(time) + (minute(time) * 60) + (hour(time) * 60 * 60) + 10
while((hrAtual - hrInicial) < segundos) : hrAtual = second(time) + (minute(time) * 60) + (hour(time) * 60 * 60) + 10 : wend
end sub

function timePT(hora)
n_hora = hour(hora) : n_min = minute(hora) : n_seg = second(hora)
if len(n_hora) = 1 then : n_hora = "0" & n_hora : end if
if len(n_min) = 1 then : n_min = "0" & n_min : end if
if len(n_seg) = 1 then : n_seg = "0" & n_seg : end if
timePT = n_hora & ":" & n_min & ":" & n_seg
end function

for i=1 to 20 :response.write "<!-- Sending buffer content...(" & i & ") -->" & vbcrlf : next

while NOT var_inexistente
response.write timePT(time) & " - bla<br>"& vbcrlf
response.flush()
sleep(5)
wend
%>

O tópico completo é este postado pelo TARKAN e o mesmo no tópico disse que esse método funciona mas sobrecarrega o servidor.

Então acho que o caminho é esse e eu gostaria da ajuda de vcs para tentarmos utilizar esse método mesmo sabendo que será difícil de se conseguir mas não custa tentar né !

Conto com a colaboração de todos t+ !
################# DADOS #################
# NOME: Rafael T. Coelho
# SITE: Lazer e Diversão
# CONHECIMENTOS: HTML, Java Script, CSS e ASP
#######################################

#2 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 20/07/2005, 10:47

Buffer pra substituir o Refresh em Bate-Papo? Esqueça.
Eduardo Batista

#3 lazerediversao

lazerediversao

    Lazer e Diversão - O seu portal de entretenimento é aqui.

  • Usuários
  • 256 posts
  • Sexo:Masculino
  • Localidade:Guarulhos / São Paulo

Posted 21/07/2005, 00:07

Buffer pra substituir o Refresh em Bate-Papo? Esqueça.

Bem então o que eles usam nesses bate papos conhecidos ???

Cara esse foi a forma mais parecida que encontrei !!!

Tem que haver uma forma de se fazer !
################# DADOS #################
# NOME: Rafael T. Coelho
# SITE: Lazer e Diversão
# CONHECIMENTOS: HTML, Java Script, CSS e ASP
#######################################

#4 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 21/07/2005, 00:53

procura por "refresh no servidor" no site do aspfordevelopers.com.br tem um exemplo de como é feito...

;) (y)
* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto

#5 lazerediversao

lazerediversao

    Lazer e Diversão - O seu portal de entretenimento é aqui.

  • Usuários
  • 256 posts
  • Sexo:Masculino
  • Localidade:Guarulhos / São Paulo

Posted 27/02/2006, 13:30

Ressuscitando o tópico hehe...
Bem andei um pouco afastado e não tive como correr atrás disso...

Pois bem Luis Otávio, eu andei procurando e não encontrei nada que pudesse me dar uma luz...

Eu já procurei sistemas de Bate Papos descentes em ASP, mas o melhorzinho que achei usa FLASH e eu ñ manjo nada hehe...

Eu estava querendo montar um, mas o problema é justamente esse...

Será que mais alguém teria alguma idéia de como fazer ???

Valeu t+ pessoal ;)

################# DADOS #################
# NOME: Rafael T. Coelho
# SITE: Lazer e Diversão
# CONHECIMENTOS: HTML, Java Script, CSS e ASP
#######################################

#6 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 27/02/2006, 13:34

quase um ano depois.. muita coisa surgiu.. heheheheh
agora vc naum precisa procurar mais por "refresh no servidor" agora vc procura por "ajax" muito mais facil, e vai ficar perfeito...

PS: ajax é javascript...
q vc vai unir com o asp..
* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq