Review Of 2010: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
imported>Kymara |
imported>Hendrik Brummermann →Marauroa Milestones in 2010: shortened a little |
||
| Line 47: | Line 47: | ||
==Marauroa Milestones in 2010== |
==Marauroa Milestones in 2010== |
||
Marauroa is the engine of the Arianne project. It handles client/server communication and storage of players to the database. At the beginning of 2010 we added support for the installationless H2 database in addition to MySQL. Setting up a Stendhal server is now as easy as installing Java and unzipping the Stendhal Server download. |
|||
Marauroa is the engine of the Arianne project. It has two main functions: |
|||
* Manage the communication between the servers and the clients. |
|||
* Store the player progress to a persistent database. |
|||
Therefore this section will be very technical. |
|||
| ⚫ | There was a fun event in Stendhal at the end of February which we named [[Stendhal_Events#Clone_Wars_2010-02-20|Clone Wars]]. As a result, Marauroa now supports configurable limits on account and character creation and number of parallel connections per IP address. This is just a precaution, Marauroa did handle the huge amount of parallel characters very well. In preparation for the POTM, we overhauled our [[Marauroa|documentation]], integrating and improving JavaDoc, Wiki and Website, so that new developers can easily start using Marauroa. |
||
The most visible change with regard to the database was adding support for the ''installationless H2 database'' at the beginning of 2010. H2 requires no download, installation or configuration which is a huge improvement on ''MySQL''. Under the hood games can now ''update the database structure'' automatically on first server start after an update. |
|||
| ⚫ | The summer was focused on improving performance: Database access is now completely handled asynchronously, which greatly reduced lag spikes. Message from the clients are now processed are now processed in parallel to the normal turn in most cases. For the developers, we added support of a new datatype called maps. This required a change to the Marauroa protocol and while we worked on it, we added support for multiple protocol versions, so a newer server can now talk to older clients and vice versa. |
||
| ⚫ | |||
| ⚫ | We concluded the year with adding support for a test server environment which shares some database table with the main server. So players are now able to test the upcoming releases with their own characters. Marauroa is the first sub project that switched from the version control system CVS to [[Arianne Source Code Repositories|git]]. |
||
In preparation for the POTM, we overhauled our ''documentation'', integrating and improving JavaDoc, Wiki and Website, so that new developers can easily start using Marauroa. Last but not least, ''RPEvents'' now support RPSlots, which allowed the new look shop signs in Stendhal. |
|||
The summer was focused on improving performance: ''database access'' is now completely handled ''asynchronously'', which greatly reduced lag spikes. Marauroa used to have a huge lock on PlayerEntryContainer which prevented processing of all message during an active turn. However, only placing players into the world and removing them needs to be synchronized. So all other ''messages are now processed in parallel'', which speeds up logins noticeably. |
|||
| ⚫ | |||
| ⚫ | We concluded the year with adding support for a |
||
All over the year we fixed minor bugs and improved stability. |
All over the year we fixed minor bugs and improved stability. |
||