<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content=text/html;charset=ISO-8859-1>
<META content="MSHTML 6.00.2900.2995" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>O tempo I/O mataria&nbsp;a aplicação.</FONT></DIV>
<DIV><FONT face=Arial size=2>O script Perl é um CGI que eu uso para repassar 
dados para outro aplicativo.</FONT></DIV>
<DIV><FONT face=Arial size=2>Esse OUTRO, sim, é a aplicação em uso, que possui 
todas as funcionalidades de transacionar com a base dados.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>A única funcão, e não&nbsp;passar disso, do script 
Perl, é repassar os dados para a outra aplicação.</FONT></DIV>
<DIV><FONT face=Arial size=2>Ou seja, o script Perl é como um shell sobre o qual 
a outra aplicação é carregada.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Se eu trocar o script, por outro em PHP, será que 
ainda terei essa limitação?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=ricardoportilho@terra.com.br 
  href="mailto:ricardoportilho@terra.com.br">Ricardo Portilho Proni</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=cascavel-pm@pm.org 
  href="mailto:cascavel-pm@pm.org">Cascavel Perl Mongers</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Tuesday, November 28, 2006 2:39 
  PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [Cascavel-pm] Limite de 
  variavies de ambiente e system</DIV>
  <DIV><BR></DIV>Vc pode resolver este problema, mas está utilizando variáveis 
  de ambiente para fazer algo que elas não foram feitas para fazer.<BR>Se 
  revolver esse, é possível que encontre outra barreira, ainda mais se quiser 
  fazer de forma portável.<BR><BR>Coloque as informações que precisa em uma 
  tabelas simples, em um banco simples. A primeira aplicação alimenta a tabela, 
  a segunda pega. Tudo ficará bem...<BR><PRE class=moz-signature cols="72">Ricardo Portilho Proni
Oracle Database 10g Administrator Certified Associate
Microsoft Certified Professional
Nerv Informática Ltda.</PRE><BR><BR>Alceu R. de Freitas Jr. escreveu: 
  <BLOCKQUOTE cite=mid304339.15075.qm@web30804.mail.mud.yahoo.com type="cite"><PRE wrap="">--- Agnaldo Macedo <A class=moz-txt-link-rfc2396E href="mailto:agnaldo@starweb-software.com.br">&lt;agnaldo@starweb-software.com.br&gt;</A>
escreveu:

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Sobre o que a aplicação:
Eu uso o Perl/CGI para capturar as informações
vindas do WebServer e 
repassar para outra aplicação.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Que tal webservices? Você poderia implementar isso até
usando LWP para criar uma requisição para o servidor
web e fazer processar a resposta.

Se esse tipo de informação não mudar com muita
freqüência, você poderia até implementar um cache.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Não, eu não posso me livrar da outra aplicação
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Você não pode trazê-la para o mesmo servidor então?
Você poderia utilizar memória compartilhada ou sockets
(Winsockets, Unix sockets)... claro, estou só
especulando.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Estou usando as variabeis de ambiente porque são
mais rapidas do que usar 
arquivo em disco.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Você lê as informações do outro servidor, configura
variáveis de ambiente e depois passa para seu
programa?

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Se eu for usar arquivo em disco para intercambiar os
dados a aplicação se 
torna definitivamente inviável.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Eu não sei que programa você está usando, mas minha
sugestão seria essa:

1 - tentar eliminar o uso desse programa utilizando um
programa feito em Perl que pudesse ser executado sem o
uso de system ou exec.
2 - Usar um named pipe para passar as informações para
seu programa.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Sobre sistema:
Eu preciso da apliucação rodando sobre
windows/linux/unix, então, não posso 
fugir do windows.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Mais um motivo para você substituir o programa em
questão por código Perl. Talvez se você puder contar
qual é esse programa em questão, o pessoal possa dar
mais sugestões.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">O que ficou estranho é o funcionamento do system, em
não conseguir chamar a 
outra aplicação quando as variaveis chegaram a 32k.
Uma vez que o system faz uma chamada ao shell, no
caso, o cmd.exe, ele não 
esta conseguindo essa parte.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Eu nunca passei por essa situação, realmente não sei
como lhe ajudar. Veja se o Windows Power Shell não
pode lhe ajudar nesse caso.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">A outra coisa sinistra foi quando usando exec, é o
mesmo não conseguir mais 
repassar as variaveis comuns do ambiente CGI mas
conseguir repassar as 
outras que que gerava na mão, embora, dentro do
scrip Perl elas ainda 
existirem.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Se não estou enganado, o exec não use o shell. Talvez
você queira tentar o módulo Win32::Process

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Ainda não fiz o teste sobre Linux/Unix, talves neles
os erros não ocorram.
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Só tentando. Mas eu receio que você não terá esses
problemas, a expectativa é que os shells desses
sistemas operacionais deixem o cmd do Windows no
chinelo.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Infelizmente, eu tenho a necessidade de que
funcione, também, sobre Windows.
O material da ActiveState é bem recomendado. Será
que devo testar com outra 
distribuição?
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Eu ficaria com o ActiveState.

  </PRE>
    <BLOCKQUOTE type="cite"><PRE wrap="">Teria como indicar ao suystem/exec para que eles
façam chamada a outro 
shell?
    </PRE></BLOCKQUOTE><PRE wrap=""><!---->
Talvez se você configurar outro shell para ser
utilizado. Mas nem sei se isso é possível no Windows.

[]'s


Alceu Rodrigues de Freitas Junior
--------------------------------------
<A class=moz-txt-link-abbreviated href="mailto:glasswalk3r@yahoo.com.br">glasswalk3r@yahoo.com.br</A>
<A class=moz-txt-link-freetext href="http://www.imortais.cjb.net">http://www.imortais.cjb.net</A>
-----------------------------------------------------------------------
A well-used door needs no oil on its hinges.
A swift-flowing stream does not grow stagnant.
Neither sound nor thoughts can travel through a vacuum.
Software rots if not used.
These are great mysteries -- The Tao Of Programming, 5.1


                
_______________________________________________________ 
O Yahoo! está de cara nova. Venha conferir! 
<A class=moz-txt-link-freetext href="http://br.yahoo.com">http://br.yahoo.com</A>
_______________________________________________
Cascavel-pm mailing list
<A class=moz-txt-link-abbreviated href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</A>
<A class=moz-txt-link-freetext href="http://mail.pm.org/mailman/listinfo/cascavel-pm">http://mail.pm.org/mailman/listinfo/cascavel-pm</A>



  </PRE></BLOCKQUOTE>
  <P>
  <HR>

  <P></P>_______________________________________________<BR>Cascavel-pm mailing 
  list<BR>Cascavel-pm@pm.org<BR>http://mail.pm.org/mailman/listinfo/cascavel-pm</BLOCKQUOTE></BODY></HTML>