Não teria como fazer isso do lado do back-end não? Meio retórica, mas vale a
tentativa...

2009/12/17 Erko Bridee de Almeida Cabrera <[email protected]>

> O problema que o ActionScript 3 não tenho muitas coisas
> q eu faria brincando manipulação de bytes como no java :P
>
> descobri que vou ter que de algum jeito ler em blocos os bytes...
> que é oq estou tentando fazer nessa tarde, mas por enquanto
> sem sucesso :P
>
>
>
> 2009/12/17 Edgard Davidson <[email protected]>
>
> Olá Ekro.
>> O projeto que citei foi implementado todo em delphi.
>> Eu usei uma técnica de leitura de arquivo chamada "Mapped File", mas essa
>> técnica é muito baixo nível. Usava chamadas privilegiadas da API do Windows.
>> Eu não tenho link, eu tirei o parte do fonte de um livro de Delphi 2
>> Advanced.
>> Mas acredito que se fizer a paginação do arquivo texto você conseguirá.
>> O problema que vejo é que se seu arquivo não for padronizado, ou seja,
>> como é um arquivo texto provavelmente cada linha deve ter uma quantidade
>> diferentes de caracteres, se isso é verdade, irá dificultar o calculo na
>> paginação. No meu projeto eu tinha esse problema, então a solução foi
>> adicionar espaços em branco no final de cada linha. Dessa forma todas as
>> linhas do meu relatório tinham 132 colunas (ou caracteres). Desse jeito para
>> calcular a paginação era mole.
>> Em cada paginação eu trazia 66 linhas, cada uma contendo 132 caracteres.
>> Agora para paginar é só manipulação de arquivo ((132 * 66) * Deslocamento),
>> onde Deslocamento era a posição do scroll que o usuário rolava. Fazia um
>> seek no arquivo e boa!!!
>>
>>
>> 2009/12/16 Erko Bridee de Almeida Cabrera <[email protected]>
>>
>>> Cara muito legal essa tua ideia,
>>>
>>> hj nas minhas leituras e pesquisas estou indo +- para essa linha
>>>
>>> por acaso tu tem links do assunto ae?
>>>
>>> ps.: achei pouco material sobre ^^
>>>
>>> muito obrigado pela ajuda o/
>>>
>>> 2009/12/16 Edgard Davidson <[email protected]>
>>>
>>> Olá Erko
>>>> Uma vez desenvolvi um projeto que tinha o mesmo problema. Naquela
>>>> ocasião eu tinha que ler um arquivo texto contábil com mais de 4 milhões de
>>>> linhas, o que dava mais ou menos uns 5GB.
>>>> Então, usei como analogia aos players de vídeos. Imagine, um vídeo de
>>>> 1GB como o pc rada? Bom o vilme tem 1GB e uma hora e meia, só que você irá
>>>> ver segundo por segundo, e cada segundo são 30 frames. Nesse caso, pq então
>>>> colocar todo o vídeo em memória.
>>>> Com essa analogia desenvolvi o projeto, onde eu linha blocos do arquivo
>>>> texto e mandava para a interface, como o usuário só é capaz de ler uma
>>>> página por vez, então quando ele paginava, eu voltava ao arquivo original,
>>>> recalculava o deslocamento que ele fez com base no movimento do scoll e
>>>> trazia novamente mais um pedaço do arquivo. Nessa brincadeira, das milhares
>>>> de páginas que meu arquivo texto tinha, eu só retornava 64 linhas por vez, 
>>>> o
>>>> que dava mais ou menos uns 50 kb.
>>>> Dessa forma consegui resolver o problema e a aplicação ficou um
>>>> foguete!!!
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 2009/12/16 Erko Bridee de Almeida Cabrera <[email protected]>
>>>>
>>>> Então o drama é o seguinte
>>>>>
>>>>> o cliente já fez o download do arquivo com as informações
>>>>> que varia de 20 a 250+ MB para os clientes corporativos
>>>>>
>>>>> agora se eu tiver q mandar isso via internet para o servidor
>>>>> para depois voltar
>>>>>
>>>>> 250 MB download
>>>>> 250 MB upload
>>>>> -250 MB download (creio eu que menos dq o valor inicial em objetos)
>>>>>
>>>>> arredondando essa brincadeira: 750 MB de tráfego na internet...
>>>>>
>>>>> isso para ver um arquivo é insano ^^
>>>>>
>>>>> se bem q eu já apresentei esse cenário na reunião q teve hj o pessoal
>>>>> meio que aceitou o absurdo e a principio vamos limitar em 100 MB que a
>>>>> app
>>>>> o Adobe Flash Player Runtime aguentou ler ^^
>>>>>
>>>>> mas continuo a leitura sobre manipulação de arquivos no Adobe Flash
>>>>> Player 10+
>>>>>
>>>>> o/
>>>>>
>>>>>
>>>>> 2009/12/15 J.C.Ködel <[email protected]>
>>>>>
>>>>>>  OPs. Esqueci do resto: não, não fiz jogos em Flex (ainda). Pura
>>>>>> falta de tempo.
>>>>>>
>>>>>> O jogo em questão era o bom e velho Ultima Online (www.uo.com) com um
>>>>>> servidor customizado feito em C# (www.runuo.com)
>>>>>>
>>>>>>
>>>>>>  *From:* Erko Bridee de Almeida Cabrera <[email protected]>
>>>>>> *Sent:* Tuesday, December 15, 2009 2:47 PM
>>>>>> *To:* [email protected]
>>>>>> *Subject:* Re: [flexdev] Leitura de arquivo > 250 MB
>>>>>>
>>>>>> Tenho um projeto aki
>>>>>>
>>>>>> Adobe Flex  (interface)
>>>>>> BlazeDS (Java - Server)
>>>>>>
>>>>>> de Telecom, onde os clientes corporativos
>>>>>> irão ter uma aplicação em Flex para ler/carregar e
>>>>>> visualizar as informações detalhadas de suas contas
>>>>>> telefonicas
>>>>>>
>>>>>> o problema q os clientes corporativos pode ter casos
>>>>>> de um arquivo com mais de 200 MB
>>>>>>
>>>>>> para arquivos de até 50 MB a aplicação
>>>>>> está lidando tranquilamente, a leitura do arquivo,
>>>>>> isto a parte em Adobe Flex =]
>>>>>>
>>>>>> o arquivo está na máquina do cliente
>>>>>>
>>>>>> no geral a aplicação consiste em geral em um visualizador
>>>>>> gráfico desse arquivo, que vai apresentar gráficos
>>>>>> e opções de calculos e filtros ^^
>>>>>>
>>>>>> bom se tu souber algo relacionado a leitura de arquivos grandes
>>>>>> textuais no Adobe Flex e/ou AIR
>>>>>>
>>>>>> qq link, referencia já é uma luz ^^
>>>>>>
>>>>>> muito obrigado o/
>>>>>>
>>>>>> ----
>>>>>>
>>>>>> ps.: tu desenvolve games com Adobe Flex é? tem algo publicado, mesmo
>>>>>> post
>>>>>> sobre o assunto?
>>>>>>
>>>>>> eu curto games ^^
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2009/12/15 J.C.Ködel <[email protected]>
>>>>>>
>>>>>>>  Já fiz projetos que tinham que ler mais do que 2 Gb para a memória
>>>>>>> (um servidor de jogos online). Imagine um jogo online com milhões de 
>>>>>>> itens
>>>>>>> distribuídos em 7 mapas gigantescos com milhares de jogadores online, 
>>>>>>> tudo
>>>>>>> em memória e sendo persistido pra disco de tempos em tempos.
>>>>>>>
>>>>>>> Por motivos de performance, foi feito via PInvoke.
>>>>>>>
>>>>>>> Qual plataforma e linguagem pretende utilizar?
>>>>>>>
>>>>>>>  *From:* Erko Bridee de Almeida Cabrera <[email protected]>
>>>>>>> *Sent:* Tuesday, December 15, 2009 11:20 AM
>>>>>>> *To:* [email protected]
>>>>>>> *Subject:* [flexdev] Leitura de arquivo > 250 MB
>>>>>>>
>>>>>>> Olá pessoal blz?
>>>>>>>
>>>>>>> sei que isso é insano, mas tenho um caso aqui
>>>>>>> que preciso ler um arquivo de 250+ MB e joga-lo para memória
>>>>>>>
>>>>>>> que representam uma coleção de objetos
>>>>>>>
>>>>>>> alguem aqui já teve a necessidade de ler um arquivo tão grande assim?
>>>>>>>
>>>>>>> conhece alguma referencia/link sobre o assunto?
>>>>>>>
>>>>>>> grato pela ajuda ^^
>>>>>>>
>>>>>>> --
>>>>>>> Att,
>>>>>>> Erko Bridee de Almeida Cabrera
>>>>>>> http://erkobridee.com/
>>>>>>> http://gospel.erkobridee.com/
>>>>>>> http://www.cwbfx.com/
>>>>>>> http://twitter.com/ErkoBridee
>>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>>
>>>>>>> --
>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>> [email protected]
>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>> [email protected]
>>>>>>> Mais opções estão disponíveis em
>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Att,
>>>>>> Erko Bridee de Almeida Cabrera
>>>>>> http://erkobridee.com/
>>>>>> http://gospel.erkobridee.com/
>>>>>> http://www.cwbfx.com/
>>>>>> http://twitter.com/ErkoBridee
>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>
>>>>>> --
>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>> [email protected]
>>>>>> Para sair da lista, envie um email em branco para
>>>>>> [email protected]
>>>>>> Mais opções estão disponíveis em
>>>>>> http://groups.google.com/group/flexdev
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Att,
>>>>> Erko Bridee de Almeida Cabrera
>>>>> http://erkobridee.com/
>>>>> http://gospel.erkobridee.com/
>>>>> http://www.cwbfx.com/
>>>>> http://twitter.com/ErkoBridee
>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>
>>>>> --
>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>> [email protected]
>>>>> Para sair da lista, envie um email em branco para
>>>>> [email protected]
>>>>> Mais opções estão disponíveis em
>>>>> http://groups.google.com/group/flexdev
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Edgard Davidson.
>>>> blog:edgarddavidson.com
>>>> skype:edgarddavidson
>>>> twitter:http://twitter.com/edgarddavidson
>>>> LindedIn:http://br.linkedin.com/in/edgarddavidson
>>>> FaceBook:
>>>> http://pt-br.facebook.com/people/Edgard-Davidson/100000408023347
>>>>
>>>>  --
>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>>> Para sair da lista, envie um email em branco para
>>>> [email protected]
>>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>>
>>>
>>>
>>>
>>> --
>>> Att,
>>> Erko Bridee de Almeida Cabrera
>>> http://erkobridee.com/
>>> http://gospel.erkobridee.com/
>>> http://www.cwbfx.com/
>>> http://twitter.com/ErkoBridee
>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>
>>> --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>> Para sair da lista, envie um email em branco para
>>> [email protected]
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>
>>
>> --
>> Edgard Davidson.
>> blog:edgarddavidson.com
>> skype:edgarddavidson
>> twitter:http://twitter.com/edgarddavidson
>> LindedIn:http://br.linkedin.com/in/edgarddavidson
>> FaceBook:http://pt-br.facebook.com/people/Edgard-Davidson/100000408023347
>>
>> --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>
>
>
>
> --
> Att,
> Erko Bridee de Almeida Cabrera
> http://erkobridee.com/
> http://gospel.erkobridee.com/
> http://www.cwbfx.com/
> http://twitter.com/ErkoBridee
> Currículo: http://netcarreiras.com/prof.html?uid=11410
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a