roncli.com blog
The blog of roncli
roncli.com blog
roncli.com
blog
Profile
roncli
Houston, Texas, United States
Labels
Coding
CTG Music
Editorials
Games
Miscellaneous
Music
Servers
Silliness
Software
Sports
Trax in Space Beta
Weather
Recent Posts
Observing the Swiss
BlizzCon franchise roundup
Attention - Gullibility
AMD 16.5.2 error "Qt5Core.dll is missing from your...
The Observatory
Six Degrees of Confusion
Report Card: 2015
Crypt of the NecroDancer Bard Deathless record
Windows 10 public "beta"
Descent's Potential Ascent
Archives
February 2005
March 2005
April 2005
May 2005
June 2005
July 2005
August 2005
September 2005
October 2005
November 2005
December 2005
January 2006
February 2006
March 2006
April 2006
May 2006
June 2006
July 2006
August 2006
September 2006
October 2006
November 2006
December 2006
February 2007
March 2007
April 2007
May 2007
June 2007
July 2007
August 2007
September 2007
October 2007
November 2007
December 2007
January 2008
February 2008
March 2008
April 2008
June 2008
July 2008
September 2008
December 2008
February 2009
July 2009
August 2009
September 2009
October 2009
November 2009
February 2010
March 2010
April 2010
June 2010
July 2010
August 2010
September 2010
October 2010
November 2010
December 2010
March 2011
June 2011
July 2011
August 2011
September 2011
October 2011
December 2011
January 2012
February 2012
April 2012
July 2012
November 2012
July 2013
April 2014
July 2014
August 2014
November 2014
December 2014
March 2015
April 2015
May 2015
June 2015
July 2015
September 2015
January 2016
February 2016
May 2016
July 2016
November 2016
March 2017
Current Posts
Friday, July 09, 2010
Revisiting LibWowArmory
Posted: 4:03:00 PM 0 comments
The biggest thing I dislike about the World of Warcraft Armory is the fact that it throttles requests to 120 a minute. Of course, I understand why it does this, as it must prevent getting hit with so many requests so fast that it essentially gets DOS'd. This means, instead of bitching about the limit, instead I need to find an elegant solution to avoid hitting the Armory more than 120 times per minute with LibWowArmory.

There are several problems that I must tackle in order to implement this. Firstly, LibWowArmory is a library, which means I can have multiple calls to the Armory coming from multiple places. For instance, my web server calls the Armory from both the website and a nightly maintenance application. I need to find a way to centralize management of the number of calls the application is taking per minute.

Second, I can't block a webpage when a call to the Armory is queued, but I can block the maintenance program. I need to develop a queuing mechanism for both scenarios. Something elegant and AJAXish for webpages, and something else for client apps.

The need for this has come up because I'm on the verge of adding GearScores to the Six Minutes To Release website, and the average character GearScore creates over 15 calls to the Armory, one for the character and one for each item. Requests absolutely have to be throttled, or I'm going to run over the 120 requests per minute fast.

I'm hoping to get this done this weekend so that I can release it along with some bug fixes that were introduced with the Visual Studio 2010 conversion. Eventually, the library will go to .NET 4.0 as well, but I'm not going to do that until all of my libraries, websites, and applications are on the same page.

Labels: , , , ,