Performance Monitoring Tools
Hello, we are planning to perform some load tests against our application (Servlet, JSP and EJBs). We have found some tools that will create the load on the server and will monitor the response times. But we haven't found anything that can be used to monitor Orion's behaviour during the test. What we want to monitor is the memory consumption, CPU usage, Sessions etc. What is important is that we can record what we monitor so we will be able to look at the resutls of the test later. Does anyone has a recommendation for a tool that we can use? Thanks Peter
Re: Performance Monitoring Tools
Hello. I have to do the same tests. Can you please tell me about the loading test tools that you've found. Thanks in advance. JJ - Original Message - From: Cugier (extern) [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Tuesday, March 12, 2002 10:25 AM Subject: Performance Monitoring Tools Hello, we are planning to perform some load tests against our application (Servlet, JSP and EJBs). We have found some tools that will create the load on the server and will monitor the response times. But we haven't found anything that can be used to monitor Orion's behaviour during the test. What we want to monitor is the memory consumption, CPU usage, Sessions etc. What is important is that we can record what we monitor so we will be able to look at the resutls of the test later. Does anyone has a recommendation for a tool that we can use? Thanks Peter
Re: Performance Monitoring Tools
Optimizeit was quite useful to me. Cpu Usage, Object count, Memory usage, Garbage Collector activity. Also tracked the amount of time spent in each function call. -Steve Cugier (extern) wrote: Hello, we are planning to perform some load tests against our application (Servlet, JSP and EJBs). We have found some tools that will create the load on the server and will monitor the response times. But we haven't found anything that can be used to monitor Orion's behaviour during the test. What we want to monitor is the memory consumption, CPU usage, Sessions etc. What is important is that we can record what we monitor so we will be able to look at the resutls of the test later. Does anyone has a recommendation for a tool that we can use? Thanks Peter -- Stephen Davidson Java Consultant Delphi Consultants, LLC http://www.delphis.com Phone: 214-696-6224 x208
Re: Performance Monitoring Tools
Hi Jorge. For generating the load, I have found both Siege and Grinder to be effective. Not fancy, but definately effective. -Steve Jorge Jimenez C wrote: Hello. I have to do the same tests. Can you please tell me about the loading test tools that you've found. Thanks in advance. JJ -- Stephen Davidson Java Consultant Delphi Consultants, LLC http://www.delphis.com Phone: 214-696-6224 x208
RE: Performance Monitoring Tools
Although it might sound strange I do not believe in low level tools such as OptimzeIt on EJB level - first stage. Usually you end up using a component based framework which might be distributed and EJB overhead just changes results significantly. We switched to a simple set of classes which measure response time on component level and watch it under load. In most cases we are able to locate our hot spots easily. I can not release these classes to public - just think about something which allows you to mark the beginning and the end of a transaction, measure the time in between - and cumulate. Hope this helps, Jens | -Original Message- | From: [EMAIL PROTECTED] | [mailto:[EMAIL PROTECTED]]On Behalf Of Cugier | (extern) | Sent: Tuesday, March 12, 2002 3:25 PM | To: Orion-Interest | Subject: Performance Monitoring Tools | | | Hello, | | we are planning to perform some load tests against our | application (Servlet, | JSP and EJBs). We have found some tools that will create the load on the | server and will monitor the response times. But we haven't found anything | that can be used to monitor Orion's behaviour during the test. | What we want | to monitor is the memory consumption, CPU usage, Sessions etc. | What is important is that we can record what we monitor so we will be able | to look at the resutls of the test later. | | Does anyone has a recommendation for a tool that we can use? | | Thanks | | Peter
Performance declines after moving to a faster Server
Hi, we are running a simple web applications - just servlets - on an older Windows NT Server with two Pentium two 233 MHz CPUs. The performance on the server was acceptable and pages showed up pretty quickly in the browsers. Now we bought a new server (still Windows NT) with two Pentium III Xeon 8xx MHz CPUs (same amount of memory) and moved the application to the new server. We expected that the performance would increase because of the faster CPUs but the opposite happened. Our first tests showed a dramatic increase of response time. Pages that showed up in just one or two seconds on the old server, now take ten and more seconds to show up. We start Orion with the same java runtime parameters as on the old server. Also the configuration of the Apache server that we use a front end to Orion did not change. Does anyone have an idea how this performance decline is possible? Shouldn't it be faster on fastes CPUs?
Re: Performance declines after moving to a faster Server
NT offers a near infinate number of causes for slowness. Start by installing a good defrag'er and defrag all disks. Your new box may have dog slow disks? Eh? How about size of L2 Cache? Do the PIII's have same size L2 cach as the PII's which I think where all 256Kb... Or maybe there where a bread of early PII's that had 512Kb? Your new box may have a slow as molasis NIC or a crapie driver with your new install of NT. Here's a set of tools to test: - Ftp to both boxes from a 3rd box of a large file (50Mb) time it. This will test both the NIC the LAN and a much lesser extent the disks. - find iozone it's a common tool on unix, I found a copy for NT. It's great a measuring disk io. - Check that your NIC is hard set to full or half duplex. Don't let it choose via auto. * This might be your problem. * Good luck, curt Cugier (extern) wrote: Hi, we are running a simple web applications - just servlets - on an older Windows NT Server with two Pentium two 233 MHz CPUs. The performance on the server was acceptable and pages showed up pretty quickly in the browsers. Now we bought a new server (still Windows NT) with two Pentium III Xeon 8xx MHz CPUs (same amount of memory) and moved the application to the new server. We expected that the performance would increase because of the faster CPUs but the opposite happened. Our first tests showed a dramatic increase of response time. Pages that showed up in just one or two seconds on the old server, now take ten and more seconds to show up. We start Orion with the same java runtime parameters as on the old server. Also the configuration of the Apache server that we use a front end to Orion did not change. Does anyone have an idea how this performance decline is possible? Shouldn't it be faster on fastes CPUs? -- Curt Smith [EMAIL PROTECTED] (w) 404-463-0973 (h) 404-294-6686
Re: BMP Entity Bean Performance Problem
Tim, As I am not sure of the exact nature of your entity beans, I can't give you any detailed suggestions, but many people impement a 'dirty' flag in their code. eg: void setName(String name) { dirty=true; this.name = name; } ejbStore() { if (!dirty) return; else { doUpdate(); dirty=false; } } This limits the number of updates that you are doing. I assume that you have a very good reason for using BMP, but I would suggest that you use CMP where possible. The performance benefits are quite large. Cheers, Scott Tim Kang wrote: Hi I am using JSP (client) and BMP Entity beans (for mysql db) in my application. I am having a few problems in terms of performance. 1. When I call homeObject.findAll() for the first time, ejbLoad() is invoked for every row in the database. I know this only happens once so I can tolerate this but I am open to suggestions. 2. Once the entity beans are loaded, I call homeObject.findByPrimaryKey().getSomeAttribute(). This calls ejbStore() for every row in the database as well. This is not acceptable as the EJB is performing UPDATE * number of rows in DB. I tried to solve this by implementing a stateful session bean acts a middle layer between JSP and entity beans. However, the problem still exists My session bean code: public class PubcompanyManagerBean implements SessionBean{ private SessionContext context; private PubCompany pubcompany; private PubCompanyHome pubcompanyhome; public void ejbCreate() throws NamingException, RemoteException {} public void ejbRemove() {} public void ejbActivate() {} public void ejbPassivate() {} public void setSessionContext(SessionContext sc) { context = sc; } // Business logic methods public Collection getAllPubCompanies() throws NamingException, RemoteException, FinderException { Context context = new InitialContext(); pubcompanyhome = (PubCompanyHome)PortableRemoteObject.narrow( context.lookup(java:comp/env/crm/PubCompany), PubCompanyHome.class); Collection companyList = pubcompanyhome.findAll(); return companyList; } public PubCompany getPubCompany(String companyid) throws NamingException, RemoteException, FinderException { Context context = new InitialContext(); pubcompanyhome = (PubCompanyHome)PortableRemoteObject.narrow( context.lookup(java:comp/env/crm/PubCompany), PubCompanyHome.class); pubcompany = pubcompanyhome.findByPrimaryKey(companyid); return pubcompany; } } Thanks in advance, Tim -- Scott Farquhar :: [EMAIL PROTECTED] Atlassian :: http://www.atlassian.com Supporting YOUR J2EE World
FW: [Ofbiz-devel] OFBiz Performance on various app servers afteroptimizing OFBiz
More performance tests from the OFBiz guys - this time they're much more interesting for Orion users! The most interesting stat sections are the sheer performance (where Orion absolutely wallops the competition) and price/performance. (quoting - sheer performance) Here they are, in order from fastest to slowest: Orion 1.5.3: 0.045s (45 milliseconds) - 444 pages/sec - 1.6 million/hour Resin 2.0.4: 0.065s (65 milliseconds) - 307 pages/sec - 1.1 million/hour Weblogic 6.1: 1.15s (1,150 milliseconds) - 17.4 pages/sec - 62,640/hour Tomcat 4.0.1: 3.3s (3,300 milliseconds) - 6 pages/sec - 21,600/hour (quoting - price/performance including $850 for a decent server) Resin 2.0.4: 1.1million/(500 + 850) = 814 Orion 1.5.3: 1.6million/(1500 + 850) = 680 Tomcat 4.0.1: 21,600/(0 + 850) = 25.4 Weblogic 6.1: 62,640/(10,000 + 850) = 5.77 (please remember here that Resin 2.0.4 is a servlet/jsp container, whereas Orion is a full J2EE server so they have slightly different feature sets despite comparing very favourably on price/performance). Hope this is interesting to others! Cheers, Mike PS Next time someone tells you that JBoss+Tomcat can outperform Orion, you have some excellent data to prove them wrong PPS Wise man once say anyone who trusts benchmark tests absolutely is a fool - test yourself, on your own apps! -- Forwarded Message From: David E. Jones [EMAIL PROTECTED] Organization: Open For Business Reply-To: [EMAIL PROTECTED] Date: Thu, 7 Feb 2002 17:09:51 -0700 To: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: [Ofbiz-devel] OFBiz Performance on various app servers after optimizing OFBiz Last night I sent a message to the ofbiz-devel list reporting the results of some performance enhancements in OFBiz from optimizing certain little pieces of code. I did some more tests today on the speed of the new improved OFBiz on various app servers. The following numbers are average server response times with 20 threads continuously hitting the server (ie when each thread gets a response it immediately sends another hit, keeping about 20 requests in the queue at all times). The test was done with JMeter on one computer and the app server OFBiz on my PIII 1Ghz laptop. Running Linux (kernel 2.4.10, Suse 7.3) and Sun's JDK 1.4 for all but Weblogic, which requires JDK 1.3, and yes 1.4 is slightly (like 5%) faster. The page hit was ecommerce/control/main with the default catalog. It had two products in the Featured Products category and two top level categories displayed on the side. This isn't a very realistic test for large catalogs, but is a medium sized page to test the app server container preformance. Here they are, in order from fastest to slowest: Orion 1.5.3: 0.045s (45 milliseconds) - 444 pages/sec - 1.6 million/hour Resin 2.0.4: 0.065s (65 milliseconds) - 307 pages/sec - 1.1 million/hour Weblogic 6.1: 1.15s (1,150 milliseconds) - 17.4 pages/sec - 62,640/hour Tomcat 4.0.1: 3.3s (3,300 milliseconds) - 6 pages/sec - 21,600/hour The pages per second counts are calculated as follows: (1/avg. time)*20, because of the 20 continuous threads hitting it. As you can see Orion Resin perform very similarly but Weblogic and Tomcat are left in the dust. Before optimizing OFBiz Weblogic was the fastest, coming in about twice as fast as Orion and Resin. I know from past (good?) experience with Weblogic that they have a lot of tuning parameters, so chances are you can increase the thread pool size or something to get it to go faster. I reduced the number of threads hitting it and it did somewhat better, but never came close to the speed of Orion or Resin, it's webapp container must be just plain heavier. For the $10,000 per CPU range, I think I'll pass, even though I'm sure it can do better than what it was in this test (I don't think it'll ever touch Orion or Resin for webapp speed). Tomcat was by far the slowest. It seemed to run all right for a little while, and then have little periods of slowness where page times jumped up from an average of about 2 seconds to an average of about 5 seconds. Over the minute it levelled out to about 3.3 seconds as listed above. So, which to choose? If you need EJB and other features that Orion provides and want to pay more for them ($1500 per server), then go for it. It is a little bit difficult to configure (or maybe it's just me?), but it runs REALLY well. If you have a smaller budget and are fine with Tyrex (open source from Exolab) as your DB connection pool and TX monitor, then go for Resin. OFBiz runs great on it, and it's only $500 per server. On price/performance Resin wins (pages per second/dollars): Resin: 1.1million/500 = 2200 Orion: 1.6million/1500 = 1066 Weblogic: 62,640/10,000 = 6.264 Tomcat: 21,600/0 = N/A With that sort of calculation you could argue that Tomcat really does win, beacuse it costs nothing so the (pages per second/dollars) would be infinite, effectively. But lets factor in the cost of a server. A cheap PIII 1Ghz supported
FW: [Ofbiz-devel] Re: [Ofbiz-users] OFBiz Performance on variousapp servers after optimizing OFBiz
FYI so in other words the price [of Orion] scales much better. Cheers, Mike Mike Cannon-Brookes [EMAIL PROTECTED] Atlassian :: www.atlassian.com Supporting YOUR world -- Forwarded Message From: David E. Jones [EMAIL PROTECTED] Organization: Open For Business Reply-To: [EMAIL PROTECTED] Date: Thu, 7 Feb 2002 18:01:20 -0700 To: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: Re: [Ofbiz-devel] Re: [Ofbiz-users] OFBiz Performance on various app servers after optimizing OFBiz One other thing I forgot to mention about Orion. It DOES perform better than Resin, 1.6e6/hour compared to 1.1e6/hour, that's like 50% faster, and the cost of both Orion and Resin is per box. Hypothetically lets say you had a four processor box running OFBiz with either Orion or Resin. Looking at prices at Dell (even though you can do much better...) a four processor PowerEdge 6400 server with 4 Pentium III Xeon 700Mhz chips with 1Mb cache and 2Gb RAM will run you pretty close to $15,000. I'm not SURE what the performance would be like on something like that compared to something like the PIII 1Ghz, certainly not 15 times as fast (I guess it could be), let's say it's 10 times as fast (to keep it easy). In that case you would be delivering 16 million hits an hour with Orion and 11 million an hour with Resin. So, we do our little analysis again: Orion 1.5.3: 16million/(1500 + 15,000) = 969 Resin 2.0.4: 11million/(500 + 15,000) = 709 Weblogic 6.1: 626,400/(10,000 + 15,000) = 25.1 Tomcat 4.0.1: 216,000/(0 + 15,000) = 14.4 So, Resin is more expensive in hits per hour per dollar on a bigger server than a smaller server, while Orion is fast enough that it is cheaper in hits per hour per dollar on the bigger server, and it a much better deal than Resin there, so in other words the price scales much better. Later, -David Jones On Thursday 07 February 2002 17:32, you wrote: Mike, Those are very valuable $0.02, and I completely agree. In the paragraph on Orion I mentioned that because of such a little difference, if you need the extra things that Orion has, definately go for it. If all you need it a Servlet container (and use Tyrex for JTA and pooling, and OFBiz for other stuff), then Resin seems to be the best choice. If a shop already has Orion and is using it for other things, they can be sure they made a good choice, in my opinion. Later, -David On Thursday 07 February 2002 17:23, Mike Cannon-Brookes wrote: These performance tests are really valuable - but I'd like to point out that you don't take features into account ;) Woe betide me to start applying numerical calculations to relative feature sets - but I think the below shows that really your choice is between a J2EE server and a Servlet Container (Orion vs Resin). The others are just also-rans. The cost/performance differences are negligible, but the feature sets of these two servers are quite different. (With Orion you get a full EJB container, JMS server, etc etc which you don't get with Resin). Before this starts sounding too much like an ad ;) I'll stop - but choose your features, then your server - not the other way around! My $0.02. -mike On 8/2/02 11:09 AM, David E. Jones ([EMAIL PROTECTED]) penned the words: Last night I sent a message to the ofbiz-devel list reporting the results of some performance enhancements in OFBiz from optimizing certain little pieces of code. I did some more tests today on the speed of the new improved OFBiz on various app servers. The following numbers are average server response times with 20 threads continuously hitting the server (ie when each thread gets a response it immediately sends another hit, keeping about 20 requests in the queue at all times). The test was done with JMeter on one computer and the app server OFBiz on my PIII 1Ghz laptop. Running Linux (kernel 2.4.10, Suse 7.3) and Sun's JDK 1.4 for all but Weblogic, which requires JDK 1.3, and yes 1.4 is slightly (like 5%) faster. The page hit was ecommerce/control/main with the default catalog. It had two products in the Featured Products category and two top level categories displayed on the side. This isn't a very realistic test for large catalogs, but is a medium sized page to test the app server container preformance. Here they are, in order from fastest to slowest: Orion 1.5.3: 0.045s (45 milliseconds) - 444 pages/sec - 1.6 million/hour Resin 2.0.4: 0.065s (65 milliseconds) - 307 pages/sec - 1.1 million/hour Weblogic 6.1: 1.15s (1,150 milliseconds) - 17.4 pages/sec - 62,640/hour Tomcat 4.0.1: 3.3s (3,300 milliseconds) - 6 pages/sec - 21,600/hour The pages per second counts are calculated as follows: (1/avg. time)*20, because of the 20 continuous threads hitting it. As you can see Orion Resin perform very similarly but Weblogic and Tomcat are left in the dust. Before optimizing OFBiz Weblogic
FW: [Ofbiz-devel] App Server Performance
See below for an interesting test one of the OFBiz guys did using their framework in different servers. Good to see Orion smoked 'em! ;) (Yes, I'll give up a half second for my $1500/server vs ~$10k/cpu for WL!) Cheers, Mike Mike Cannon-Brookes [EMAIL PROTECTED] Atlassian :: www.atlassian.com Supporting YOUR world -- Forwarded Message From: David E. Jones [EMAIL PROTECTED] Organization: Open For Business Reply-To: [EMAIL PROTECTED] Date: Wed, 6 Feb 2002 03:11:43 -0700 To: [EMAIL PROTECTED] Subject: [Ofbiz-devel] App Server Performance As many of you know we have been working on making sure that OFBiz runs on a number of different J2EE app servers. We have also been putting together directories for each server with instructions and the files needed to get it going. We have it running on a few different ones now, and I've noticed that performance varies a LOT between different app servers. So, I grabbed JMeter and did some little tests. These results are average response times with 6 simultaneous hits on the server that repeat as soon as a response it received, the default little JMeter behavior. The page hit was ecommerce/control/main which has categories on the side and two products in the promos category. Note that most of the servers could do a .25 to .3 second response for this page with one hit at a time (except Tomcat, which is higher). Weblogic: 0.8 seconds avg Orion: 1.44 seconds avg Resin: 1.6 seconds avg Tomcat: 6.0 seconds avg As you can see Tomcat doesn't do very well under the load. Single page hits come in anywhere from .15s to 1.5s, so performance is all over the chard, but the average for Tomcat seems to be about 1s. So, it doesn't do so well for single hits either. Why the performance difference? My guess is that there are resource handling differences, taglib container differences, etc. It would seem like most of the code is in OFBiz anyway, so there shouldn't be much difference. But, different containers do things VERY differently, evidently. One thing to note about Weblogic is that they have a native performance pack for Linux which was being used for this test, which seems to give them a bit of an advantage (if only it weren't so expensive). Another thing found in recent timing excercises is that OFBiz is pretty slow for a lot of things, especially in certain parts of ecommerce where tons of information is being thrown around. We are doing some profiling and little improvements here and there to speed things up, and it would be great to have help with that. It's a great way to get to know the OFBiz internals. One tool I have just started to try is Sitraka's JProbe, which gets some nice info. They have a free demo download available (only 7 days though...). Later, -David Jones ___ Ofbiz-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/ofbiz-devel -- End of Forwarded Message
FW: [JBoss-user] Redux of Performance Issues
Wow. I know people have complained about this list being a little slow, but if this is what I get from the lead developer of JBoss on how to fix up JBoss performance to compare to Orion's, then ... well ... perhaps I should be spending more time on this list. I'm a little disappointed. I have some interest in both JBoss and Orion, and it's frustrating to get this kind of a response from a key player in the JBoss community. - Geoffrey : -Original Message- : From: marc fleury [mailto:[EMAIL PROTECTED]] : Sent: Tuesday, November 27, 2001 2:34 PM : To: [EMAIL PROTECTED]; [EMAIL PROTECTED] : Subject: RE: [JBoss-user] Redux of Performance Issues : : : look dude, : : get the integrated jboss-tomcat stack you are running : non-optimized out of : stack, period. : : come back when you have set it up, or don't we don't care, : : marcf : : |-Original Message- : |From: [EMAIL PROTECTED] : |[mailto:[EMAIL PROTECTED]]On Behalf Of : |[EMAIL PROTECTED] : |Sent: Tuesday, November 27, 2001 2:09 PM : |To: [EMAIL PROTECTED] : |Subject: [JBoss-user] Redux of Performance Issues : | : | : |For reasons unknown, this message hasn't been going out to the : |list. Trying : |again. : | : |-- : | : |Okay, I've clearly managed to piss off a few people by my : concerns about : |JBoss performance. : | : |Let me start out by saying that I'd be more than happy to get my : |application : |working speedily under JBoss. Orion's documentation is poor : at best, and : |JBoss is fully open-source. I have a great deal of respect : for some of : |JBoss's technology (the verifier and deployer are probably : the best I've : |seen), and where it's coming from. I chose JBoss for the initial : |development because of its reputation and my own interests. : | : |That said, if the performance I'm getting out of JBoss is : the best I can : |expect, or, at least, the best I can manage to get, then I : |absolutely cannot : |use it. Not because I think it 'sucks rocks', because it : doesn't, but : |simply because it will not support the user load I need it to in : |any sort of : |cost-effective manner. Some of you would probably be just : as happy to see : |me go somewhere else, from the tone of your emails, but I'd : personally : |rather find a way to get the performance out of JBoss, for : this or other : |projects. : | : |And, ultimately, it seems as if the performance I'm asking for is : |relatively : |reasonable. I expect a certain amount of overhead in EJB : performance, and : |I'm not asking to duplicate the speed of a bean-only : implementation. But : |supporting a maximum of 25 concurrent users on a decent (if : not maxed-out) : |server seems ... suspiciously slow. : | : |It may be that I've missed some settings to speed things up. It : |may be that : |our application's architecture is better suited to Orion : than to JBoss. : |Whatever it is, I'd like to find out. So I've joined the : JBoss list, and : |I'm here to ask some questions. I'm not trying to promote : Orion, or insult : |JBoss. I like bits of both of them, and the reasons for : that, I can get : |into another day. Ultimately, however, I'd rather support : JBoss as an : |open-source appserver, if I can. : | : |-- : | : |Now, on to the details. Some of you pointed out, and : rightly so, that I : |hadn't provided much in the way of details of what I've : tried, which is : |true. I wanted to start off by finding out if the kind of : numbers I was : |talking about seemed realistic or not, based on the : experience of people : |who'd spent more time with JBoss than I have, but it's : probably fair to say : |that you couldn't really say without knowing a lot more about my : |application. So let's get into a few details. : | : |Let's start with versions. I did some of my original EJB : |experimentation on : |JBoss-2.4.1. We started developing a project on : JBoss-2.4.1a w/ Embedded : |Tomcat, which was the latest JBoss/Tomcat grouping at the : time. We started : |noticing performance concerns then. When Tomcat 4 came out, : we moved to : |JBoss-2.4.3 w/ Embedded Catalina, so that we could try a few : things, and : |found it not to be slower, so we stayed with it. : | : |After we reached a point where we needed to see better : performance, we did : |some optimizing of our app with a profiler, and tried JBoss : 2.4.3 w/ Resin, : |which we already knew to be fast. That gave us a minor speed : |boost, but not : |very much, leading me to believe that JBoss might be the : cause of some of : |our performance. By comparison, Orion 1.5.2 seems to be : very much faster. : | : |All of this is running on Windows 2000. The versions of : Tomcat are 3.2.3 : |and 4.0, as far as I know. The version of Resin is the latest : |version as of : |a few weeks ago, I'd have to go check. If it's important, I will. : | : |Processor speed depended, but developers are working, largely, on : |PIII-700MHzs, and we did most of our load
Re: FW: [JBoss-user] Redux of Performance Issues
I've been working with the swiftmq beta release (with Orion) and I have noticed that Marc Fleury has also spread his charm to the folks over on that list. The developers at Swiftmq have essentially been told to piss off by JBoss (I assume by Marc, since the tone is the same). --- [EMAIL PROTECTED] wrote: Wow. I know people have complained about this list being a little slow, but if this is what I get from the lead developer of JBoss on how to fix up JBoss performance to compare to Orion's, then ... well ... perhaps I should be spending more time on this list. I'm a little disappointed. I have some interest in both JBoss and Orion, and it's frustrating to get this kind of a response from a key player in the JBoss community. - Geoffrey : -Original Message- : From: marc fleury [mailto:[EMAIL PROTECTED]] : Sent: Tuesday, November 27, 2001 2:34 PM : To: [EMAIL PROTECTED]; [EMAIL PROTECTED] : Subject: RE: [JBoss-user] Redux of Performance Issues : : : look dude, : : get the integrated jboss-tomcat stack you are running : non-optimized out of : stack, period. : : come back when you have set it up, or don't we don't care, : : marcf : : |-Original Message- : |From: [EMAIL PROTECTED] : |[mailto:[EMAIL PROTECTED]]On Behalf Of : |[EMAIL PROTECTED] : |Sent: Tuesday, November 27, 2001 2:09 PM : |To: [EMAIL PROTECTED] : |Subject: [JBoss-user] Redux of Performance Issues : | : | : |For reasons unknown, this message hasn't been going out to the : |list. Trying : |again. : | : |-- : | : |Okay, I've clearly managed to piss off a few people by my : concerns about : |JBoss performance. : | : |Let me start out by saying that I'd be more than happy to get my : |application : |working speedily under JBoss. Orion's documentation is poor : at best, and : |JBoss is fully open-source. I have a great deal of respect : for some of : |JBoss's technology (the verifier and deployer are probably : the best I've : |seen), and where it's coming from. I chose JBoss for the initial : |development because of its reputation and my own interests. : | : |That said, if the performance I'm getting out of JBoss is : the best I can : |expect, or, at least, the best I can manage to get, then I : |absolutely cannot : |use it. Not because I think it 'sucks rocks', because it : doesn't, but : |simply because it will not support the user load I need it to in : |any sort of : |cost-effective manner. Some of you would probably be just : as happy to see : |me go somewhere else, from the tone of your emails, but I'd : personally : |rather find a way to get the performance out of JBoss, for : this or other : |projects. : | : |And, ultimately, it seems as if the performance I'm asking for is : |relatively : |reasonable. I expect a certain amount of overhead in EJB : performance, and : |I'm not asking to duplicate the speed of a bean-only : implementation. But : |supporting a maximum of 25 concurrent users on a decent (if : not maxed-out) : |server seems ... suspiciously slow. : | : |It may be that I've missed some settings to speed things up. It : |may be that : |our application's architecture is better suited to Orion : than to JBoss. : |Whatever it is, I'd like to find out. So I've joined the : JBoss list, and : |I'm here to ask some questions. I'm not trying to promote : Orion, or insult : |JBoss. I like bits of both of them, and the reasons for : that, I can get : |into another day. Ultimately, however, I'd rather support : JBoss as an : |open-source appserver, if I can. : | : |-- : | : |Now, on to the details. Some of you pointed out, and : rightly so, that I : |hadn't provided much in the way of details of what I've : tried, which is : |true. I wanted to start off by finding out if the kind of : numbers I was : |talking about seemed realistic or not, based on the : experience of people : |who'd spent more time with JBoss than I have, but it's : probably fair to say : |that you couldn't really say without knowing a lot more about my : |application. So let's get into a few details. : | : |Let's start with versions. I did some of my original EJB : |experimentation on : |JBoss-2.4.1. We started developing a project on : JBoss-2.4.1a w/ Embedded : |Tomcat, which was the latest JBoss/Tomcat grouping at the : time. We started : |noticing performance concerns then. When Tomcat 4 came out, : we moved to : |JBoss-2.4.3 w/ Embedded Catalina, so that we could try a few : things, and : |found it not to be slower, so we stayed with it. : | : |After we reached a point where we needed to see better : performance, we did : |some optimizing of our app with a profiler, and tried JBoss : 2.4.3 w/ Resin, : |which we already knew to be fast. That gave us a minor speed : |boost, but not : |very much, leading me to believe that JBoss might be the : cause of some
RE: FW: [JBoss-user] Redux of Performance Issues
Amazing! It would be one thing if this Geoffrey guy was being a jerk, but my reading of his message indicates that he approached the problem very sensitively. This coupled with Andreas' (from SwiftMQ) comment about his similar response from the JBoss folks make me think that maybe they've forgotten what made them successful in the first place...developers like you and I. -Original Message- From: Ray Harrison [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 27, 2001 2:54 PM To: Orion-Interest Subject: Re: FW: [JBoss-user] Redux of Performance Issues I've been working with the swiftmq beta release (with Orion) and I have noticed that Marc Fleury has also spread his charm to the folks over on that list. The developers at Swiftmq have essentially been told to piss off by JBoss (I assume by Marc, since the tone is the same). --- [EMAIL PROTECTED] wrote: Wow. I know people have complained about this list being a little slow, but if this is what I get from the lead developer of JBoss on how to fix up JBoss performance to compare to Orion's, then ... well ... perhaps I should be spending more time on this list. I'm a little disappointed. I have some interest in both JBoss and Orion, and it's frustrating to get this kind of a response from a key player in the JBoss community. - Geoffrey
Re: FW: [JBoss-user] Redux of Performance Issues
Sounds to me like the lead developer of JBoss is a fifteen year old kid who is too busy watching MTV to bother with a serious reply to your posting. tim. Wow. I know people have complained about this list being a little slow, but if this is what I get from the lead developer of JBoss on how to fix up JBoss performance to compare to Orion's, then ... well ... perhaps I should be spending more time on this list. I'm a little disappointed. I have some interest in both JBoss and Orion, and it's frustrating to get this kind of a response from a key player in the JBoss community. - Geoffrey : -Original Message- : From: marc fleury [mailto:[EMAIL PROTECTED]] : Sent: Tuesday, November 27, 2001 2:34 PM : To: [EMAIL PROTECTED]; [EMAIL PROTECTED] : Subject: RE: [JBoss-user] Redux of Performance Issues : : : look dude, : : get the integrated jboss-tomcat stack you are running : non-optimized out of : stack, period. : : come back when you have set it up, or don't we don't care, : : marcf
RE: jdbc performance Orion vs. WL
Egor, Did you use the ejb-location (this is the best)? Also, did you use the latest 9i jdbc drivers from Oracle? You need to repeat the test with updating and inserting. Also, create several connections at once to use the pooling feature. Drop the stuff about Metadata...not very useful or very real world...and known to be slow. I would also drop the i/o, not necessary for this type of test. Regards, the elephantwalker www.elephantwalker.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Savotchkin Egor Sent: Tuesday, October 23, 2001 11:05 PM To: Orion-Interest Subject: jdbc performance Orion vs. WL Hi all, decided to find out who is the fastest when working with DB using jdbc. I wrote a simple servlet that does the following: 1) acquires connection from the App. Server's JNDI tree and selects 7000 records from an Oracle table. 2) acquires connection using DriverManager (OracleDriver) and selects 7000 records from the same table. The results are 1) WL ~4000 ms vs. Orion ~7000 ms 2) WL ~4000 ms vs. Orion ~6600 ms I agree that WL outperforms Orion because it is using its own DB Driver. But why even standard OracleDriver on Orion is working ~3 sec slower than on Weblogic 6.1? May be it is possible to tune Orion so that it could outperform WL when using jdbc? Egor Savotchkin try { System.out.println( *); System.out.println(Init ctx ... ); start(); Context ctx = new InitialContext(); end(); System.out.println(Getting DS ...); start(); DataSource ds = (DataSource) ctx.lookup(JNDI_NAME); end(); System.out.println(getting connection ...); start(); Connection conn = ds.getConnection(); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); Statement st = conn.createStatement(); end(); String query = SELECT * from logs; DatabaseMetaData dbmd = conn.getMetaData(); System.out.println(executing : + query); start(); ResultSet rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); int i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); rs.close(); st.close(); conn.close(); conn = null; System.out.println(i = + i); System.out.println(); System.out.println(getting connection ...); start(); Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection( url, xxx, xxx); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); st = conn.createStatement(); end(); System.out.println(executing query : + query); start(); rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); } catch (Exception ex) { System.out.println(Exception : + ex); }
RE: jdbc performance Orion vs. WL
Did you use the ejb-location (this is the best)? Also, did you use the latest 9i jdbc drivers from Oracle? You need to repeat the test with updating and inserting. Also, create several connections at once to use the pooling feature. ejb-location ?? I'm interested in what you're saying here? re: your benchmarking; another poster also gave thoughts to configure a connection pool, data-sources.xml, and set min connections to be a reasonable number. - To better stress the container vs just see DB performance or JDBC driver memory thrashing on the result set performance, why not have a test fixture that hit your servlet with 100 simultaneous requests.I think this is where WLS will be much heavier. WLS would also be at more of a disadvantage in EJB, especially Entity, performance. I believe this test is more of a JDBC / DB performance measure and the 7 sec is due to the 8i thin driver.Lets see if anyone gives perf comparisons between 9i thick vs thin?? Anybody have subjective comparison between 8i thick/thin VS 9i thick/thin drivers?? How about useful new features in the 9i thick/thin drivers? Thanks, curt
Re: jdbc performance Orion vs. WL
Try with Oracle OCI drivers. - Original Message - From: Savotchkin Egor [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Tuesday, October 23, 2001 11:05 PM Subject: jdbc performance Orion vs. WL Hi all, decided to find out who is the fastest when working with DB using jdbc. I wrote a simple servlet that does the following: 1) acquires connection from the App. Server's JNDI tree and selects 7000 records from an Oracle table. 2) acquires connection using DriverManager (OracleDriver) and selects 7000 records from the same table. The results are 1) WL ~4000 ms vs. Orion ~7000 ms 2) WL ~4000 ms vs. Orion ~6600 ms I agree that WL outperforms Orion because it is using its own DB Driver. But why even standard OracleDriver on Orion is working ~3 sec slower than on Weblogic 6.1? May be it is possible to tune Orion so that it could outperform WL when using jdbc? Egor Savotchkin try { System.out.println( *); System.out.println(Init ctx ... ); start(); Context ctx = new InitialContext(); end(); System.out.println(Getting DS ...); start(); DataSource ds = (DataSource) ctx.lookup(JNDI_NAME); end(); System.out.println(getting connection ...); start(); Connection conn = ds.getConnection(); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); Statement st = conn.createStatement(); end(); String query = SELECT * from logs; DatabaseMetaData dbmd = conn.getMetaData(); System.out.println(executing : + query); start(); ResultSet rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); int i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); rs.close(); st.close(); conn.close(); conn = null; System.out.println(i = + i); System.out.println(); System.out.println(getting connection ...); start(); Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection( url, xxx, xxx); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); st = conn.createStatement(); end(); System.out.println(executing query : + query); start(); rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); } catch (Exception ex) { System.out.println(Exception : + ex); }
jdbc performance Orion vs. WL
Hi all, decided to find out who is the fastest when working with DB using jdbc. I wrote a simple servlet that does the following: 1) acquires connection from the App. Server's JNDI tree and selects 7000 records from an Oracle table. 2) acquires connection using DriverManager (OracleDriver) and selects 7000 records from the same table. The results are 1) WL ~4000 ms vs. Orion ~7000 ms 2) WL ~4000 ms vs. Orion ~6600 ms I agree that WL outperforms Orion because it is using its own DB Driver. But why even standard OracleDriver on Orion is working ~3 sec slower than on Weblogic 6.1? May be it is possible to tune Orion so that it could outperform WL when using jdbc? Egor Savotchkin try { System.out.println( *); System.out.println(Init ctx ... ); start(); Context ctx = new InitialContext(); end(); System.out.println(Getting DS ...); start(); DataSource ds = (DataSource) ctx.lookup(JNDI_NAME); end(); System.out.println(getting connection ...); start(); Connection conn = ds.getConnection(); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); Statement st = conn.createStatement(); end(); String query = SELECT * from logs; DatabaseMetaData dbmd = conn.getMetaData(); System.out.println(executing : + query); start(); ResultSet rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); int i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); rs.close(); st.close(); conn.close(); conn = null; System.out.println(i = + i); System.out.println(); System.out.println(getting connection ...); start(); Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection( url, xxx, xxx); end(); System.out.println(Connection : + conn.getClass()); System.out.println(creating statement ...); start(); st = conn.createStatement(); end(); System.out.println(executing query : + query); start(); rs = st.executeQuery(query); end(); System.out.println(ResultSet : + rs.getClass()); i = 0; System.out.println(rs); start(); while (rs.next()) { i++; } end(); } catch (Exception ex) { System.out.println(Exception : + ex); }
Deployment performance
Hello, We are deploying .ear containing 12 ejb .jars and 1 .war. It takes 3 minutes to deploy, even if I have changed only one .jar. Could I speed this up somehow? -- Best regards, Alex Bairov
RE: Deployment performance
Try with jikes it will be help u speed up deployement. -Original Message- From: Alex Bairov [mailto:[EMAIL PROTECTED]] Sent: Thursday, October 04, 2001 9:36 AM To: Orion-Interest Subject: Deployment performance Hello, We are deploying .ear containing 12 ejb .jars and 1 .war. It takes 3 minutes to deploy, even if I have changed only one .jar. Could I speed this up somehow? -- Best regards, Alex Bairov
Re: Deployment performance
Alex Bairov wrote: Hello, We are deploying .ear containing 12 ejb .jars and 1 .war. It takes 3 minutes to deploy, even if I have changed only one .jar. Could I speed this up somehow? -- Best regards, Alex Bairov Hi Alex. When you do your builds, make sure that your unchanged jars are not touched. I have my Ant script check to see if the files in a particular Jar have been updated before it builds that jar. If it doesn't need to be rebuilt, the Ant script skips on to the next jar. -Steve -- Stephen Davidson Java Consultant Delphi Consultants, LLC http://www.delphis.com Phone: 214-696-6224 x208
RE: Orion Performance Tuning
Question..is the HotSpot 2.0 Server JVM the same thing that comes with the JDK 1.3.1 in the /bin/server folder? If I install the full JDK 1.3.1, and not JRE 1.3.1, do I need the HotSpot 2.0? I know this isn't Orion specific, but since we are on the topic of performance tuning Orion and using the -server option, I thought I'd ask. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Adam Cassar Sent: Wednesday, July 25, 2001 10:44 PM To: Orion-Interest Subject: Re: Orion Performance Tuning Enable the undocumented option: -Xconcurrentio You will find that with a large number of simultaneous connections you will gain a large performance increase. (The sun site claim up to 40%, but I have only found a 20-30% depending on the app). Read http://java.sun.com/docs/hotspot/VMOptions.html and http://java.sun.com/docs/hotspot/PerformanceFAQ.html and http://java.sun.com/docs/hotspot/gc/index.html for a good overview. On Wed, Jul 25, 2001 at 10:51:27AM -0700, Robert S. Sfeir wrote: Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] -- Adam Cassar Technical Development Manager ___ NetRegistry http://www.netregistry.net D: +61 2 9641 8609 | F: +61 2 9699 6088 PO Box 270 Broadway NSW 2007 Australia
RE: Orion Performance Tuning
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Robert S. Sfeir Sent: Wednesday, July 25, 2001 8:51 PM To: Orion-Interest Subject: Orion Performance Tuning Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Maybe you run the server and the browser on the same computer and usual Netscape is very hungry on processor time, a problem encountered by me very often in a combination of IIS and Netscape; Use Task Manager to see if this is the problem; Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED]
Re: Orion Performance Tuning
inline - Original Message - From: Robert S. Sfeir [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Wednesday, July 25, 2001 11:09 PM Subject: RE: Orion Performance Tuning At 12:49 PM 7/25/2001, Duffey, Kevin wrote: I am interested in your two fixes. Have you (or anyone) noticed that Orion actually requires 175MB of RAM? I think it's mainly our Servlet that uses this up. I think it depends on how many servlets you load. Is there a definite need to use both memory switches, or perhaps one over the other? What is the use and/or meaning of each switch? -Xms = minimum amount of memory the JVM will use -Xmx = mazimum amount of memory the JVM will use What I find funny is I just installed JDK 1.3.1 and noticed the /server, /classic and /hotspot dirs under bin which contain the jvm.dll that Windows uses. I was actually going to post an email to this and JSP interest list asking what the benefits and differences are between the 3 jvms. BIG benefits, just try it. The hotspot IS included in JDK1.3.1, so the -hotspot switch is not needed. Anyhow, the difference between -client and -server switches is the 80-20 model and a more dynamic OSR ( on stack replacement ). The client option uses a static 80-20 model to determine which methods are to be marked as HOT and therefore subject to OSR. The server option however determines OSR at runtime marking methods over a period of time, doing statistics whatever to truly determine how and why and when to do OSR. The client starts immediately and is used for programs that run from a couple of minutes to a day approx, and the 80-20 approach is applicable and enough for client needs. The server on the other hand requires at least a few hours uptime to determine which methods are HOT. This information is lost on System.exit(int), so, at every restart it has to do all statistics again. But then, a server jvm should not be restarted. For development I would (and do) use -client so I can stop and start the server more often without wait for statistics. The difference is the internal compiler. They are completely different. The server compiler was written from scratch. And for all I know the compiler is not completely finished, and use the client compiler where it does not know how to handle something. So SUN has only released the safe compiler and there should not be a need to use -server on development since behaviour will be the same, only time wont. Johan I haven't been able to find anything on the sun site that details how they are different. Can you fill me in if you know, what makes the server jvm better? From what I understand, it uses memory and processors more efficiently, more driven for background apps rather than a client JVM driven with foreground apps in mind. Is it better overall for all use (other than client-side SWING apps)? I thought the hotspot was the best because of the inline JIT that converts code to native..and thus should speed it up greatly. Is the server better just for production use, or for anyone running Orion locally for web development as well? Ideally, I would think we want our development, qa, staging and live servers to all run the same JVM to make sure we all see any problems that arise. I use it for everything here now. No harm, just benefits, you just gotta have the RAM. R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED]
Oracle, JDK 1.3, Orion Re: Orion Performance Tuning
There are a couple of problems you need to be aware of that affected us in a current project. There is a bug in JDK 1.3.0 that can cause the VM to crash when using threads and the -server option. This caused us many a head scratching sessions. It is fixed in JDK 1.3.1 (check the bug fixes). The second one we encountered is with the use of Oracles OCI drivers (8.1.7 8.1.7.1). Oracle would occasionally and randomly hang on a select. This would eventually avalanche to a point where Orion would also hang and you couldn't do anything but shutdown (actually you couldn't even shutdown you would have to kill Orion). Eventually we found a bug report (and it is listed as a known bug in the 9i features/release file) that said the Oracle OCI datapooled connections could hang in a multithreaded application. Great ! There are several problems here as well. Oracle 8.1.7 is only certified to work with JDK 1.2.2 and nothing above. (Oracle 9i is supposed to be certified to 1.3.0) Eventually our only solution was to go with thin drivers with JDK 1.3.0 with the -client option. Our system setup for anyone curious Sun Solaris 2.7 Orion 1.5.2 Oracle 8.1.7 JDK 1.3.0 Andrew Panagos - Original Message - From: Adam Cassar [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Thursday, July 26, 2001 12:43 AM Subject: Re: Orion Performance Tuning Enable the undocumented option: -Xconcurrentio You will find that with a large number of simultaneous connections you will gain a large performance increase. (The sun site claim up to 40%, but I have only found a 20-30% depending on the app). Read http://java.sun.com/docs/hotspot/VMOptions.html and http://java.sun.com/docs/hotspot/PerformanceFAQ.html and http://java.sun.com/docs/hotspot/gc/index.html for a good overview. On Wed, Jul 25, 2001 at 10:51:27AM -0700, Robert S. Sfeir wrote: Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] -- Adam Cassar Technical Development Manager ___ NetRegistry http://www.netregistry.net D: +61 2 9641 8609 | F: +61 2 9699 6088 PO Box 270 Broadway NSW 2007 Australia
Orion Performance Tuning
Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED]
RE: Orion Performance Tuning
I am interested in your two fixes. Have you (or anyone) noticed that Orion actually requires 175MB of RAM? Is there a definite need to use both memory switches, or perhaps one over the other? What is the use and/or meaning of each switch? What I find funny is I just installed JDK 1.3.1 and noticed the /server, /classic and /hotspot dirs under bin which contain the jvm.dll that Windows uses. I was actually going to post an email to this and JSP interest list asking what the benefits and differences are between the 3 jvms. I haven't been able to find anything on the sun site that details how they are different. Can you fill me in if you know, what makes the server jvm better? Is it better overall for all use (other than client-side SWING apps)? I thought the hotspot was the best because of the inline JIT that converts code to native..and thus should speed it up greatly. Is the server better just for production use, or for anyone running Orion locally for web development as well? Ideally, I would think we want our development, qa, staging and live servers to all run the same JVM to make sure we all see any problems that arise. Thanks. -Original Message- From: Robert S. Sfeir [mailto:[EMAIL PROTECTED]] Sent: Wednesday, July 25, 2001 10:51 AM To: Orion-Interest Subject: Orion Performance Tuning Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED]
RE: Orion Performance Tuning
At 12:49 PM 7/25/2001, Duffey, Kevin wrote: I am interested in your two fixes. Have you (or anyone) noticed that Orion actually requires 175MB of RAM? I think it's mainly our Servlet that uses this up. I think it depends on how many servlets you load. Is there a definite need to use both memory switches, or perhaps one over the other? What is the use and/or meaning of each switch? -Xms = minimum amount of memory the JVM will use -Xmx = mazimum amount of memory the JVM will use What I find funny is I just installed JDK 1.3.1 and noticed the /server, /classic and /hotspot dirs under bin which contain the jvm.dll that Windows uses. I was actually going to post an email to this and JSP interest list asking what the benefits and differences are between the 3 jvms. BIG benefits, just try it. I haven't been able to find anything on the sun site that details how they are different. Can you fill me in if you know, what makes the server jvm better? From what I understand, it uses memory and processors more efficiently, more driven for background apps rather than a client JVM driven with foreground apps in mind. Is it better overall for all use (other than client-side SWING apps)? I thought the hotspot was the best because of the inline JIT that converts code to native..and thus should speed it up greatly. Is the server better just for production use, or for anyone running Orion locally for web development as well? Ideally, I would think we want our development, qa, staging and live servers to all run the same JVM to make sure we all see any problems that arise. I use it for everything here now. No harm, just benefits, you just gotta have the RAM. R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED]
RE: Orion Performance Tuning
Hello, I also found setting the Min and Max JVM memory settings (xmsM and xmxM) greatly improved performance. Here is another JVM trick I used that also helped - set the NEW GENERATION memory allocation higher... the switch is -xmnM . This helps tune the JVM garbage collection and scavenger frequency to ensure discarded objects are removed efficiently without unnecessarily halting the system for a gc priority thread. I used -xmn512M and the system flies with no hang-ups. -Josh --- Duffey, Kevin [EMAIL PROTECTED] wrote: I am interested in your two fixes. Have you (or anyone) noticed that Orion actually requires 175MB of RAM? Is there a definite need to use both memory switches, or perhaps one over the other? What is the use and/or meaning of each switch? What I find funny is I just installed JDK 1.3.1 and noticed the /server, /classic and /hotspot dirs under bin which contain the jvm.dll that Windows uses. I was actually going to post an email to this and JSP interest list asking what the benefits and differences are between the 3 jvms. I haven't been able to find anything on the sun site that details how they are different. Can you fill me in if you know, what makes the server jvm better? Is it better overall for all use (other than client-side SWING apps)? I thought the hotspot was the best because of the inline JIT that converts code to native..and thus should speed it up greatly. Is the server better just for production use, or for anyone running Orion locally for web development as well? Ideally, I would think we want our development, qa, staging and live servers to all run the same JVM to make sure we all see any problems that arise. Thanks. -Original Message- From: Robert S. Sfeir [mailto:[EMAIL PROTECTED]] Sent: Wednesday, July 25, 2001 10:51 AM To: Orion-Interest Subject: Orion Performance Tuning Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] __ Do You Yahoo!? Make international calls for as low as $.04/minute with Yahoo! Messenger http://phonecard.yahoo.com/
RE: Orion Performance Tuning
Hey there..using JDK 1.3.0 and 1.3.1 (two different boxes). I don't see the -Xmn512M anywhere. I do the java -X to list, and I do see something about incremental GC option...but nothing for -Xmn. Is this a different JVM your using? Or is it JDK 1.4 your using? -Original Message- From: Josh P. Motto [mailto:[EMAIL PROTECTED]] Sent: Wednesday, July 25, 2001 2:38 PM To: Orion-Interest Subject: RE: Orion Performance Tuning Hello, I also found setting the Min and Max JVM memory settings (-xmsM and xmxM) greatly improved performance. Here is another JVM trick I used that also helped - set the NEW GENERATION memory allocation higher... the switch is -xmnM . This helps tune the JVM garbage collection and scavenger frequency to ensure discarded objects are removed efficiently without unnecessarily halting the system for a gc priority thread. I used -xmn512M and the system flies with no hang-ups. -Josh --- Duffey, Kevin [EMAIL PROTECTED] wrote: I am interested in your two fixes. Have you (or anyone) noticed that Orion actually requires 175MB of RAM? Is there a definite need to use both memory switches, or perhaps one over the other? What is the use and/or meaning of each switch? What I find funny is I just installed JDK 1.3.1 and noticed the /server, /classic and /hotspot dirs under bin which contain the jvm.dll that Windows uses. I was actually going to post an email to this and JSP interest list asking what the benefits and differences are between the 3 jvms. I haven't been able to find anything on the sun site that details how they are different. Can you fill me in if you know, what makes the server jvm better? Is it better overall for all use (other than client-side SWING apps)? I thought the hotspot was the best because of the inline JIT that converts code to native..and thus should speed it up greatly. Is the server better just for production use, or for anyone running Orion locally for web development as well? Ideally, I would think we want our development, qa, staging and live servers to all run the same JVM to make sure we all see any problems that arise. Thanks. -Original Message- From: Robert S. Sfeir [mailto:[EMAIL PROTECTED]] Sent: Wednesday, July 25, 2001 10:51 AM To: Orion-Interest Subject: Orion Performance Tuning Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] __ Do You Yahoo!? Make international calls for as low as $.04/minute
Re: Orion Performance Tuning
Enable the undocumented option: -Xconcurrentio You will find that with a large number of simultaneous connections you will gain a large performance increase. (The sun site claim up to 40%, but I have only found a 20-30% depending on the app). Read http://java.sun.com/docs/hotspot/VMOptions.html and http://java.sun.com/docs/hotspot/PerformanceFAQ.html and http://java.sun.com/docs/hotspot/gc/index.html for a good overview. On Wed, Jul 25, 2001 at 10:51:27AM -0700, Robert S. Sfeir wrote: Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] -- Adam Cassar Technical Development Manager ___ NetRegistry http://www.netregistry.net D: +61 2 9641 8609 | F: +61 2 9699 6088 PO Box 270 Broadway NSW 2007 Australia
oc4j/orion performance tests
this is very good show of orion's performance against weblogic (I presume this is appserver X, since they are the only appserver vender that prevents their name from being used in a comparison...gutless!) and websphere: http://technet.oracle.com/tech/java/oc4j/content.html You will have to create an account with otn, but that's pretty easy to do by going to : http://technet.oracle.com/index.html, and clicking the membership link. Its free. Regards, the elephantwalker
Re: Orion performance meassures ?
Title: RE: Orion performance meassures ? Most likely, although I have no clue how this is done... Try the class com.evermind.client.orion.OrionConsoleAdmin And see if you can get something out of that. If you do, feel free to post the results on the list :) Johan - Original Message - From: Larry Velez To: Orion-Interest Sent: Thursday, April 26, 2001 7:22 PM Subject: RE: Orion performance meassures ? Is there any way these statistics can be queried and exported either locally or remotely. I would like to create performance reports based on Memory usage, Average hits, load, etc. thanx, Larry (Running Orion on NT) -Original Message- From: Johan Fredriksson [mailto:[EMAIL PROTECTED]] Sent: Thursday, April 26, 2001 4:59 AM To: Orion-Interest Subject: Re: Orion performance meassures ? Yes there are some statistics... java -jar orionconsole.jar - Original Message - From: "Tony Fonager" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Wednesday, April 25, 2001 11:19 PM Subject: Orion performance meassures ? We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as "hits pr. second", "errors pr. seconds" and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
Re: Orion performance meassures ?
Yes there are some statistics... java -jar orionconsole.jar - Original Message - From: Tony Fonager [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Wednesday, April 25, 2001 11:19 PM Subject: Orion performance meassures ? We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as hits pr. second, errors pr. seconds and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
RE: Orion performance measures ?
Have you looked at the free Apache Jmeter at http://jakarta.apache.org/? -Original Message- From: Tony Fonager [mailto:[EMAIL PROTECTED]] Sent: Wednesday, April 25, 2001 4:20 PM To: Orion-Interest Subject: Orion performance meassures ? We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as hits pr. second, errors pr. seconds and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
RE: Orion performance meassures ?
Title: RE: Orion performance meassures ? Is there any way these statistics can be queried and exported either locally or remotely. I would like to create performance reports based on Memory usage, Average hits, load, etc. thanx, Larry (Running Orion on NT) -Original Message- From: Johan Fredriksson [mailto:[EMAIL PROTECTED]] Sent: Thursday, April 26, 2001 4:59 AM To: Orion-Interest Subject: Re: Orion performance meassures ? Yes there are some statistics... java -jar orionconsole.jar - Original Message - From: Tony Fonager [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Wednesday, April 25, 2001 11:19 PM Subject: Orion performance meassures ? We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as hits pr. second, errors pr. seconds and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
RE: Orion performance measures ?
Title: RE: Orion performance meassures ? Besides Apache Jmeter (jakarta.apache.org), and Orion's internal statistics, look at www.acelet.com and their stress test component (http://www.acelet.com/super/help/tour/StressTour.html) . -Original Message-From: Larry Velez [mailto:[EMAIL PROTECTED]]Sent: Thursday, April 26, 2001 12:23 PMTo: Orion-InterestSubject: RE: Orion performance meassures ? Is there any way these statistics can be queried and exported either locally or remotely. I would like to create performance reports based on Memory usage, Average hits, load, etc. thanx, Larry (Running Orion on NT) -Original Message- From: Johan Fredriksson [mailto:[EMAIL PROTECTED]] Sent: Thursday, April 26, 2001 4:59 AM To: Orion-Interest Subject: Re: Orion performance meassures ? Yes there are some statistics... java -jar orionconsole.jar - Original Message - From: "Tony Fonager" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Wednesday, April 25, 2001 11:19 PM Subject: Orion performance meassures ? We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as "hits pr. second", "errors pr. seconds" and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
RE: orion http server performance/load handling
For one thing, this isn't a fair comparison as you're using different numbers of layers asp-db vs jsp(I assume?)-ejb-db I know it is not fair. But the result contracdict what I was expecting (orion slower because of more work/layers, but IIS crashing earlier because direct access). I have to review my code. The answer could be here. Olivier -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Hani Suleiman Sent: 25 April 2001 13:35 To: Orion-Interest Subject: Re: orion http server performance/load handling For one thing, this isn't a fair comparison as you're using different numbers of layers asp-db vs jsp(I assume?)-ejb-db but I agree that the connection url not found error is disturbing. Why not submit a test app to bugzilla, I'm sure the orion folk would be interested in fixing this (since it does sound like a bug) Hani On Wed, 25 Apr 2001, olivier wrote: Hi, I have developped 2 little web app using ASP/IIS for one, struts/JSP/EJB/Orion for the other. They both access the same database using the same store proc, the pages are the same... However the EJB access the database, transform the resultset into objects arrays, while in the ASP the access is direct from the page and result are not converted into objects. I have written a simple client that create some thread, each thread executes several connection, all simultaneously. Orion is faster up to 150 connections. But at 200, Orion cannot respond to all requests (error like connection URL not found), on the first ones (quite a lot though), while IIS keeps running, slowly but running. Are their any settings I could change to get it better. ? Cheers, Olivier
RE: orion http server performance/load handling
The error I get is: java.net.ConnectException: Connection refused: no further information I have changed my test so I don't access any page involving database connection (JDBC access). It is the same. Around 200, problems. Olivier -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Victor Salaman Sent: 25 April 2001 14:01 To: Orion-Interest Subject: RE: orion http server performance/load handling I suspect this is a problem with your jdbc access layer... To troubleshoot make simple program accessing the data directly with just the jdbc driver and test. -Original Message- From: Hani Suleiman [mailto:[EMAIL PROTECTED]] Sent: Wednesday, April 25, 2001 8:35 AM To: Orion-Interest Subject: Re: orion http server performance/load handling For one thing, this isn't a fair comparison as you're using different numbers of layers asp-db vs jsp(I assume?)-ejb-db but I agree that the connection url not found error is disturbing. Why not submit a test app to bugzilla, I'm sure the orion folk would be interested in fixing this (since it does sound like a bug) Hani On Wed, 25 Apr 2001, olivier wrote: Hi, I have developped 2 little web app using ASP/IIS for one, struts/JSP/EJB/Orion for the other. They both access the same database using the same store proc, the pages are the same... However the EJB access the database, transform the resultset into objects arrays, while in the ASP the access is direct from the page and result are not converted into objects. I have written a simple client that create some thread, each thread executes several connection, all simultaneously. Orion is faster up to 150 connections. But at 200, Orion cannot respond to all requests (error like connection URL not found), on the first ones (quite a lot though), while IIS keeps running, slowly but running. Are their any settings I could change to get it better. ? Cheers, Olivier
Orion performance meassures ?
We are experimenting with Orion as an alternative to IIS on Windows 2000. But how do I meassure such things as hits pr. second, errors pr. seconds and so on, like I am used to under Windows 2000 and IIS, using the performance monitor ? Is there ANY statistics in Orion, which you can retrieve during runtime ? Thanks in advance! - Regards, Tony Fonager Netcoders ApS - http://www.netcoders.dk Copenhagen, Denmark
Slow performance with large EJB-JAR.XML file...
We have been putting all our beans in a single ejb-jar.xml. However, it's taking Orion noticably slower to deploy new changes. I am wondering what (if any) problems associated with splitting each bean into it's own ejb-jar.xml and treating it as an independent module. Any help would be appreciated. -AP_
SV: Slow performance with large EJB-JAR.XML file...
Title: SV: Slow performance with large EJB-JAR.XML file... Splitting into multiple ejb-jar could be a good idea considering that there has to be some functionality in that one and only ejb-jar module of yours that can be factored out to independent packages. -Ursprungligt meddelande- Från: Alex Paransky [mailto:[EMAIL PROTECTED]] Skickat: den 11 april 2001 18:06 Till: Orion-Interest Ämne: Slow performance with large EJB-JAR.XML file... We have been putting all our beans in a single ejb-jar.xml. However, it's taking Orion noticably slower to deploy new changes. I am wondering what (if any) problems associated with splitting each bean into it's own ejb-jar.xml and treating it as an independent module. Any help would be appreciated. -AP_
RE: Performance problems (More Info).
Sorry for my stupid question, but what is a a SMP machine ? Kind Regards, Marco At 18:13 2-4-01 -0700, you wrote: Well I found the problem with this and I thought I'd let everyone know for the sake of posterity. I found that this problem did not occur on my non-SMP machines, so I played around and found that the HotSpot server behaves wierd with SMP. Switching to pure interpretted mode fixes the problem. It wasn't Orion... phew -Original Message- From: Aaron Tavistock [mailto:[EMAIL PROTECTED]] Sent: Monday, March 26, 2001 12:11 PM To: Orion-Interest Subject: RE: Performance problems (More Info). JVM Settings -- My normal settings are "-server -Xincgc -Xms128m -Xmx384m". I've tried playing around with different JVM options including turning off server, using normal gc, running in interpreted mode, running in classic mode, et al. I even tried running under JDK1.2.2. While these definately effect performance in dramatic ways, none seems to fix this problem. Garbage Collection -- I tried watching the heap by turning on verbosegc, and the pauses do not appear to be timed with a full gc. So thats not it either, definately a good thought though... DB Server -- The DB server itself is performing fine, CPU and memory utilization is low. The database is completely accessable via sqlplus or an alternative app while these pauses occur. Connection Pooling vs Orions DataSource Manager -- Interestingly the problem seems to go away when I turn off Orions datasources, and run with a third party ConnectionPool manager (such as BitMechanic).While this fixes my immediate problem it will prevent me from using Orion as an EJB container, which is not good. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Monday, March 26, 2001 1:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
Re: Performance problems (More Info).
SMP = Symmetric Multiprocessing. It's a multi-CPU box. Jeff. On Sat, 07 Apr 2001 14:02:37 +0200 "Marco Pas (GMX)" [EMAIL PROTECTED] wrote: Sorry for my stupid question, but what is a a SMP machine ? Kind Regards, Marco At 18:13 2-4-01 -0700, you wrote: Well I found the problem with this and I thought I'd let everyone know for the sake of posterity. I found that this problem did not occur on my non-SMP machines, so I played around and found that the HotSpot server behaves wierd with SMP. Switching to pure interpretted mode fixes the problem. It wasn't Orion... phew -Original Message- From: Aaron Tavistock [mailto:[EMAIL PROTECTED]] Sent: Monday, March 26, 2001 12:11 PM To: Orion-Interest Subject: RE: Performance problems (More Info). JVM Settings -- My normal settings are "-server -Xincgc -Xms128m -Xmx384m". I've tried playing around with different JVM options including turning off server, using normal gc, running in interpreted mode, running in classic mode, et al. I even tried running under JDK1.2.2. While these definately effect performance in dramatic ways, none seems to fix this problem. Garbage Collection -- I tried watching the heap by turning on verbosegc, and the pauses do not appear to be timed with a full gc. So thats not it either, definately a good thought though... DB Server -- The DB server itself is performing fine, CPU and memory utilization is low. The database is completely accessable via sqlplus or an alternative app while these pauses occur. Connection Pooling vs Orions DataSource Manager -- Interestingly the problem seems to go away when I turn off Orions datasources, and run with a third party ConnectionPool manager (such as BitMechanic).While this fixes my immediate problem it will prevent me from using Orion as an EJB container, which is not good. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Monday, March 26, 2001 1:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
RE: Performance problems (More Info).
Well I found the problem with this and I thought I'd let everyone know for the sake of posterity. I found that this problem did not occur on my non-SMP machines, so I played around and found that the HotSpot server behaves wierd with SMP. Switching to pure interpretted mode fixes the problem. It wasn't Orion... phew -Original Message- From: Aaron Tavistock [mailto:[EMAIL PROTECTED]] Sent: Monday, March 26, 2001 12:11 PM To: Orion-Interest Subject: RE: Performance problems (More Info). JVM Settings -- My normal settings are "-server -Xincgc -Xms128m -Xmx384m". I've tried playing around with different JVM options including turning off server, using normal gc, running in interpreted mode, running in classic mode, et al. I even tried running under JDK1.2.2. While these definately effect performance in dramatic ways, none seems to fix this problem. Garbage Collection -- I tried watching the heap by turning on verbosegc, and the pauses do not appear to be timed with a full gc. So thats not it either, definately a good thought though... DB Server -- The DB server itself is performing fine, CPU and memory utilization is low. The database is completely accessable via sqlplus or an alternative app while these pauses occur. Connection Pooling vs Orions DataSource Manager -- Interestingly the problem seems to go away when I turn off Orions datasources, and run with a third party ConnectionPool manager (such as BitMechanic).While this fixes my immediate problem it will prevent me from using Orion as an EJB container, which is not good. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Monday, March 26, 2001 1:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
Performance problems...
I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
RE: Performance problems...
Q: Are you running the JVM with -server? Q: Could it be a garbage collection related problem? If it's happening at odd times when heap usage is up, it might be gc collecting old jdbc objects? -mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Monday, March 26, 2001 1:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
RE: Performance problems...
What is the maximum number of connections that you have configured your database pool to? Could you be running out of connections? Are you properly releasing the connections back to the pool, and closing results set which might not be needed? During the time that the site is "frozen" (as you indicate 20 to 60 seconds) can you hit a page that is not database related (a simple .JSP perhaps)? Does that return fast (this would determine if your problem is database or Orion related). Have you tried to examine what's happening on the database server side when this occurs? Just some thoughts. -AP_ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Sunday, March 25, 2001 7:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
RE: Performance problems...
And from totally out in left field, how about conflicting database transaction/table locks. I doubt it, because those tend to be indefinite, but it's a thought anyway! I suspect that the running-out-of- connections idea is more likely to be correct, though... Gary -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Aaron Tavistock Sent: Sunday, March 25, 2001 7:09 PM To: Orion-Interest Subject: Performance problems... I've been working on getting Orion running in a production environment for a little while now and just when I thought everything was working fine I go to push to production and something load/volume related is creating massive slowdowns. Basically every 250 database accesses or so there is a long pause (20 to 60 second), where nothing occurs. During this pause the CPU load *drops* to practically nothing and our entire site is frozen. I'm not sure exactly where the problem exists; it could be our code, our configuration, or even a bug in Orion. The environment is Redhat 6.2, JDK1.3, Oracle 8i. Its a pure J2EE app, but we're not using EJB. I initially thought it might be a memory issue, but I've played with the JDK heap size and carefully watched memory utilization and thats also not the issue. I even considered that maybe Evermind/IronFlare might have a throttle (to push you to get a license) so I put one of our production licenses on the QA box. I've since gotten a load tester and can reproduce the problem. Oddly, it only happens on pages which require database access. Even more interesting is that it occurs more frequently on pages which utilize more than one connection. But thats about as far as I can narrow it. I've tried the 8.15 and 8.17 type4 jdbc drivers from oracle and we've tried Oracles ConnectionCacheImpl and Orions XADataSource implimentation, both show the same behavior (though both are using the Oracle Driver). I've also tried Orions jdbc debug and it shows nothing of interest. So far I've put about a week straight into finding it, and I've just about run out of ideas. I'd really be appreciative if anyone has any good suggestions on where to look. ANyone seen behavior like this before?
Re: Performance problems...
I've had similar symptoms with ATG Dynamo. It usually occurs when the VM decides to garbage collect. The way we get around this is to have multiple Dynamo instances each with it's own dedicated VM and CPU. This makes the user experience more acceptable across all sessions on the system since the garbage collection per user is less noticeable. are you only using 1 VM right now? just a thought. Sal
RE: Performance with ORION
There should be one for each active request. -Original Message- From: Ismael Blesa Part [mailto:[EMAIL PROTECTED]] Sent: 12 March 2001 15:58 To: Orion-Interest Subject: Re: Performance with ORION Yes it should create only one instance of each servlet. What I mean is how to specify how many threads the server should create. JRUN has several parameters to configure this, but I have not seen any one on Orion. Mike Cannon-Brookes wrote: It _should_ only create one instance of each servlet. Multiple threads are then used to serve different requests. -mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Ismael Blesa Part Sent: Monday, March 12, 2001 8:01 PM To: Orion-Interest Subject: Performance with ORION We have been making some tests with an application that uses a main entry point, this is used to redirect all the request to the correspondant object. We have found that ORION only creates one instance of this servlet and we think that this is causing a bottleneck of our application. Is there a way to configure how many threads to create to serve more requests per second? Thanks PS: Any news about IronFlare?
Performance with ORION
We have been making some tests with an application that uses a main entry point, this is used to redirect all the request to the correspondant object. We have found that ORION only creates one instance of this servlet and we think that this is causing a bottleneck of our application. Is there a way to configure how many threads to create to serve more requests per second? Thanks PS: Any news about IronFlare?
RE: Performance with ORION
It _should_ only create one instance of each servlet. Multiple threads are then used to serve different requests. -mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Ismael Blesa Part Sent: Monday, March 12, 2001 8:01 PM To: Orion-Interest Subject: Performance with ORION We have been making some tests with an application that uses a main entry point, this is used to redirect all the request to the correspondant object. We have found that ORION only creates one instance of this servlet and we think that this is causing a bottleneck of our application. Is there a way to configure how many threads to create to serve more requests per second? Thanks PS: Any news about IronFlare?
Re: Performance with ORION
Yes it should create only one instance of each servlet. What I mean is how to specify how many threads the server should create. JRUN has several parameters to configure this, but I have not seen any one on Orion. Mike Cannon-Brookes wrote: It _should_ only create one instance of each servlet. Multiple threads are then used to serve different requests. -mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Ismael Blesa Part Sent: Monday, March 12, 2001 8:01 PM To: Orion-Interest Subject: Performance with ORION We have been making some tests with an application that uses a main entry point, this is used to redirect all the request to the correspondant object. We have found that ORION only creates one instance of this servlet and we think that this is causing a bottleneck of our application. Is there a way to configure how many threads to create to serve more requests per second? Thanks PS: Any news about IronFlare?
Preparing Performance Tests...
I'm actually preparing performance tests for our applications and I have two questions: How to get logs about database connections' handling made by the container? How to monitor the memory used by Orion itself + the applications running on the server? I would appreciate any answer on these two topics Hadi
Orion performance tuning
We are investigating Orionserver to replace Apache Tomcat. We could use any input on performance tuning for servlets. Has anyone seen a matrix or formula for initial values that might help us out? We have approximately 100 internal users that hit the server serving ~90 objects with approximately 100 - 200 database connections open all the time. Our server is a SUN E 10K with 8 GIG of ram. I can offer all of the specs if needed. Your help is greatly appreciated. thanks, Mark
Performance: CMP beans vs SessionBean Wrappers
Hi, I've received some negative feedback on the use of CMP beans regarding performance. They switched to Session beans which gave them a remarkable perfomance increase (no figures available). Note: These guys did not use Orion. Does anyone have likewise experience with Orion? Regards, FE
RE: Postgress Performance
Thanks, I had tried these with little improvement. After looking at pgbench.c and reading other comments my conclusion is that postgres is this slow on doing inserts. The fast means of inserts a lot of data is to use COPY which is not useful for creating beans. It looks like my best bet is to ether switch to HSQL or at least use a combination of Postgres and HSQL. -Original Message- From: Sach Jobb [SMTP:[EMAIL PROTECTED]] Sent: Sunday, January 28, 2001 1:42 PM To: Orion-Interest Subject: Re: Postgress Performance It could be a performance issue with Postgres. By default Postgres uses a "paranoid" setting that writes each transaction to disk immediately after the transaction is completed. This is done to protect the integrity of the database, as at anytime the database could go down and data could be lost. However, when dealing with large numbers of transaction this can severely impair performance. So, you can disable it by changing your postmaster line to something like this: postmaster -o -F -D /mypath/to/datadir You can also get a little speed out of detaching from the tty you started it from by using the "-S" switch. And, of course, in terms of performance when deploying you should really tweak the number of backend connections. Hope that helps. thanks, sach %s/windows/linux/g On Sun, 28 Jan 2001, Paul Fink wrote: In general Orion and postgres seem to work well together but I have a problem with the performance of inserts. As the size of the table increases the rate at which I can do inserts, or bean creates, decreases dramatically. I have a very simple Alarm entity bean with a single Long as the primary key. Running under Linux on a PIII. When I start with an empty table I can create new Alarm beans at a rate of about 40/sec. When the table reaches 10K entries the rate is down to 10/sec and continues to drop. I have the entity bean wrapped by a session bean and I do several creates per transaction. The only trick I've found for speeding up postgress is the "-o -F" flag which I've done.
Postgress Performance
In general Orion and postgres seem to work well together but I have a problem with the performance of inserts. As the size of the table increases the rate at which I can do inserts, or bean creates, decreases dramatically. I have a very simple Alarm entity bean with a single Long as the primary key. Running under Linux on a PIII. When I start with an empty table I can create new Alarm beans at a rate of about 40/sec. When the table reaches 10K entries the rate is down to 10/sec and continues to drop. I have the entity bean wrapped by a session bean and I do several creates per transaction. The only trick I've found for speeding up postgress is the "-o -F" flag which I've done.
Re: Postgress Performance
It could be a performance issue with Postgres. By default Postgres uses a "paranoid" setting that writes each transaction to disk immediately after the transaction is completed. This is done to protect the integrity of the database, as at anytime the database could go down and data could be lost. However, when dealing with large numbers of transaction this can severely impair performance. So, you can disable it by changing your postmaster line to something like this: postmaster -o -F -D /mypath/to/datadir You can also get a little speed out of detaching from the tty you started it from by using the "-S" switch. And, of course, in terms of performance when deploying you should really tweak the number of backend connections. Hope that helps. thanks, sach %s/windows/linux/g On Sun, 28 Jan 2001, Paul Fink wrote: In general Orion and postgres seem to work well together but I have a problem with the performance of inserts. As the size of the table increases the rate at which I can do inserts, or bean creates, decreases dramatically. I have a very simple Alarm entity bean with a single Long as the primary key. Running under Linux on a PIII. When I start with an empty table I can create new Alarm beans at a rate of about 40/sec. When the table reaches 10K entries the rate is down to 10/sec and continues to drop. I have the entity bean wrapped by a session bean and I do several creates per transaction. The only trick I've found for speeding up postgress is the "-o -F" flag which I've done.
ejb performance
Hi all! I made some tests to find out how transactions affect performance. I called a sessionless' ejb empty function with different transaction attributes. It turned out that call time mean was about 250 ms and it almost not changed depending on attributesn (Requires, supports, ...). So, does transactions have so little impact on perfomance??? Why it takes about 250ms to invoke an empty function on ejb? Is it because ejb are distrubuted objects? What else could affect the ejb performance? Regards, Savotchkin Egor Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru
Re: ejb performance
At 14:28 16.12.00 , you wrote: Hi all! I made some tests to find out how transactions affect performance. I called a sessionless' ejb empty function with different transaction attributes. It turned out that call time mean was about 250 ms and it almost not changed depending on attributesn (Requires, supports, ...). So, does transactions have so little impact on perfomance??? Why it takes about 250ms to invoke an empty function on ejb? Is it because ejb are distrubuted objects? What else could affect the ejb performance? Regards, Savotchkin Egor you must have made a mistake 250ms is ridiculously slow. that's 4 calls per sec please check your setup. this doesn't reflect our observations at all. even with transactions that's way too slow or are you by any chance using a 386 with 4 Meg RAM and a nojit VM ;-)). regards, robert Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
RE: ejb performance
Yeah!!! I forgot that in this function I got not pooled db connection. So, after I turned the pooling on it became 0 to 10 ms (on PIII 600 with 256 RAM) to invoke this function!!! Great indexes!! So given these numbers I may throw away all these transaction attributes and f.ex. always specify requires, since it doesnot affect perfomance... Regards, Savotchkin Egor Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Robert Krueger Sent: Saturday, December 16, 2000 2:57 PM To: Orion-Interest Subject: Re: ejb performance At 14:28 16.12.00 , you wrote: Hi all! I made some tests to find out how transactions affect performance. I called a sessionless' ejb empty function with different transaction attributes. It turned out that call time mean was about 250 ms and it almost not changed depending on attributesn (Requires, supports, ...). So, does transactions have so little impact on perfomance??? Why it takes about 250ms to invoke an empty function on ejb? Is it because ejb are distrubuted objects? What else could affect the ejb performance? Regards, Savotchkin Egor you must have made a mistake 250ms is ridiculously slow. that's 4 calls per sec please check your setup. this doesn't reflect our observations at all. even with transactions that's way too slow or are you by any chance using a 386 with 4 Meg RAM and a nojit VM ;-)). regards, robert Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
Re: ejb performance
Hi Savotchkin! Could you please describe, what you did to activate pooling? I tried this for my application, but without success... (could you maybe post you datasource xml?) thx in advance Marcus Lankenau Yeah!!! I forgot that in this function I got not pooled db connection. So, after I turned the pooling on it became 0 to 10 ms (on PIII 600 with 256 RAM) to invoke this function!!! Great indexes!! So given these numbers I may throw away all these transaction attributes and f.ex. always specify requires, since it doesnot affect perfomance... Regards, Savotchkin Egor Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru -- begin:vcard n:Lankenau;Marcus x-mozilla-html:FALSE url:wwl.de org:wwl vision2market;Interactive adr:;;goebelstr. 46;Lilienthal;D;28865; version:2.1 email;internet:[EMAIL PROTECTED] title:Senior Developer fn:Marcus Lankenau end:vcard
RE: ejb performance
Yes, of course: data-source name="DateSource" class="com.evermind.sql.ConnectionDataSource" location="jdbc/defaultCBOSS" schema="/database-schemas/oracle.xml" pooled-location="jdbc/CBOSS" xa-location="jdbc/xa/DefaultXADS" ejb-location="jdbc/DefaultEJBDS" url="jdbc:oracle:thin:@128.1.5.50:1528:dev" connection-driver="oracle.jdbc.driver.OracleDriver" username="username" password="password" max-connections="10" inactivity-timeout="30" min-connections="5" / Pay attention to use write location in your code, f.ex. I use jdbc/CBOSS to locate the datasource since it is the place where pooled datasources are stored by orion. Regards, Savotchkin Egor Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Marcus Lankenau Sent: Saturday, December 16, 2000 6:30 PM To: Orion-Interest Subject: Re: ejb performance Hi Savotchkin! Could you please describe, what you did to activate pooling? I tried this for my application, but without success... (could you maybe post you datasource xml?) thx in advance Marcus Lankenau Yeah!!! I forgot that in this function I got not pooled db connection. So, after I turned the pooling on it became 0 to 10 ms (on PIII 600 with 256 RAM) to invoke this function!!! Great indexes!! So given these numbers I may throw away all these transaction attributes and f.ex. always specify requires, since it doesnot affect perfomance... Regards, Savotchkin Egor Web-technologies department eMail: [EMAIL PROTECTED] CJSC "SoftPro" - Billing systems tel: (+7-095) 755-5655 (3135) web-site: http://www.cboss.ru -- begin:vcard n:Lankenau;Marcus x-mozilla-html:FALSE url:wwl.de org:wwl vision2market;Interactive adr:;;goebelstr. 46;Lilienthal;D;28865; version:2.1 email;internet:[EMAIL PROTECTED] title:Senior Developer fn:Marcus Lankenau end:vcard
RE: EJB Performance Question.
At 14:48 14.11.00 , you wrote: Thanks Robert. I think I'll try running some benchmarks this week and post the results. I wonder.. is there a way for and EJB-EJB to be _forced_ to go through RMI? i.e. can I turn this optimization off? I don't think there is a documented way to to this. robert -tim -Original Message- From: Robert Krueger [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 14, 2000 1:36 PM To: Orion-Interest Subject: RE: EJB Performance Question. At 12:06 14.11.00 , you wrote: At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... Is there proof that Orion does this? I'm not trying to be a jerk, but I'd like to see some numbers on how long a set/get takes for a client-to-ejb call and an ejb-to-ejb (same vm) call. do a getClass().getName() on your ejbobject. will be the same wrapper class that implements the ejbobject (if you look into the generate code that's temporarily there on deployment). anyway, I've never benchmarked but it is orders of magnitude faster than any rmi stack I've seen. I think there's even an old mail in the archive from karl that confirms this otiomization because it was one of the first things I asked (must at least be 10 months ago now). regards, robert Not even Weblogic optimizes to pass-by-value for intra-vm ejb calls. You have to use TopLink to get that optimization. Funny though, Weblogic provides a tag in their deployment description but it doesn't do anything. -tim (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
RE: EJB Performance Question.
The idea behind a bulk accessor is to return a single object that holds all the data of your EJB. (Forgive me for any syntax mistakes. I'm doing this from heart and I've done so much EJB2.0 stuff that my 1.1 is a little rusty.) If you have an EJB like this: public class FooEJB implements EntityBean { public String data1; public String data2; public int data3; ... // this is a bulk accessor public FooView getFoo() { return new FooView(data1, data2, data3); } } You would create a "view" object that can hold all the EJB data. A view is a very thin "bean-like" object: public class FooView { String data1; String data2; int data3; public String getData1() { return data1; } public String getData2() { return data2; } public int getData3() { return data3; } public FooView(String data1, String data2, int data3) { this.data1 = data1; this.data2 = data2; this.data3 = data3; } } Now you client only need to call: FooView fv = fooejb.getFooView(); to get all the data within the Foo EJB. This reduces the RMI marshalling to a single call. Then, you use the FooView accessors to get to the data; since FooView is a local object, this will be fast. NOTE: if you followed this thread, you heard from others that Orion optimizes intra-VM EJB calls to "call-by-value" which doesn't use RMI. This is great for Orion, but is not specified in the spec, so if you were to port your application to another container, you aren't guaranteed this optimization. The above bulk accessor/View pattern will always work. -tim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 14, 2000 7:04 PM To: Orion-Interest Subject: Re: EJB Performance Question. Thank You for your kind reply. Can I get some pseudo-code an example? Thank you. - Original Message - From: Tim Drury To: Orion-Interest Sent: Wednesday, November 15, 2000 12:03 AM Subject: RE: EJB Performance Question. Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a bulk accessor pattern. For example, create a new class called DirView which contains all the attributes of your Dir EJB. Then make a single call to the Dir EJB to get a DirView. This will cause only 1 RMI call and save you a huge amount of time. Do you understand? I can probably pseudo-code an example if necessary. -tim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 14, 2000 3:56 AM To: Orion-Interest Subject: EJB Performance Question. Hi, every one. First i'm sorry for my english. We use servlet that call EJB. Next is code fraction. //--- public Vector findByFirstPage(DirHome home, Integer rowCount) throws Exception{ Vector rows = new Vector(); Dir dir = null; System.out.println("step 11 time : " + (new java.util.Date())); // call EJB Collection col = home.findByFirstPage(rowCount.intValue()); Iterator iter = col.iterator(); System.out.println("step 12 time : " + (new java.util.Date())); while(iter.hasNext()) { dir = (Dir)iter.next(); rows.add(EJBToRow(dir)); //--- bottle neck # } System.out.println("step 13 time : " + (new java.util.Date())); return rows; } //--- Simple code. In while loop, EJBToRow() method take 3 second each call. Next code is EJBToRow(). Very Simple. Only call EJB Meber methods. //--- public Vector EJBToRow(Dir dir) throws Exception { Vector row = new Vector(); System.out.println("step 21 time : " + (new java.util.Date())); row.add(dir.getId()); row.add(new Long(dir.getPId())); row.add(dir.getName()); row.add(new Long(dir.getSerial())); row.add(new Long(dir.getChildCount())); row.add(new Long(dir.getDepth())); row.add(dir.getPMap()); row.add(dir.getType()); row.add(dir.getUserId()); row.add(dir.getGroupId()); row.add(dir.getOwnerPermR()); row.add(dir.getOwnerPermW()); row.add(dir.getOwnerPermX()); row.add(dir.getGroupPermR()); row.add(dir.getGroupPermW()); row.add(dir.getGroupPermX()); row.add(dir.getOtherPermR()); row.add(dir.getOtherPermW()); row.add(dir.getOtherPermX()); row.add(dir.getCreateDate()); row.add(dir.getUpdateDate()); row.add(dir.getExpireDate()); row.add(dir.getRemark()); System.out.println("step 22 time : " + (new java.util.Date())); return row; } //--- What's the key problem? e-mail site: [EMAIL PROTECTED] : www.javanuri.comÀüÈ mobile : 02-6257-3002 : 019-255-2855
RE: EJB Performance Question.
At 10:11 AM 11/15/2000 +0100, you wrote: At 14:48 14.11.00 , you wrote: Thanks Robert. I think I'll try running some benchmarks this week and post the results. I wonder.. is there a way for and EJB-EJB to be _forced_ to go through RMI? i.e. can I turn this optimization off? I don't think there is a documented way to to this. Not to be a jerk but to provide some constructive criticism to Orion ... I don't think there is a documented way to do many, many things. Considering that it is a closed-source product, I think documentation should be one of the most important things to accompany the actual binaries.
EJB Performance Question.
Hi, every one. First i'm sorry for my english. We use servlet that call EJB. Next is code fraction. //--- public Vector findByFirstPage(DirHome home, Integer rowCount) throws Exception{Vector rows= new Vector();Dir dir= null; System.out.println("step 11 time : " + (new java.util.Date())); // call EJBCollection col = home.findByFirstPage(rowCount.intValue());Iterator iter = col.iterator(); System.out.println("step 12 time : " + (new java.util.Date())); while(iter.hasNext()){ dir = (Dir)iter.next(); rows.add(EJBToRow(dir)); //--- bottle neck #} System.out.println("step 13 time : " + (new java.util.Date())); return rows;} //--- Simple code. In while loop, EJBToRow() method take 3 second each call. Next code is EJBToRow(). Very Simple. Only call EJB Meber methods. //--- public Vector EJBToRow(Dir dir) throws Exception {Vector row = new Vector(); System.out.println("step 21 time : " + (new java.util.Date())); row.add(dir.getId());row.add(new Long(dir.getPId()));row.add(dir.getName());row.add(new Long(dir.getSerial()));row.add(new Long(dir.getChildCount()));row.add(new Long(dir.getDepth()));row.add(dir.getPMap());row.add(dir.getType());row.add(dir.getUserId());row.add(dir.getGroupId());row.add(dir.getOwnerPermR());row.add(dir.getOwnerPermW());row.add(dir.getOwnerPermX());row.add(dir.getGroupPermR());row.add(dir.getGroupPermW());row.add(dir.getGroupPermX());row.add(dir.getOtherPermR());row.add(dir.getOtherPermW());row.add(dir.getOtherPermX());row.add(dir.getCreateDate());row.add(dir.getUpdateDate());row.add(dir.getExpireDate());row.add(dir.getRemark()); System.out.println("step 22 time : " + (new java.util.Date())); return row;} //--- What's the key problem? e-mail site : [EMAIL PROTECTED] : www.javanuri.com ÀüÈ mobile : 02-6257-3002 : 019-255-2855 javanurititle2.jpg javanurilogo.gif
RE: EJB Performance Question.
Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a bulk accessor pattern. For example, createa new class called DirView which contains all the attributes of your Dir EJB. Then make a single call to the Dir EJB to get a DirView. This will cause only 1 RMI call and save you a huge amount of time. Do you understand? I can probably pseudo-code an example if necessary. -tim -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Sent: Tuesday, November 14, 2000 3:56 AMTo: Orion-InterestSubject: EJB Performance Question. Hi, every one. First i'm sorry for my english. We use servlet that call EJB. Next is code fraction. //--- public Vector findByFirstPage(DirHome home, Integer rowCount) throws Exception{Vector rows= new Vector();Dir dir= null; System.out.println("step 11 time : " + (new java.util.Date())); // call EJBCollection col = home.findByFirstPage(rowCount.intValue());Iterator iter = col.iterator(); System.out.println("step 12 time : " + (new java.util.Date())); while(iter.hasNext()){ dir = (Dir)iter.next(); rows.add(EJBToRow(dir)); //--- bottle neck #} System.out.println("step 13 time : " + (new java.util.Date())); return rows;} //--- Simple code. In while loop, EJBToRow() method take 3 second each call. Next code is EJBToRow(). Very Simple. Only call EJB Meber methods. //--- public Vector EJBToRow(Dir dir) throws Exception {Vector row = new Vector(); System.out.println("step 21 time : " + (new java.util.Date())); row.add(dir.getId());row.add(new Long(dir.getPId()));row.add(dir.getName());row.add(new Long(dir.getSerial()));row.add(new Long(dir.getChildCount()));row.add(new Long(dir.getDepth()));row.add(dir.getPMap());row.add(dir.getType());row.add(dir.getUserId());row.add(dir.getGroupId());row.add(dir.getOwnerPermR());row.add(dir.getOwnerPermW());row.add(dir.getOwnerPermX());row.add(dir.getGroupPermR());row.add(dir.getGroupPermW());row.add(dir.getGroupPermX());row.add(dir.getOtherPermR());row.add(dir.getOtherPermW());row.add(dir.getOtherPermX());row.add(dir.getCreateDate());row.add(dir.getUpdateDate());row.add(dir.getExpireDate());row.add(dir.getRemark()); System.out.println("step 22 time : " + (new java.util.Date())); return row;} //--- What's the key problem? e-mail site : [EMAIL PROTECTED] : www.javanuri.com ÀüÈ mobile : 02-6257-3002 : 019-255-2855
Re: EJB Performance Question.
Hi ±èöȸ, public Vector EJBToRow(Dir dir) throws Exception { [...] row.add(dir.getId()); row.add(new Long(dir.getPId())); row.add(dir.getName()); row.add(new Long(dir.getSerial())); row.add(new Long(dir.getChildCount())); row.add(new Long(dir.getDepth())); [...] What's the key problem? thats not a problem, thats a feature! (each remote call runs within an transaction...) study all the EJB-docs you can get and redesign your app. bye klaus -- Klaus Thiele - Personal Informatik AG mailto:[EMAIL PROTECTED] "There's got to be more to life than compile-and-go."
RE: EJB Performance Question.
At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... bulk accessor pattern. For example, create a new class called .. although a bulk accessor is generally a good thing to use in such situations. have you tried wrapping one usertransaction around your update operation or maybe even around the entire loop, depending on what you want to see as a transaction. this will improve performance significantly because you don't have all the tx overhead. if you don't know what a usertransaction is, read up on JTA. HTH robert DirView which contains all the attributes of your Dir EJB. Then make a single call to the Dir EJB to get a DirView. This will cause only 1 RMI call and save you a huge amount of time. Do you understand? I can probably pseudo-code an example if necessary. -tim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 14, 2000 3:56 AM To: Orion-Interest Subject: EJB Performance Question. Hi, every one. First i'm sorry for my english. We use servlet that call EJB. Next is code fraction. //--- public Vector findByFirstPage(DirHome home, Integer rowCount) throws Exception{ Vector rows = new Vector(); Dir dir = null; System.out.println("step 11 time : " + (new java.util.Date())); // call EJB Collection col = home.findByFirstPage(rowCount.intValue()); Iterator iter = col.iterator(); System.out.println("step 12 time : " + (new java.util.Date())); while(iter.hasNext()) { dir = (Dir)iter.next(); rows.add(EJBToRow(dir)); //--- bottle neck # } System.out.println("step 13 time : " + (new java.util.Date())); return rows; } //--- Simple code. In while loop, EJBToRow() method take 3 second each call. Next code is EJBToRow(). Very Simple. Only call EJB Meber methods. //--- public Vector EJBToRow(Dir dir) throws Exception { Vector row = new Vector(); System.out.println("step 21 time : " + (new java.util.Date())); row.add(dir.getId()); row.add(new Long(dir.getPId())); row.add(dir.getName()); row.add(new Long(dir.getSerial())); row.add(new Long(dir.getChildCount())); row.add(new Long(dir.getDepth())); row.add(dir.getPMap()); row.add(dir.getType()); row.add(dir.getUserId()); row.add(dir.getGroupId()); row.add(dir.getOwnerPermR()); row.add(dir.getOwnerPermW()); row.add(dir.getOwnerPermX()); row.add(dir.getGroupPermR()); row.add(dir.getGroupPermW()); row.add(dir.getGroupPermX()); row.add(dir.getOtherPermR()); row.add(dir.getOtherPermW()); row.add(dir.getOtherPermX()); row.add(dir.getCreateDate()); row.add(dir.getUpdateDate()); row.add(dir.getExpireDate()); row.add(dir.getRemark()); System.out.println("step 22 time : " + (new java.util.Date())); return row; } //--- What's the key problem? -- e-mail site : mailto:[EMAIL PROTECTED][EMAIL PROTECTED] : www.javanuri.com ÀüÈ mobile : 02-6257-3002 : 019-255-2855 -- (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
RE: EJB Performance Question.
At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... Is there proof that Orion does this? I'm not trying to be a jerk, but I'd like to see some numbers on how long a set/get takes for a client-to-ejb call and an ejb-to-ejb (same vm) call. Not even Weblogic optimizes to pass-by-value for intra-vm ejb calls. You have to use TopLink to get that optimization. Funny though, Weblogic provides a tag in their deployment description but it doesn't do anything. -tim
RE: EJB Performance Question.
At 12:06 14.11.00 , you wrote: At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... Is there proof that Orion does this? I'm not trying to be a jerk, but I'd like to see some numbers on how long a set/get takes for a client-to-ejb call and an ejb-to-ejb (same vm) call. do a getClass().getName() on your ejbobject. will be the same wrapper class that implements the ejbobject (if you look into the generate code that's temporarily there on deployment). anyway, I've never benchmarked but it is orders of magnitude faster than any rmi stack I've seen. I think there's even an old mail in the archive from karl that confirms this otiomization because it was one of the first things I asked (must at least be 10 months ago now). regards, robert Not even Weblogic optimizes to pass-by-value for intra-vm ejb calls. You have to use TopLink to get that optimization. Funny though, Weblogic provides a tag in their deployment description but it doesn't do anything. -tim (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
RE: EJB Performance Question.
If you're referring to the enable-call-by-reference tag, then indeed it does do something (at lease in version 5.1). Setting this tag to true will effectively pass EJB method arguments and returned objects by reference when called within the same JVM, rather than by value in accordance with the EJB 1.1 specification. This obviously increases performance by eliminating the marshalling overhead, at the cost of being non-spec compliant. At any rate, for better or worse, in WebLogic call by reference is enabled by default. In other words, calls between servlets and EJBs in the same JVM are optimized. That said, don't let these optimizations pollute your EJB design. Having a well-defined and minimal remote contract is much more portable, and generally easier to maintain and manage. Moreover, you may at some point in the future decide to separate the web server and EJB container into separate JVMs. In general, EJB interface contracts are specifically important to design correctly, as the invocation of remote methods may in turn provoke life cycle methods, transactions, etc. Mike --- Tim Drury [EMAIL PROTECTED] wrote: At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... Is there proof that Orion does this? I'm not trying to be a jerk, but I'd like to see some numbers on how long a set/get takes for a client-to-ejb call and an ejb-to-ejb (same vm) call. Not even Weblogic optimizes to pass-by-value for intra-vm ejb calls. You have to use TopLink to get that optimization. Funny though, Weblogic provides a tag in their deployment description but it doesn't do anything. -tim __ Do You Yahoo!? Yahoo! Calendar - Get organized for the holidays! http://calendar.yahoo.com/
RE: EJB Performance Question.
Thanks Robert. I think I'll try running some benchmarks this week and post the results. I wonder.. is there a way for and EJB-EJB to be _forced_ to go through RMI? i.e. can I turn this optimization off? -tim -Original Message- From: Robert Krueger [mailto:[EMAIL PROTECTED]] Sent: Tuesday, November 14, 2000 1:36 PM To: Orion-Interest Subject: RE: EJB Performance Question. At 12:06 14.11.00 , you wrote: At 10:03 14.11.00 , you wrote: Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a well, with orion this is intra-vm so its not that bad ... Is there proof that Orion does this? I'm not trying to be a jerk, but I'd like to see some numbers on how long a set/get takes for a client-to-ejb call and an ejb-to-ejb (same vm) call. do a getClass().getName() on your ejbobject. will be the same wrapper class that implements the ejbobject (if you look into the generate code that's temporarily there on deployment). anyway, I've never benchmarked but it is orders of magnitude faster than any rmi stack I've seen. I think there's even an old mail in the archive from karl that confirms this otiomization because it was one of the first things I asked (must at least be 10 months ago now). regards, robert Not even Weblogic optimizes to pass-by-value for intra-vm ejb calls. You have to use TopLink to get that optimization. Funny though, Weblogic provides a tag in their deployment description but it doesn't do anything. -tim (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
Re: EJB Performance Question.
Thank You for your kind reply. Can I get some pseudo-code an example? Thank you. - Original Message - From: Tim Drury To: Orion-Interest Sent: Wednesday, November 15, 2000 12:03 AM Subject: RE: EJB Performance Question. Every single one of those calls to dir.getXXX() has to go across the network via RMI. This is slow. You are better off using a bulk accessor pattern. For example, createa new class called DirView which contains all the attributes of your Dir EJB. Then make a single call to the Dir EJB to get a DirView. This will cause only 1 RMI call and save you a huge amount of time. Do you understand? I can probably pseudo-code an example if necessary. -tim -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Sent: Tuesday, November 14, 2000 3:56 AMTo: Orion-InterestSubject: EJB Performance Question. Hi, every one. First i'm sorry for my english. We use servlet that call EJB. Next is code fraction. //--- public Vector findByFirstPage(DirHome home, Integer rowCount) throws Exception{Vector rows= new Vector();Dir dir= null; System.out.println("step 11 time : " + (new java.util.Date())); // call EJBCollection col = home.findByFirstPage(rowCount.intValue());Iterator iter = col.iterator(); System.out.println("step 12 time : " + (new java.util.Date())); while(iter.hasNext()){ dir = (Dir)iter.next(); rows.add(EJBToRow(dir)); //--- bottle neck #} System.out.println("step 13 time : " + (new java.util.Date())); return rows;} //--- Simple code. In while loop, EJBToRow() method take 3 second each call. Next code is EJBToRow(). Very Simple. Only call EJB Meber methods. //--- public Vector EJBToRow(Dir dir) throws Exception {Vector row = new Vector(); System.out.println("step 21 time : " + (new java.util.Date())); row.add(dir.getId());row.add(new Long(dir.getPId()));row.add(dir.getName());row.add(new Long(dir.getSerial()));row.add(new Long(dir.getChildCount()));row.add(new Long(dir.getDepth()));row.add(dir.getPMap());row.add(dir.getType());row.add(dir.getUserId());row.add(dir.getGroupId());row.add(dir.getOwnerPermR());row.add(dir.getOwnerPermW());row.add(dir.getOwnerPermX());row.add(dir.getGroupPermR());row.add(dir.getGroupPermW());row.add(dir.getGroupPermX());row.add(dir.getOtherPermR());row.add(dir.getOtherPermW());row.add(dir.getOtherPermX());row.add(dir.getCreateDate());row.add(dir.getUpdateDate());row.add(dir.getExpireDate());row.add(dir.getRemark()); System.out.println("step 22 time : " + (new java.util.Date())); return row;} //--- What's the key problem? e-mail site : [EMAIL PROTECTED] : www.javanuri.com ÀüÈ mobile : 02-6257-3002 : 019-255-2855
RE: re Performance test...
No entity beans..not even using EJB on this particular test. It will be a few weeks before I get the clustered test posted. Business needs are consistently coming in and we don't have time to do much else. But as soon as I can I will post those results. -Original Message- From: Mark [mailto:[EMAIL PROTECTED]] Sent: Thursday, October 26, 2000 5:21 PM To: Orion-Interest Subject: re Performance test... Kevin, quick question on your login test. Does your application use EntityBeans to represent your users (and therefore are you calling EntityBean.ejbFind() to load from Oracle?). Or are you using another mechanism to represent users within your application? Many thanks for posting this info, it's extremely helpful! --Mark Hi all, Well, using a pretty nifty (and very expensive) testing tool, I was able to do some "minor" testing on a login process of our site. Using Orion, Oracle 8i database, and e-load test suite, here are some numbers that I got: 25 users - 15 connections in the pool pages per second - 43 pages per day - 3.75 million transactions per second - 14.5 transactions per day - 1.26 million 25 users - 30 connections in the pool pages per second- 26.4 pages per day - 2.28 million transactions per second - 8.81 transactions per day - 761333 25 users - 5 connections in the pool pages per second - 51.95 pages per day - 4.48 million transactions per second - 17.32 transactions per day- 1.49 million The test is simple. It uses the browser built into the e-test suite software and "automates" the login process of our site. I ran the test on a PIII650, with 512MB RAM. The database is running on a SUN E450 serve with 512MB RAM. The test simply sends a post submitted form with the login name and password to a controller servlet that then hits the database using a connection via the pool, and logs in the user. All logins were valid, I did not test invalid login names/passwords. Just thought I would share these numbers. Next week I will be setting up a two-server farm, using the load-balancer software that Orion includes in their download. Each server will be dual PIII550 with 512MB RAM and SCSI III RAID hd setup (Actually, they are IBM NetFinitiy 4000R units). The load balancer will run on a slow PII300 workstation with 128MB RAM (I hope this is good enough). They will be failed over and load-balanced, and I will test the performance on those and post the results here. The only thing I am not sure of is if different testing software performs about the same..or are there dramatically different results. If anyone wants me to attempt to test their site, I'll give it a go from here..but its over a T1 connection, where as my test is done locally on a LAN, so I am sure the results are more skewed.
Performance test...
Hi all, Well, using a pretty nifty (and very expensive) testing tool, I was able to do some "minor" testing on a login process of our site. Using Orion, Oracle 8i database, and e-load test suite, here are some numbers that I got: 25 users - 15 connections in the pool pages per second - 43 pages per day - 3.75 million transactions per second - 14.5 transactions per day - 1.26 million 25 users - 30 connections in the pool pages per second- 26.4 pages per day - 2.28 million transactions per second - 8.81 transactions per day - 761333 25 users - 5 connections in the pool pages per second - 51.95 pages per day - 4.48 million transactions per second - 17.32 transactions per day- 1.49 million The test is simple. It uses the browser built into the e-test suite software and "automates" the login process of our site. I ran the test on a PIII650, with 512MB RAM. The database is running on a SUN E450 serve with 512MB RAM. The test simply sends a post submitted form with the login name and password to a controller servlet that then hits the database using a connection via the pool, and logs in the user. All logins were valid, I did not test invalid login names/passwords. Just thought I would share these numbers. Next week I will be setting up a two-server farm, using the load-balancer software that Orion includes in their download. Each server will be dual PIII550 with 512MB RAM and SCSI III RAID hd setup (Actually, they are IBM NetFinitiy 4000R units). The load balancer will run on a slow PII300 workstation with 128MB RAM (I hope this is good enough). They will be failed over and load-balanced, and I will test the performance on those and post the results here. The only thing I am not sure of is if different testing software performs about the same..or are there dramatically different results. If anyone wants me to attempt to test their site, I'll give it a go from here..but its over a T1 connection, where as my test is done locally on a LAN, so I am sure the results are more skewed.
RE: Performance test...
Not sure of the URL, but its RSW software. It costs us something like $35K for the software, including 7 licenses, so its definitely not cheap. But its a great web-based testing tool. A lot of people are used to Silk or QA Partner, but this one is extremely easy to use and learn. While it does allow for written script testing, it uses a sort of macro record mode to record every move you make in their internal browser. You can then set up a databank (a text file) that is used against a load-test, so that it simulates virtual users. I know we can simulat up to 100 virutal users with our licenses, which is small potatoes compared to some users of this tool. One of thier clients simulats 10,000 users. The software has "clients" that can be run on many computers over a network so you can run it over night, each computer simulating say 100 users, all hitting the same one site. Anyways..this is sort of off topic..but if you have any questions, feel free to email me. -Original Message- From: Santosh Kumar [mailto:[EMAIL PROTECTED]] Sent: Thursday, October 19, 2000 9:19 PM To: Orion-Interest Subject: Re: Performance test... That was a simply great thing to do. Where could i get hold of this tool. Santosh - Original Message - From: Duffey, Kevin [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Friday, October 20, 2000 9:11 AM Subject: Performance test... Hi all, Well, using a pretty nifty (and very expensive) testing tool, I was able to do some "minor" testing on a login process of our site. Using Orion, Oracle 8i database, and e-load test suite, here are some numbers that I got: 25 users - 15 connections in the pool pages per second - 43 pages per day - 3.75 million transactions per second - 14.5 transactions per day - 1.26 million 25 users - 30 connections in the pool pages per second- 26.4 pages per day - 2.28 million transactions per second - 8.81 transactions per day - 761333 25 users - 5 connections in the pool pages per second - 51.95 pages per day - 4.48 million transactions per second - 17.32 transactions per day- 1.49 million The test is simple. It uses the browser built into the e-test suite software and "automates" the login process of our site. I ran the test on a PIII650, with 512MB RAM. The database is running on a SUN E450 serve with 512MB RAM. The test simply sends a post submitted form with the login name and password to a controller servlet that then hits the database using a connection via the pool, and logs in the user. All logins were valid, I did not test invalid login names/passwords. Just thought I would share these numbers. Next week I will be setting up a two-server farm, using the load-balancer software that Orion includes in their download. Each server will be dual PIII550 with 512MB RAM and SCSI III RAID hd setup (Actually, they are IBM NetFinitiy 4000R units). The load balancer will run on a slow PII300 workstation with 128MB RAM (I hope this is good enough). They will be failed over and load-balanced, and I will test the performance on those and post the results here. The only thing I am not sure of is if different testing software performs about the same..or are there dramatically different results. If anyone wants me to attempt to test their site, I'll give it a go from here..but its over a T1 connection, where as my test is done locally on a LAN, so I am sure the results are more skewed.
Re: Performance
Usually a good answer, but take a look at http://www.volano.com/report.html The arguably most stable Linux JVM, Blackdown, is pretty far down the listsigh At 06:31 PM 10/9/00 -0200, you wrote: On Mon, Oct 09, 2000 at 02:00:06PM -0400, Sarathy Mattaparti wrote: Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? I'd sugest you to leave Windows and use any kind of UNIX. []s Guiga
Re: Performance
What we are doing is using JavaBeans to collect data from Entity or Session beans. This seems to work nice in that the java beans are then invoked by the presentation layer and scoped appropriately. This approach has not introduced any performance issues. Just a thought. -Danno - Original Message - From: "Rafael Alvarez" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Tuesday, October 10, 2000 2:07 PM Subject: Re: Performance Hi, This mail is useful only if you're using entity EJBs. Because EJB is RMI on steroids (is more than that, but let's keep it simple), if you need more that one entity to get the data you need for the presentation layer you end up opening a lot of rmi connections, with the overhead it implies. The solution is simple, yet elegant: Create a Session Bean, collect all the data (raw data, not the remotes) from the Entity Beans and use that for the presentation. That way you use only one rmi connection. Hope this help. -- Best regards, Rafaelmailto:[EMAIL PROTECTED]
Re: Performance
On Mon, Oct 09, 2000 at 05:54:13PM -0400, Sarathy Mattaparti wrote: i bought windows 2000 Server (with 10 Clients ) for $1200.. is this the only option for me to change the OS ? It's just my opinion. I don't like Micro$oft products, epecialy because the lack of security. You can't compare UNIX security with Windows security! []s Guilherme Ceschiatti Sarathy On Mon, Oct 09, 2000 at 02:00:06PM -0400, Sarathy Mattaparti wrote: Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? I'd sugest you to leave Windows and use any kind of UNIX. []s Guiga _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
SV: Performance
Add more memory to the vm :) Klaus -Opprinnelig melding- Fra: Sarathy Mattaparti [mailto:[EMAIL PROTECTED]] Sendt: 9. oktober 2000 20:00 Til: Orion-Interest Emne: Performance Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? Thanks Sarathy _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
Re: Performance
Hi, This mail is useful only if you're using entity EJBs. Because EJB is RMI on steroids (is more than that, but let's keep it simple), if you need more that one entity to get the data you need for the presentation layer you end up opening a lot of rmi connections, with the overhead it implies. The solution is simple, yet elegant: Create a Session Bean, collect all the data (raw data, not the remotes) from the Entity Beans and use that for the presentation. That way you use only one rmi connection. Hope this help. -- Best regards, Rafaelmailto:[EMAIL PROTECTED]
Performance
Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? Thanks Sarathy _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
Re: Performance
i'm using JSDK 1.3 i have lot of memory 512 MB so its not the problem with memory. i took care of DB connections. i'm unable to find the problem.. in cocumentation it says 5 times faster than iis i agree with that but my case is different.. I really wanna solve this problem, help me. Thanks Sarathy Critical question: What VM are you using? Also, where are you seeing the bottleneck? Concurrent RMI connections, long lived db connections, memory exhaustion? Sarathy Mattaparti wrote: Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? Thanks Sarathy _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. -- Jason Rimmer [EMAIL PROTECTED] _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
Re: Performance
i bought windows 2000 Server (with 10 Clients ) for $1200.. is this the only option for me to change the OS ? Sarathy On Mon, Oct 09, 2000 at 02:00:06PM -0400, Sarathy Mattaparti wrote: Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? I'd sugest you to leave Windows and use any kind of UNIX. []s Guiga _ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
RE: Performance
First of all, an 800Mhz cpu isn't terribly faster than a single 550. I have gone from 400 to 800 and don't see too much difference, about 12% or so. Second of all, dual cpus don't get utilized to their full potential unless an application is programed to use them properly. 3D rendering software, for example usually makes good use of two cpus for extra horsepower. In the case of Orion, unless the jvm uses both cpus properly, you wont see much of a difference. In what respect are you not seeing performance? Are you doing a 1000 virtual user load test and not seeing much of a difference? -Original Message- From: Sarathy Mattaparti [mailto:[EMAIL PROTECTED]] Sent: Monday, October 09, 2000 11:00 AM To: Orion-Interest Subject: Performance Hi, Previously i used Pentium III 550 MHz and 64 MB RAM and i bought a new computer its Dual Pentium III 800 MHZ and 256 MB RAM. i havent seen the difference. I am using Windows 2000 Server as my OS. I just changed the configuration of access log.. Any suggestions to improve the performance ?? Thanks Sarathy __ ___ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com.
Orion logging..is it a performance hit?
I am curious..I look in the .log file created by each web-app and I see a timestamp for every hit (each jsp page, gif, etc). I am wondering if this is a performance hit..writing this info out on a regular basis (or is it buffered and written when the server shuts down?). Also, is there a way to turn it off if I don't much care for the hits. Finally..is there any way it can be formatted so when opening it with WordPad or something it shows up line by line, instead of without line breaks? Thanks.
Re: Performance for static files
Looks to me like if Orionserver tries to do HTTP/1.1 Keep-Alive without setting the Content-length accordingly. Can anybody confirm? Dale Bronk wrote: Right now until I am proved otherwise, I disagree. I posted a message a day or so ago and have no reply yet. Now I do believe that it is probably some setting I have (although I am using the default settings from Orion), but my web pages are not served very fast at all. I am on a PIII 256M using Windows Server 2000 and tested the same static pages with Apache and IIS and they really popup quickly. With Orion, the pages seem to completely display but the browser keeps going for up to 10-15 seconds before it stops. I am not saying I disagree with the benchmarks, what I am saying is I agree with them with the correct set of configurations as I have used the same static pages on the same machine with Apache, IIS, and Orion. I did not use any benchmarking tools other than my eye but it was very obvious (clearing browser cache between each request) that as soon as the pages "appeared" to be fully display (very small graphics, if any) using Apache and IIS, the browser (both IE and NS) stopped. With Orion, the browsers just kept going (not sure doing what) for another 10-15 seconds. Like I said, I am sure it is some configuration but I wish someone would tell me what the setting is. I also tried browsing from several different machines to make sure that it was not simply my browser. Dale - Original Message - From: [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Thursday, September 07, 2000 3:51 AM Subject: SV: Performance for static files Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof begin:vcard n:Baumgärtner;Christof tel;pager:[EMAIL PROTECTED] tel;cell:+49 171 8169911 tel;fax:+49 89 6797 tel;work:+49 89 6797 2220 x-mozilla-html:TRUE url:www.websentric.com org:WebSentric AG adr:;;Raiffeisenallee 5;Oberhaching;;82041;Germany version:2.1 email;internet:[EMAIL PROTECTED] title:Vice President CTO x-mozilla-cpt:;-4208 fn:Christof Baumgärtner end:vcard
Re: Performance for static files
just did a test and it seemed to make a big difference. In IE advanced options I had Use HTTP1.1 turned off. I turned it back on and it made a big difference. As a matter of fact, I don't see the problem anymore as of yet. (after clearing cache). Dale - Original Message - From: Christof Baumgaertner [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Friday, September 08, 2000 3:00 AM Subject: Re: Performance for static files Looks to me like if Orionserver tries to do HTTP/1.1 Keep-Alive without setting the Content-length accordingly. Can anybody confirm? Dale Bronk wrote: Right now until I am proved otherwise, I disagree. I posted a message a day or so ago and have no reply yet. Now I do believe that it is probably some setting I have (although I am using the default settings from Orion), but my web pages are not served very fast at all. I am on a PIII 256M using Windows Server 2000 and tested the same static pages with Apache and IIS and they really popup quickly. With Orion, the pages seem to completely display but the browser keeps going for up to 10-15 seconds before it stops. I am not saying I disagree with the benchmarks, what I am saying is I agree with them with the correct set of configurations as I have used the same static pages on the same machine with Apache, IIS, and Orion. I did not use any benchmarking tools other than my eye but it was very obvious (clearing browser cache between each request) that as soon as the pages "appeared" to be fully display (very small graphics, if any) using Apache and IIS, the browser (both IE and NS) stopped. With Orion, the browsers just kept going (not sure doing what) for another 10-15 seconds. Like I said, I am sure it is some configuration but I wish someone would tell me what the setting is. I also tried browsing from several different machines to make sure that it was not simply my browser. Dale - Original Message - From: [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Thursday, September 07, 2000 3:51 AM Subject: SV: Performance for static files Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof
Re: Performance for static files
At 08:47 08.09.00 , you wrote: just did a test and it seemed to make a big difference. In IE advanced options I had Use HTTP1.1 turned off. I turned it back on and it made a big difference. As a matter of fact, I don't see the problem anymore as of yet. (after clearing cache). Dale then please post it in bugzilla and have them decide if it's a bug in their http1.1 implementation. I think there's enough information in this thread for them. Robert (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
Re: Performance for static files
Dale Bronk wrote: That may be true as I was including the time to server the file all the way to the point of the "little e" stopped spinning. Have you had the following problems with framesets... In Apache/IIS with JRun 2.3.3 the frameset and each individual jsp/html files popup quickly. In Orion, one frame will be visible and then do the wait for 10-15 seconds, then the next frame and wait, then the next. It doesn't seem to matter if I use only static html or jsp... The "problem" exists on both. Dale I noticed in changes.txt there is a new option to turn off keep-alives. You might try your test again with keep-alives turned off in Orion. I'd be interested to know the results. -- Joel Shellman Chief Software Architect The virally-driven B2B marketplace for outsourcing projects http://www.ants.com/90589781
Performance for static files
We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof
SV: Performance for static files
Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof Benchmark.url
Re: SV: Performance for static files
This benchmarks do not show the numbers for static files which are read directly from the file system. I would like to see a comparison between a standard webserver (without any dynamic server technology like ASP, JSP, Servlets) serving static files and Orion. Are there any realworld numbers around? [EMAIL PROTECTED] wrote: Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof Benchmark.urlName: Benchmark.url Type: Internet Shortcut (application/x-unknown-content-type-InternetShortcut) begin:vcard n:Baumgärtner;Christof tel;pager:[EMAIL PROTECTED] tel;cell:+49 171 8169911 tel;fax:+49 89 6797 tel;work:+49 89 6797 2220 x-mozilla-html:TRUE url:www.websentric.com org:WebSentric AG adr:;;Raiffeisenallee 5;Oberhaching;;82041;Germany version:2.1 email;internet:[EMAIL PROTECTED] title:Vice President CTO x-mozilla-cpt:;-4208 fn:Christof Baumgärtner end:vcard
SV: SV: Performance for static files
Look at the bottom of the page, thee is a link called old benchmark :) It compares Apache, IIS and Orion... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 11:46 Til: Orion-Interest Emne: Re: SV: Performance for static files This benchmarks do not show the numbers for static files which are read directly from the file system. I would like to see a comparison between a standard webserver (without any dynamic server technology like ASP, JSP, Servlets) serving static files and Orion. Are there any realworld numbers around? [EMAIL PROTECTED] wrote: Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof Benchmark.urlName: Benchmark.url Type: Internet Shortcut (application/x-unknown-content-type-InternetShortcut)
RE: Performance for static files
Perhaps a lil' off track, I'd like to point out that: you may configure Apache/IIS, or Orion, to work with each other. If you feel more comfortable with Apache serving static HTML, GIF JPEG files, you can have it working; also it could be useful to serve script based pages, say PHP, running in-process with Apache (instead of running as CGI with Orion). My 2c, JP -Original Message- From: Dale Bronk [mailto:[EMAIL PROTECTED]] Sent: Thursday, September 07, 2000 9:15 AM To: Orion-Interest Subject: Re: Performance for static files Right now until I am proved otherwise, I disagree. I posted a message a day or so ago and have no reply yet. Now I do believe that it is probably some setting I have (although I am using the default settings from Orion), but my web pages are not served very fast at all. I am on a PIII 256M using Windows Server 2000 and tested the same static pages with Apache and IIS and they really popup quickly. With Orion, the pages seem to completely display but the browser keeps going for up to 10-15 seconds before it stops. I am not saying I disagree with the benchmarks, what I am saying is I agree with them with the correct set of configurations as I have used the same static pages on the same machine with Apache, IIS, and Orion. I did not use any benchmarking tools other than my eye but it was very obvious (clearing browser cache between each request) that as soon as the pages "appeared" to be fully display (very small graphics, if any) using Apache and IIS, the browser (both IE and NS) stopped. With Orion, the browsers just kept going (not sure doing what) for another 10-15 seconds. Like I said, I am sure it is some configuration but I wish someone would tell me what the setting is. I also tried browsing from several different machines to make sure that it was not simply my browser. Dale - Original Message - From: [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Thursday, September 07, 2000 3:51 AM Subject: SV: Performance for static files Look at the benchmark page... Against Apache and IIS its got no problems at all beating them into the bushes. The url is enclosed, have fun... Klaus Myrseth -Opprinnelig melding- Fra: Christof Baumgaertner [mailto:[EMAIL PROTECTED]] Sendt: 7. september 2000 08:40 Til: Orion-Interest Emne: Performance for static files We have a webbased client/server application which in addition to its dynamic elements has to serve a huge amount of small files (HTML, GIF, JS). I understand that Orionserver's performance for J2EE based applications is pretty good. How about serving static files from the file system? Can it compete with high performance servers like AOL Server, Stronghold Apache or others in this area? Thanks, Christof