|
Do you have samples how you do IO and interface between a class and RPG, on your website or otherwise? Now I'm interested. :) I'm getting conflicting messages on how to do the DB access now, so I'd like to see both methods. If you use RPG for IO, I would assume that it makes the application less portable, though. Brad > -----Original Message----- > From: Joe Pluta [mailto:joepluta@PlutaBrothers.com] > Sent: Friday, March 02, 2001 7:28 AM > To: JAVA400-L@midrange.com > Subject: RE: Java and CPU > > > That may well be the problem, Brad. Whether or not your > applications are > more involved, that code should not be in the Java. It > should be in an RPG > server. My Java classes don't do any I/O. So if you were to > post a bean > that did I/O, I'd immediately say: "That's too much I/O". > > And, yes, I am comparing. My stuff does 20 database reads > and formats 3.3KB > of HTML in 100msec (nearly 200 reads and 8KB in 290 msec for > the larger > version). What does yours do that make it "a tad more > involved"? I suspect > it's because you're trying to "Java-ize" CGI, rather than > design a true > n-tier component-based system. > > Joe > > > > -----Original Message----- > > From: owner-java400-l@midrange.com > > [mailto:owner-java400-l@midrange.com]On Behalf Of Stone, Brad V (TC) > > Sent: Friday, March 02, 2001 7:07 AM > > To: 'JAVA400-L@midrange.com' > > Subject: RE: Java and CPU > > > > > > Joe, > > > > My apps are just a "tad" more involved that your sample. Not > > really a fair > > comparison (I couldn't tell if you were comparing or not). > > > > I'm not using any JSP right now, just servlets as CGI. > > > > My problem may be how I'm doing DB i/o, and I plan on > posting a small bean > > that I'm using to see if anyone has any pointers. > > > > Brad > > > > > -----Original Message----- > > > From: Joe Pluta [mailto:joepluta@PlutaBrothers.com] > > > Sent: Thursday, March 01, 2001 4:54 PM > > > To: JAVA400-L@midrange.com > > > Subject: RE: Java and CPU > > > > > > > > > I guess it depends on your application, Brad. I just ran an > > > informal test > > > on my machine. I loaded my server from scratch, which took > > > about 45 seconds > > > or so of CPU time - it takes a while to load all that good > > > stuff. Then I > > > made 200 or 300 hits to my server, the total was about > > > another 30 seconds or > > > so. Let's see my results from here: > > > > > > QBASE SBS 2 0 2.2 0 .0 > > > LINLST BCH 2 50 3.6 0 3.6 > > > QPADEV0002 INT 3 20 .7 1 .0 0 .0 > > > QSYSSCD BCH 3 20 .3 0 .0 > > > QEJBSBS SBS 2 0 .0 0 .0 > > > DEFAULT_SE BCI 2 25+ 24.2 0 10.4 > > > QEJBADMIN BCI 2 25+ 58.1 0 .1 > > > QEJBMNTR ASJ 2 25 .0 0 .0 > > > > > > Note that LINLST is the RPG program actually servicing the > > > result. He does > > > all the actual database I/O. So let's see. I'm going to do > > > another 200 > > > hits. > > > > > > QBASE SBS 2 0 2.2 0 .0 > > > LINLST BCH 2 50 10.6 0 2.2 > > > QPADEV0002 INT 3 20 .7 2 .0 0 .0 > > > QSYSSCD BCH 3 20 .3 0 .0 > > > QEJBSBS SBS 2 0 .0 0 .0 > > > DEFAULT_SE BCI 2 25+ 44.5 0 6.6 > > > QEJBADMIN BCI 2 25+ 58.5 0 .1 > > > QEJBMNTR ASJ 2 25 .0 0 .0 > > > > > > Okay, 200 hits (actually, I lost count so I did an extra 40 > > > hits, so this > > > could be anywhere between 200 and 240 hits, but let's say 200 > > > for argument). > > > I was putting out the following screen, all data being read > > > from files on > > > the AS/400: > > > > > > Kenosha Weekday Inbound > > > Train #300 > > > Station Time > > > Kenosha ---- > > > Winthrop Harbor ---- > > > Zion ---- > > > Waukegan 4:58 > > > North Chicago 5:01 > > > Great Lakes 5:05 > > > Lake Bluff 5:10 > > > Lake Forest 5:13 > > > Fort Sheridan 5:16 > > > Highwood 5:19 > > > Highland Park 5:22 > > > Ravinia 5:25 > > > Ravinia Park ---- > > > Braeside 5:27 > > > Glencoe 5:30 > > > Hubbard Woods 5:33 > > > Winnetka 5:36 > > > Indian Hill 5:38 > > > Kenilworth 5:40 > > > Wilmette 5:42 > > > Central Street 5:45 > > > Evanston 5:49 > > > Main St. 5:51 > > > Rogers Park 5:54 > > > Ravenswood 5:59 > > > Clybourn 6:06 > > > Chicago 6:15 > > > > > > There are also a few buttons. What I did was page up and > > > down through ten > > > different schedules, and I did that 10 times, for a total of > > > 200 pages. > > > > > > So, we can see that I consumed 7 seconds RPG time, 20 seconds > > > server time > > > and pretty much zero administration time. Extrapolated to > > > your benchmark of > > > 7000 page hits, my application would consume about 700 > seconds of HTTP > > > server time, and maybe 250 seconds of RPG server time. These > > > numbers are > > > less than 2/3 those of your CGI application. They're more > > > than 100 times > > > better in performance than your Java version, which > doesn'teven do any > > > database I/O. > > > > > > Now, things that can greatly increase those numbers include > > > starting and > > > stopping server instances and creating new Java Server Pages. > > > The latter in > > > particular can cause lots of work, because they have to > be unloaded, > > > compiled, and reloaded. Have you been making lots of changes > > > to your JSPs? > > > That number shows up in the QEJBADMIN number, I'm pretty sure. > > > > > > The other load might be from how you're "Java-izing". As you > > > can see, my > > > programs don't have nearly as much load per page - I'm > > > talking overhead of > > > less than 100 msec a page, while you're seeing closer to a 30 > > > seconds. I > > > don't know why, but you might want to start putting some > > > trace statements in > > > your code to determine where your bottlenecks are. > > > > > > Good luck! > > > > > > Joe > > > > > > BTW, for anybody who might wonder how to architect an RPG > program that > > > performs so well as a web application, it's actually a > > > revitalized green > > > screen program. That means it runs in green screen using a > > > display file AND > > > as the server for the web, WITHOUT changes. Here's the same > > > program run > > > interactively: > > > > > > STNSTP-01 Stop Master List > > > 3/01/01 > > > SECJDP For Line: Union Pacific North Line > > > 17:46:24 > > > For Schedule: Kenosha Weekday Inbound > > > For Train: 00300 > > > > > > Station Time > > > Kenosha ---- > > > Winthrop Harbor ---- > > > Zion ---- > > > Waukegan 4:58 > > > North Chicago 5:01 > > > Great Lakes 5:05 > > > Lake Bluff 5:10 > > > Lake Forest 5:13 > > > Fort Sheridan 5:16 > > > Highwood 5:19 > > > Highland Park 5:22 > > > Ravinia 5:25 > > > Ravinia Park ---- > > > Braeside 5:27 > > > Glencoe 5:30 > > > > > > More... > > > F3=Exit F19=Previous F20=Next > > > > > > Pretty cool, eh? This is what I teach... > > > > > > <grin> > > > > > > > > > > -----Original Message----- > > > > From: owner-java400-l@midrange.com > > > > [mailto:owner-java400-l@midrange.com]On Behalf Of > Stone, Brad V (TC) > > > > Sent: Thursday, March 01, 2001 2:35 PM > > > > To: 'JAVA400-L@midrange.com'; ign_list@ignite400.org > > > > Subject: Java and CPU > > > > > > > > > > > > This I found interesting. > > > > > > > > We have an AS/400 that is a web server only. We're running > > > CGI to do > > > > customer service online for multiple customer/catalogs. > > > Right now it's > > > > about 30 sites (all using the same 3 or 4 programs, > > > webfacing controled by > > > > config files, SSIs, etc..). > > > > > > > > Some CPU stats for the normal HTTP Server: (jobs entered > > > system 2/14/2001) > > > > Subsystem/Job Type Pool Pty CPU > > > > CSO BCH 2 25 1516.4 > > > > CSO BCI 2 25 .1 > > > > CSO BCI 2 25 .3 > > > > CSO BCI 2 25 69.0 > > > > CSO BCI 2 25 26.1 > > > > CSO BCI 2 25 727.4 > > > > > > > > Now, I have also have websphere running. I've been trying to > > > > duplicate this > > > > CGI system using servlets and and making progress (no > > > wonder I'm asking so > > > > many questions!). > > > > > > > > Anyhow Here's the CPU stats for the default WAS server that > > > is processing > > > > the servlets: (entered system 2/19/2001) > > > > > > > > Subsystem/Job Type Pool Pty CPU > > > > DEFAULT_SE BCI 2 25+ 2847.7 > > > > QEJBADMIN BCI 2 25+ 6203.9 > > > > QEJBMNTR ASJ 2 25 .1 > > > > > > > > The HTTP server has received about 7000 hits since it started on > > > > 2/14/2001. > > > > This server serves up those 30 sites and is available 24/7. > > > > > > > > The WAS server hasn't even broken a couple hundred hits > > > since it's only me > > > > testing when I have time (started on 2/19/2001). It's not > > > > available to the > > > > interent and I am the only developer on the box. > > > > > > > > The Java version of the application isn't querying customer > > > service data > > > > yet, I'm simply building the web pages. The CGI programs > > > run dynamic SQLs > > > > to select and display data depending on customer signon > information. > > > > > > > > The numbers compared to just the default WAS server may be > > > close, but > > > > remember, it's doing about 1/100th of the work right now. > > > > > > > > Any thoughts, ideas, or otherwise? I'm really wondering > > > why so much more > > > > CPU is used. If I were to take my app and java-ize it, it > > > looks like it > > > > would bury the current machine we are using. > > > > > > > > Last question, does WAS start more instances when it needs to > > > > them to handle > > > > more requests like the HTTP server does? What about the new > > > > Apache server, > > > > does it start more jobs to handle more requests? > > > > > > > > Thanks! > > > > > > > > Brad > > > > > > > > +--- > > > > | This is the JAVA/400 Mailing List! > > > > | To submit a new message, send your mail to > JAVA400-L@midrange.com. > > > > | To subscribe to this list send email to > > > JAVA400-L-SUB@midrange.com. > > > > | To unsubscribe from this list send email to > > > > JAVA400-L-UNSUB@midrange.com. > > > > | Questions should be directed to the list owner: joe@zappie.net > > > > +--- > > > > > > > > > > +--- > > > | This is the JAVA/400 Mailing List! > > > | To submit a new message, send your mail to > JAVA400-L@midrange.com. > > > | To subscribe to this list send email to > JAVA400-L-SUB@midrange.com. > > > | To unsubscribe from this list send email to > > > JAVA400-L-UNSUB@midrange.com. > > > | Questions should be directed to the list owner: joe@zappie.net > > > +--- > > > > > +--- > > | This is the JAVA/400 Mailing List! > > | To submit a new message, send your mail to JAVA400-L@midrange.com. > > | To subscribe to this list send email to > JAVA400-L-SUB@midrange.com. > > | To unsubscribe from this list send email to > > JAVA400-L-UNSUB@midrange.com. > > | Questions should be directed to the list owner: joe@zappie.net > > +--- > > > > +--- > | This is the JAVA/400 Mailing List! > | To submit a new message, send your mail to JAVA400-L@midrange.com. > | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. > | To unsubscribe from this list send email to > JAVA400-L-UNSUB@midrange.com. > | Questions should be directed to the list owner: joe@zappie.net > +--- > +--- | This is the JAVA/400 Mailing List! | To submit a new message, send your mail to JAVA400-L@midrange.com. | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. | To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com. | Questions should be directed to the list owner: joe@zappie.net +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.