What version of Magma are you running? As for performance, Magma came a long way in performance department in r41 and r42. If you still have performance "problems" in r42 then I'm _really_ curious to see the stats report from a troubled client session as well as the server. If you:
myMagmaSession statistics report
for the client, or, you can alternatively print it to any stream (if, for example the printString limit can sometimes be hit with these reports):
myMagmaSession statistics printReportTo: someStream
and post it up here (or send me private e-mail if it's too sensitive) it would reveal a lot about the _nature_ of Gjallers usage of Magma and potential problem areas..
If you are running an HA (which provides more scale, but necessarily more speed for individual clients), then please be sure to get stats from _both_ the primary and secondary:
myMagmaSession serverStatisticsPrimary report
and
myMagmaSession serverStatisticsSecondary report
I know that am a bit lazy in reading the code to learn the usage of a package. I always prefer tutorials and examples. Given the *huge* codebase of magma and the complexity, for a common guy like me, the laziness is bigger. But, when reading the magma mailing list I always found gems like this (that I have been collecting for future reference) that it appears that nobody else knows. This is the reason for my call for a better documentation for magma. It is really a very good piece of software and I'm sad that doesn't receive more acceptance and attention.
We need to collect them and show the people how to use magma in everyday scenarios. Now that I will have more free time I will try to do a little tutorial about magma and I will include these code snippets for others to see and use.
Cheers Miguel Cobá http://miguel.leugim.com.mx
I know that am a bit lazy in reading the code to learn the usage of a package. I always prefer tutorials and examples. Given the *huge* codebase of magma and the complexity, for a
Just to put some numbers on "*huge*":
Magma R42 client package: 1508 methods Magma R42 server package: 890 methods (for comparison) Seaside 2.8 package: 3066 methods
Now, the Magma packages do require the lower "Ma" platform for networking, serialization and other services (just as Seaside requires Kom packages for its networking), which adds another 2314 methods. But these layers are truly independent of Magma (independently used by multiple other applications, without Magma), you probably don't need to be too concerned about the code there for regular business applications.
common guy like me, the laziness is bigger. But, when reading the magma mailing list I always found gems like this (that I have been collecting for future reference) that it appears that nobody else knows. This is the reason for my call for a better documentation for magma.
Incidentally, this gem is mentioned in the docs, top of the page:
http://wiki.squeak.org/squeak/5606
but leaves the reader to "find" it themselves (hint: Look in the "performance" category of MagmaSession). I recommend not being "lazy" in reading the code and even stepping through it in the debugger. Not just Magma, but any package you want to learn. Seeing it in action is really a powerful teacher. Tutorials are great for getting going, but some of the finer points like performance statistics only matter when the user is more into the details anyway..
Regards, Chris
magma@lists.squeakfoundation.org