• Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
  • Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!

Reply to: Ruby on Rails

Collapse

You are not logged in or you do not have permission to access this page. This could be due to one of several reasons:

  • You are not logged in. If you are already registered, fill in the form below to log in, or follow the "Sign Up" link to register a new account.
  • You may not have sufficient privileges to access this page. Are you trying to edit someone else's post, access administrative features or some other privileged system?
  • If you are trying to post, the administrator may have disabled your account, or it may be awaiting activation.

Previously on "Ruby on Rails"

Collapse

  • jkoder
    replied
    Originally posted by minestrone View Post
    I think I am getting to the stage in my career where I care so little about the average Client Co's system I would use a speed up loop.
    Nice article. In Java though that would more than likely get inlined.

    Leave a comment:


  • minestrone
    replied
    I think I am getting to the stage in my career where I care so little about the average Client Co's system I would use a speed up loop.

    Leave a comment:


  • Peoplesoft bloke
    replied
    Originally posted by minestrone View Post
    A common mistake is to not charge for 4 weeks performance tuning work while only adding -server to the JVM.
    An old boss once offered the sage advice that no app should be delivered with maximum possible performance. His logic was that no matter how fast it was, there would always be pressure to speed it up, and if you had already done everything you knew, you'd have nowhere to go - a bit like having volume that goes up to 11.

    Leave a comment:


  • lightng
    replied
    Originally posted by MPwannadecentincome View Post
    So does this mean now that you earn less as you don't have to wait as long for the job to finish so you can get more work done in a day?
    Or does it mean you earn the same but get more posts in on CUK

    Leave a comment:


  • MPwannadecentincome
    replied
    Originally posted by minestrone View Post
    Because I am a boring geek I decided to do some performance testing of my Plan B server with and without -server.

    Running a tomcat server (6.0.18) under JDK 1.7 a batch job kicks off when the server starts, the time to complete job is...

    -client (default) - 12 minutes
    -server - 5 minutes 20 seconds

    so it doubles performance on my setup.

    I hope that information enriches your life as much as it did mine
    So does this mean now that you earn less as you don't have to wait as long for the job to finish so you can get more work done in a day?

    Leave a comment:


  • minestrone
    replied
    Because I am a boring geek I decided to do some performance testing of my Plan B server with and without -server.

    Running a tomcat server (6.0.18) under JDK 1.7 a batch job kicks off when the server starts, the time to complete job is...

    -client (default) - 12 minutes
    -server - 5 minutes 20 seconds

    so it doubles performance on my setup.

    I hope that information enriches your life as much as it did mine

    Leave a comment:


  • MPwannadecentincome
    replied
    Originally posted by jkoder View Post
    Good note about the -server flag. You can also change this in the JVM config file. I'd bet you're right that there is a lot of people not using this.
    In fact the first question I ask when people tell me they have a java performance problem is "have you enabled -server"? I have seen some systems run like a real dog until it was set properly.

    Leave a comment:


  • krytonsheep
    replied
    I've spent a long time with Ruby on Rails. It's pretty damn good but can take a while to get to grips with. Ruby itself is a lot more complex than C++ which can you a headache when you're trying to unravel some of the 'magic' in Rails and 3rd party gems.

    Overall I would say it's perfect for database driven intranet apps (I believe the Beep use it a lot internally).

    For large sites it's also fine providing the developers are well clued up on the various caching schemes.

    Leave a comment:


  • jkoder
    replied
    Originally posted by MPwannadecentincome View Post
    Well that depends, as someone else said, you can write slow ram eating code in any language.

    a common mistake is to forget to run the live system with '-server' on the JVM!

    I know lots of enterprise systems running in java - these are scaleable systems processing thousands of transactions a minute.

    One thing that is bad though is building web forms - this is a slow development task even with struts or whatever the latest fad is, in this respect PHP is much more productive and this needs to be balanced against the speed of the resulting system, it may be cheaper to buy more servers to run a slow front end than to spend extra on contractors to write it to run faster!

    I led a team of java developers about 5 years ago who had to write really fast java code, it was not a real problem you just had to be really careful how do it - I'm not a techie so I can't tell you how.
    The best way to write fast code in Java is to keep your code simple, the JVM can optimise simple code that it understands.

    Java is used in real-time trading systems on Wall Street. It really is that quick, unless you listen to people (on here) who still judge in on 1995 benchmarks.

    Good note about the -server flag. You can also change this in the JVM config file. I'd bet you're right that there is a lot of people not using this.

    Leave a comment:


  • minestrone
    replied
    Originally posted by MPwannadecentincome View Post
    Well that depends, as someone else said, you can write slow ram eating code in any language.

    a common mistake is to forget to run the live system with '-server' on the JVM!

    I know lots of enterprise systems running in java - these are scaleable systems processing thousands of transactions a minute.

    One thing that is bad though is building web forms - this is a slow development task even with struts or whatever the latest fad is, in this respect PHP is much more productive and this needs to be balanced against the speed of the resulting system, it may be cheaper to buy more servers to run a slow front end than to spend extra on contractors to write it to run faster!

    I led a team of java developers about 5 years ago who had to write really fast java code, it was not a real problem you just had to be really careful how do it - I'm not a techie so I can't tell you how.
    A common mistake is to not charge for 4 weeks performance tuning work while only adding -server to the JVM.

    Leave a comment:


  • MPwannadecentincome
    replied
    Originally posted by bogeyman View Post
    Java was always 'the future' but never quite got there. It's still 'as slow as molasses in winter' even today.
    Well that depends, as someone else said, you can write slow ram eating code in any language.

    a common mistake is to forget to run the live system with '-server' on the JVM!

    I know lots of enterprise systems running in java - these are scaleable systems processing thousands of transactions a minute.

    One thing that is bad though is building web forms - this is a slow development task even with struts or whatever the latest fad is, in this respect PHP is much more productive and this needs to be balanced against the speed of the resulting system, it may be cheaper to buy more servers to run a slow front end than to spend extra on contractors to write it to run faster!

    I led a team of java developers about 5 years ago who had to write really fast java code, it was not a real problem you just had to be really careful how do it - I'm not a techie so I can't tell you how.
    Last edited by MPwannadecentincome; 26 January 2009, 13:20.

    Leave a comment:


  • lightng
    replied
    Originally posted by jkoder View Post
    It was actually me who posted that!
    Oh OK. Haha.

    Leave a comment:


  • jkoder
    replied
    Originally posted by lightng View Post
    All I can think of is that joke on another thread.

    - Knock knock!

    - Who's there?

    - <long pause> Java
    It was actually me who posted that!

    Leave a comment:


  • voodooflux
    replied
    Originally posted by minestrone View Post
    I have done a bit of PHP development but could not actually say much about what's under the hood. When you change a PHP page does it actually get compiled into memory and translated into something more than the actual text in the script?

    Looking at those benchmarks again it seems that ruby is the only one slower and also has more memory usage than java which is something I have noticed using it.
    My (limited) understanding is that at a basic level PHP code is compiled at runtime when each page is requested, but various accelerators are available that offer the ability to cache the code in a compiled state.

    Leave a comment:


  • minestrone
    replied
    I have done a bit of PHP development but could not actually say much about what's under the hood. When you change a PHP page does it actually get compiled into memory and translated into something more than the actual text in the script?

    Looking at those benchmarks again it seems that ruby is the only one slower and also has more memory usage than java which is something I have noticed using it.

    Leave a comment:

Working...
X