SpringGrid
Posted: 26 Oct 2009, 07:13
This is a factorization of the AILadder thread, since the project has factorized into two parts:
- SpringGrid: manages botrunners, contains the match request queue, stores the results
- AILadder: a client of SpringGrid's web service, that manages bot matches for the purposes of ranking the AIs, and providing a ladder
This thread is intended to contain updates and discussions for SpringGrid. Updates and discussions for AILadder are intended to stay in the original thread ( http://springrts.com/phpbb/viewtopic.php?f=15&t=20358 )
SpringGrid consists of:
- a website, that is lightweight in terms of cpu and memory, and can be hosted on a shard web host
- botrunners, which run Spring matches. They will use lots of cpu and memory, because they run Spring. They can be behind a firewall and a NAT, since they connect to the website and do a pull. There can be lots of botrunners, and they can be started in a fairly ad-hoc fashion, since they register themselves with the central web site
The website consists of:
- a webservice, botrunner_webservice, to which the botrunners talk
- a webservice, api_webservice, to which clients can talk, ie other websites, or other applications. The api_webservice provides functionality such as posting new match requests and reading the results
- web pages, for use directly through the website
- a database, anything compatibel with SQLAlchemy
Technologies used:
- python
- Jinja2 templates
- SQLAlchemy ORM
- xmlrpc
Staging website:
http://manageddreams.com/springgridstag ... runners.py
Sourcecode:
http://github.com/hughperkins/springgrid
Instructions to run a botrunner:
- download from http://github.com/hughperkins/springgri ... ves/master
- decompress, cd into the botrunner directory
- python botrunner.py
- enter 'http://manageddreams.com/springgridstaging' as the name of the website when requested
- enter a name to identify the botrunner on the website, and anything you like as the sharedsecret, but make sure you remember it
- SpringGrid: manages botrunners, contains the match request queue, stores the results
- AILadder: a client of SpringGrid's web service, that manages bot matches for the purposes of ranking the AIs, and providing a ladder
This thread is intended to contain updates and discussions for SpringGrid. Updates and discussions for AILadder are intended to stay in the original thread ( http://springrts.com/phpbb/viewtopic.php?f=15&t=20358 )
SpringGrid consists of:
- a website, that is lightweight in terms of cpu and memory, and can be hosted on a shard web host
- botrunners, which run Spring matches. They will use lots of cpu and memory, because they run Spring. They can be behind a firewall and a NAT, since they connect to the website and do a pull. There can be lots of botrunners, and they can be started in a fairly ad-hoc fashion, since they register themselves with the central web site
The website consists of:
- a webservice, botrunner_webservice, to which the botrunners talk
- a webservice, api_webservice, to which clients can talk, ie other websites, or other applications. The api_webservice provides functionality such as posting new match requests and reading the results
- web pages, for use directly through the website
- a database, anything compatibel with SQLAlchemy
Technologies used:
- python
- Jinja2 templates
- SQLAlchemy ORM
- xmlrpc
Staging website:
http://manageddreams.com/springgridstag ... runners.py
Sourcecode:
http://github.com/hughperkins/springgrid
Instructions to run a botrunner:
- download from http://github.com/hughperkins/springgri ... ves/master
- decompress, cd into the botrunner directory
- python botrunner.py
- enter 'http://manageddreams.com/springgridstaging' as the name of the website when requested
- enter a name to identify the botrunner on the website, and anything you like as the sharedsecret, but make sure you remember it