Originally Posted by spawnstah
My aim with this was not really to make life easier for Blizzard and reduce the load on the Armory.
The problem as I see it, is that lets say 10 sites are running 10 crawlers each downloading the data. Since the armory and the millions of characters are quite a lot of data, it takes these individual sites like 2-3 maybe even 4-5 weeks to get all the data they need.
|
What you're asking for is basically a mirror of WoW Armory, but stored in some sort of SQL database where you can do something like "select * from characters as c where c.realm='Stormrage'". This is a nice idea, but it's not going to happen because the armory was never intended as a statistics site, it's meant as an on-demand site. You follow links to characters, you load their data and gasp at their mad epics that they afk farmed in AV.
A site like Wowjutsu will never be 100% accurate until you get a full database dump from Blizzard. There is no other API they can offer to make it accurate, nor will any outside parties be able to offer it. In my opinion anyways, knowing my luck Blizzard will probably go and prove me wrong now. But I don't think it's possible in its current state.
Originally Posted by Gj
2) A browser will download the files once, and consequent requests will use the cache (as explained in the post above).
3) Simple file requests don't put much strain on a server.
4) XSLT transformations are actually performed by your browser. The only time the XSLT transform is done by blizzard is when you view the web page with a browser that doesn't support such transformations.
|
I wish I could say that the caching works well, but on my machines it doesn't. If I open IE7 and load an armory page, it takes 5-20 seconds to load. If I visit the same link again, it takes 2-3 seconds which is basically the character xml loading.
Now if the browser cached everything, I should be able to close the browser, open it again and visit the exact same page where I only need to load the character xml. But when I open the browser and visit the same cached page, it takes just as long as the first time I loaded the page. I experience the same with Firefox, so it's not an IE7 thing. I haven't changed any cache settings on either browser either, they're using default settings.
Consider this, what's fastest; to transfer 1 100kb file or to transfer 100 1kb files? It's the former of course. So no, simple file requests don't put much strain on the server. Unless a lot of those requests fail and are re-requested. And this is exactly where XSLT transformation with synchronous JavaScript code is bad. An XSL file loads a included XSL file that loads javascript code that loads another XSL file that loads a file and fails. Now the file request in the bottom of the chain is broken, it's not responding and the javascript in the middle of the chain is using long timeouts. All of this might be happening while the browser itself tries to reload a image, because that also failed the first time.
WoW Armory is most likely built on an intranet and that's where it belongs. It's not suited for the internet in it's current state.