I've just posted two new configurations to the MagmaTester project of SqueakSource. It is a new beta for release 41 with several improvements:
- An all-new performance and system-health monitoring package called "Ma Statistics" has been added and utilized internally by all layers of the Magma architecture. - Performance statistics for the last half-hour (hour, day, week, your choice) are captured in five-minute (also adjustable) intervals. Is the server taxed or loafing? What was the average response time for clients? What was the longest response-time for any single request for any client? What was the average size of each response? These and dozens of other statistics are now captured while the server runs with no performance penalty. - The #statistics and #serverStatistics answers a rich domain of the statistics for the MagmaSession and server, respectively. User-interfaces to analyze Statistics domains could disrupt Magma server performance, so should be run in client images. - Studying the output of this model after running a real-world Magma application revealed an opportunity for optimization in the networking layer ("Ma client server"). MaTcpRequestServers now maintain up to 50 simultaneous socket connections for significantly improved performance, especially on low-bandwidth connections.
r41Beta3 actually goes one step further and compresses all ByteArrays sent over the network using the LZ77 algorithm included in 3.9. This was an experiment to address a performance on applications with heavily constrained network bandwidth.
However, the compression slows things down considerably on fast networks, and r41Beta4 is the same exact code without the compression. Due to the other improvements it, too, still shows improved performance on slow network connections. So I'm moving forward without compression at this point.
This release 41 has about execution performance. It has already brought 1000X improvements in simple query's and caching of the prototocol for faster connection times. Now it is still faster than it ever has been, though that's not to say there will be no more opportunities for further improvements.
Enjoy, Chris
magma@lists.squeakfoundation.org