Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Can you run an app server on top of Java RTS?

 
Burk Hufnagel
Ranch Hand
Posts: 814
3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This is a newbie question, no doubt , but since I first heard about Java RTS a couple of years ago I've wondered about running an app server using it.
Is Java RTS a subset of the full JVM? If not then why wouldn't you run JBoss, or some other app server on top of it? I know it's fast enough to use for controlling aircraft, so why not a business app?

Thanks,
Burk
 
Vijitha Kumara
Bartender
Posts: 3913
9
Chrome Fedora Hibernate
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Burk Hufnagel wrote:Is Java RTS a subset of the full JVM?


Java RTS implements not only the RTSJ but also the specification for Java Platform, Standard Edition (Java SE). So any program runs on Java SE will also run on the Java RTS, although without real-time behavior.
 
Burk Hufnagel
Ranch Hand
Posts: 814
3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Vijitha Kumara wrote:Java RTS implements not only the RTSJ but also the specification for Java Platform, Standard Edition (Java SE). So any program runs on Java SE will also run on the Java RTS, although without real-time behavior.

So, in order to get real-time behavior, you have to write your app to do or not do specific things? I thought the RTS JVM handled that.
 
Paul Sturrock
Bartender
Posts: 10336
Eclipse IDE Hibernate Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Application servers were not written with Real Time programming in mind - its not really their domain.
 
Burk Hufnagel
Ranch Hand
Posts: 814
3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Paul Sturrock wrote:Application servers were not written with Real Time programming in mind - its not really their domain.

Paul,
What's the downside? Seems to me that knowing when garbage collection was going to occur, or having some control over it, would be a useful thing. No trying to be difficult, just trying to understand.
 
Eric Bruno
author
Ranch Hand
Posts: 60
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There are two things to remember:

1 - Although Java RTS will run any existing Java application unmodified, you must make at least some minor modifications to attain real-time behavior. Therefore, running an existing application server on top of Java RTS will yield little to no benefit.

2 - It's complicated to explain, but you will lose throughput when running on Java RTS compared to Java SE. Most applications written to work with an application server are web applications, and hence have high-throughput requirements instead of real-time requirements, so it generally doesn't apply. However, there may be exceptions so it's a valid question, just not a common one.
 
Burk Hufnagel
Ranch Hand
Posts: 814
3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Eric,
Thanks for the information. I think I'm getting it. It makes sense that you must add something to take advantage of the real-time benefits of Java RTS, I just hadn't considered that aspect before.

Burk
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic