Submitted by Jim Cooper on Thu, 10/04/2012 - 00:00
Forums

Hi Niels,

Does IceBreak use its own custom web server or does it use Apache under the hood?

Regards,
Jim

Niels Liisberg

Fri, 10/05/2012 - 00:00

Hi Jim;

The short answer is – no. Now – why is IceBreak not just yet another CGI clone. The reason for that is that we want to drill as much power out of the IBMi os as possible. So we are using all kind of IBMi tricks to accomplish that. Apache is on the other hand designed to run multiple platforms and is giving you "only" a common gateway interface (CGI). There is nothing wrong with that when we are talking about file serving. This however is not efficient when it comes to applications. And this is where IceBreak fits in.

IceBreak is delivering on IBMi job for each web-client session. This is totally analog to the green-screen 5250 – one job for each session. We have faith in that IBM can manage one session per job as efficient as possible – and they have done that for decades. This is the key to our design. All the system tuning available on the IBMi works equally well on IceBreak applications as well as black/green 5250. Just think about one thing: debugging.

This also brings another important matter to court: Migration from 5250 to IceBreak: Most RPG programs are written with this design: One user / session per job. So it is much easier to reuse code from legacy systems. You don't have to think about isolations from one user hit the enter button to the next user. You don't have to manage you own task switch: load the session for the next user, reposition file cursors, record locks, close sql cursors etc. …. In IceBreak you simply code as if it was a 5250 application. This is what we in IceBreak calls "multithreaded session stable".

This of cause will turn into more jobs that you are used to on the IBMi – however one IceBreak job occupies as little as 5K memory – less than an 5250 session. And jobs only require CPU power when the user actually "hit the enter key". More data is sent back and especially forth in IceBreak that a 5250 but the IceBreak core is designed to handle extreme workload on even the smallest IBMi.

Just some statistics:

  • IceBreak has an average six time better performance than normal CGI in Apache
  • You can run 6 times more users on the same hardware than with CGI
  • IceBreak has an average 15% less workload per job than a 5250 job
  • You can run 15 more users per 100 users compared to 5250 on the same hardware but with much more payload

We successfully had a customer with 100 concurrently users running on AS/400 model 250 on V5R1 in the early days.

Best regards,
Niels Liisberg