Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^3: html::template and large files

by gryphon (Abbot)
on Jan 11, 2006 at 21:35 UTC ( #522570=note: print w/ replies, xml ) Need Help??


in reply to Re^2: html::template and large files
in thread html::template and large files

Greetings xmerlin,

I would avoid using @$log1, 2, 3, etc. Whether you have the data stored in one array or fifteen array references, it's still in memory. You aren't going to gain anything by splitting the data into multiple array references (other than ending up with more complex code).

Just put all the data in @log, then give HTML::Template a reference to the data. (ex. \@log) Also, you may want to avoid using the font tag in your HTML.

<tmpl_loop name="log"> <tmpl_if name="error"><span style="color: red"></tmpl_if> <tmpl_var escape="html" name="logLine"><br/> <tmpl_if name="error"></span></tmpl_if> </tmpl_loop>

From the perspective of usability, it's hard for me to see much value in presenting 100,000 lines of log in a single browser window. Why not present 1,000 lines in a page? Then you can paginate the rest and give the user forward and backward buttons. Maybe adding a search feature would be helpful. Anyway, I don't know your problem domain, so maybe you have a special case, but I'd have a hard time using a web page that just dumped a huge log into the browser. I'd encourage you to look into other ways to present this data.

gryphon
Whitepages.com Development Manager (DSMS)
code('Perl') || die;


Comment on Re^3: html::template and large files
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://522570]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2014-09-22 22:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (205 votes), past polls