Where to find decent free or cheap Java hosting?


D

Daniel Pitts

I've been working on my AT-Robots program
<https://sourceforge.net/projects/at-robots2-j/>, and I'm getting ready
to create a "Tournament Server" for it. Basically, what that means is a
webapp where someone can upload their robot definitions to compete
against the others that have already been uploaded. I think this is a
necessary next step in order to start building a community around my
project, but I don't really have excess capital to spend on an otherwise
free project.

I do have my own personal "server", but it lives in my house and isn't
very "stable". I've also looked into nosupportlinuxhosting.com, and
while I can get Java to start up with a *lot* of finagling, it doesn't
seem likely to be useful to me as a host for this kind of work.

Just thinking out loud here, maybe the free (for a year) Micro Instance
in EC2 is the way to go, but I don't know if that's "big" enough for a
Java web-app. Anyone have experience with that?

Any ideas or suggestions are appreciated. I'm looking to spend < $5/mo
if possible. At this point traffic will be fairly minimal, and free is
best, but it has to work well enough when it is used. I'm not concerned
about scalability at first, since when I do need to scale, I'll probably
be able to monetize at least a little and use that to pay for a real host.

Thanks everyone,
Daniel.
 
Ad

Advertisements

K

Knute Johnson

I've been working on my AT-Robots program
<https://sourceforge.net/projects/at-robots2-j/>, and I'm getting ready
to create a "Tournament Server" for it. Basically, what that means is a
webapp where someone can upload their robot definitions to compete
against the others that have already been uploaded. I think this is a
necessary next step in order to start building a community around my
project, but I don't really have excess capital to spend on an otherwise
free project.

I do have my own personal "server", but it lives in my house and isn't
very "stable". I've also looked into nosupportlinuxhosting.com, and
while I can get Java to start up with a *lot* of finagling, it doesn't
seem likely to be useful to me as a host for this kind of work.

Just thinking out loud here, maybe the free (for a year) Micro Instance
in EC2 is the way to go, but I don't know if that's "big" enough for a
Java web-app. Anyone have experience with that?

Any ideas or suggestions are appreciated. I'm looking to spend < $5/mo
if possible. At this point traffic will be fairly minimal, and free is
best, but it has to work well enough when it is used. I'm not concerned
about scalability at first, since when I do need to scale, I'll probably
be able to monetize at least a little and use that to pay for a real host.

Thanks everyone,
Daniel.

What exactly to you mean by Java hosting?
 
P

Paul Cager

I've been working on my AT-Robots program
<https://sourceforge.net/projects/at-robots2-j/>, and I'm getting ready
to create a "Tournament Server" for it.  Basically, what that means is a
webapp where someone can upload their robot definitions to compete
against the others that have already been uploaded.  I think this is a
necessary next step in order to start building a community around my
project, but I don't really have excess capital to spend on an otherwise
free project.

I do have my own personal "server", but it lives in my house and isn't
very "stable".  I've also looked into nosupportlinuxhosting.com, and
while I can get Java to start up with a *lot* of finagling, it doesn't
seem likely to be useful to me as a host for this kind of work.

Just thinking out loud here, maybe the free (for a year) Micro Instance
in EC2 is the way to go, but I don't know if that's "big" enough for a
Java web-app. Anyone have experience with that?

Any ideas or suggestions are appreciated. I'm looking to spend < $5/mo
if possible.  At this point traffic will be fairly minimal, and free is
best, but it has to work well enough when it is used.  I'm not concerned
about scalability at first, since when I do need to scale, I'll probably
be able to monetize at least a little and use that to pay for a real host..

If you are happy grubbing about with Linux you could try looking at
www.lowendbox.com for cheap virtual servers (some less than $5 /
month). Java doesn't play well with OpenVZ so I'd avoid that, but Xen,
KVM etc should all be OK.
 
D

Daniel Pitts

What exactly to you mean by Java hosting?

Well, the two features I really need are the ability to run Java apps
(webapps or otherwise), and to have shell access (so I can manage the
app's data directories).
 
K

Knute Johnson

Well, the two features I really need are the ability to run Java apps
(webapps or otherwise), and to have shell access (so I can manage the
app's data directories).

You want to run a Java app in the server? I'm not sure what you mean by
webapp.
 
D

Daniel Pitts

You want to run a Java app in the server? I'm not sure what you mean by
webapp.

Yes, a Java web-app, such as in a Resin or Tomcat application container,
for instance. Also, it would be a bonus to be able to run a stand-alone
Java process.

The reason I say Java specifically is a lot of "cheap" hosting expect
you to run short-lived PHP pages with minimal memory footprint, not
long-running Java applications.
 
Ad

Advertisements

J

Jan Burse

Daniel said:
Yes, a Java web-app, such as in a Resin or Tomcat application container,
for instance. Also, it would be a bonus to be able to run a stand-alone
Java process.

The reason I say Java specifically is a lot of "cheap" hosting expect
you to run short-lived PHP pages with minimal memory footprint, not
long-running Java applications.

Hi,

For what geographical region, where do you want your
ISP to be located? You could use some yellow pages of
the region and then check those out that have servlets.

My experience so far is, that you typically don't
get shell access, only secure remote copying. Which is
enough for web applications.

If you don't have shell access, then it becomes more
difficult to spawn Java processes. But maybe you would
be satisfied spawning threads inside a web container
process.

The later is actually possible, there is nothing in the
servlet spec that prevents you from creating additional
threads. But you would need to code your own job control
so that your threads get found from servlet to servlet
invocation.

Best Regards
 
J

Jan Burse

Jan said:
But maybe you would be satisfied spawning threads
inside a web container process.

I guess the exec inside a web container might
also be blocked.
 
A

Arne Vajhøj

You want to run a Java app in the server? I'm not sure what you mean by
webapp.

A Java web app usually mean a war running in a servlet container.

"Java web app" seems as common a term as "PHP web app" or
"ASP.NET web app" to me.

Arne
 
A

Arne Vajhøj

I've been working on my AT-Robots program
<https://sourceforge.net/projects/at-robots2-j/>, and I'm getting ready
to create a "Tournament Server" for it. Basically, what that means is a
webapp where someone can upload their robot definitions to compete
against the others that have already been uploaded. I think this is a
necessary next step in order to start building a community around my
project, but I don't really have excess capital to spend on an otherwise
free project.

I do have my own personal "server", but it lives in my house and isn't
very "stable". I've also looked into nosupportlinuxhosting.com, and
while I can get Java to start up with a *lot* of finagling, it doesn't
seem likely to be useful to me as a host for this kind of work.

Just thinking out loud here, maybe the free (for a year) Micro Instance
in EC2 is the way to go, but I don't know if that's "big" enough for a
Java web-app. Anyone have experience with that?

Any ideas or suggestions are appreciated. I'm looking to spend < $5/mo
if possible. At this point traffic will be fairly minimal, and free is
best, but it has to work well enough when it is used. I'm not concerned
about scalability at first, since when I do need to scale, I'll probably
be able to monetize at least a little and use that to pay for a real host.

Google app engine for Java maybe!?

Arne
 
K

Knute Johnson

A Java web app usually mean a war running in a servlet container.

And a servlet would require Tomcat or something like it on the
webserver? Do you need JavaEE to create servlets or on the server?
"Java web app" seems as common a term as "PHP web app" or
"ASP.NET web app" to me.

I've run Java programs on my computer before that acted as a server.
Managing them was a little difficult without creating a control
mechanism but they worked fine.
 
Ad

Advertisements

A

Arne Vajhøj

And a servlet would require Tomcat or something like it on the
webserver? Do you need JavaEE to create servlets or on the server?

Well known standalone servlet containers are Tomcat and Resin.

Any full Java EE app server contains a servlet container.

Servlet/JSP/JSF are a subset of Java EE.
I've run Java programs on my computer before that acted as a server.
Managing them was a little difficult without creating a control
mechanism but they worked fine.

It is certainly possible to run Java SE servers.

Usually that means a a socket server with a custom
protocol not HTTP.

Arne
 
L

Lew

Tomcat (or something like it) is the web server.

Yes, you need a Java EE-conformant server to run servlets. To create them you
only need the right JARs.
Well known standalone servlet containers are Tomcat and Resin.

Any full Java EE app server contains a servlet container.

Servlet/JSP/JSF are a subset of Java EE.

But those aren't "web apps".
It is certainly possible to run Java SE servers.

Usually that means a a socket server with a custom
protocol not HTTP.

And such an application is not normally called a "web app". The term "web
app[lication]", as Arne says, is the conventional nomenclature for an
application running in a web-based application server such as Tomcat or Glassfish.

If you aren't familiar with Java EE, here are some good references to get you
started:

<http://www.oracle.com/technetwork/java/javaee/documentation/index.html>
<http://tomcat.apache.org/tomcat-7.0-doc/index.html>
<https://www.ibm.com/search/csass/se...&en=utf&hpp=20&dws=dw&q=Java+EE&Search=Search>
<http://glassfish.java.net/docs/index.html>
 
K

Knute Johnson

Tomcat (or something like it) is the web server.

Yes, you need a Java EE-conformant server to run servlets. To create
them you only need the right JARs.
Well known standalone servlet containers are Tomcat and Resin.

Any full Java EE app server contains a servlet container.

Servlet/JSP/JSF are a subset of Java EE.

But those aren't "web apps".
It is certainly possible to run Java SE servers.

Usually that means a a socket server with a custom
protocol not HTTP.

And such an application is not normally called a "web app". The term
"web app[lication]", as Arne says, is the conventional nomenclature for
an application running in a web-based application server such as Tomcat
or Glassfish.

If you aren't familiar with Java EE, here are some good references to
get you started:

<http://www.oracle.com/technetwork/java/javaee/documentation/index.html>
<http://tomcat.apache.org/tomcat-7.0-doc/index.html>
<https://www.ibm.com/search/csass/se...&en=utf&hpp=20&dws=dw&q=Java+EE&Search=Search>

<http://glassfish.java.net/docs/index.html>

Thanks Lew and Arne for the info. This isn't my area of knowledge but I
was curious what Daniel was looking for.
 
L

Lew

Knute said:
Lew wrote: .... [snip] ...

Thanks Lew and Arne for the info. This isn't my area of knowledge but I
was curious what Daniel was looking for.

Extra note:

Tomcat is significantly more lightweight [*] than full-fledged app servers like Glassfish, Geronimo or JBoss. It supports servlets and related technology (JSP, JSF, Facelets) out of the box, given the right JARs in the classpath. JPA (Java Persistence API) works with Tomcat, as indeed it does with standalone apps, for all that it's a Java EE specification. (EclipseLink, Apache OpenJPA and Hibernate are the Big Three for JPA.) For that matter, youcan get EJBs in Tomcat by adding Apache OpenEJB.

At some point you might want the full Monty: all the acronyms from CDI to WS. That's when you reach for the heavyweight [*] servers. It doesn't hurt that the full-spec servers like the three mentioned all have dashboards to control everything from server configuration to logging to class loaders to database connections to ...

I've found in practice that Tomcat plus JPA and JSF/Facelets does pretty much everything you need, unless you want to put httpd in front of Tomcat, which is really a good idea. There are use cases for the big guns, but I'm hard pressed to come up with a compelling one.
 
A

Arne Vajhøj

Tomcat (or something like it) is the web server.

Yes, you need a Java EE-conformant server to run servlets. To create
them you only need the right JARs.

One does not need a full Java EE (pre 6) aka full profile Java EE (6+).
Well known standalone servlet containers are Tomcat and Resin.

Any full Java EE app server contains a servlet container.

Servlet/JSP/JSF are a subset of Java EE.

But those aren't "web apps".
It is certainly possible to run Java SE servers.

Usually that means a a socket server with a custom
protocol not HTTP.

And such an application is not normally called a "web app". The term
"web app[lication]", as Arne says, is the conventional nomenclature for
an application running in a web-based application server such as Tomcat
or Glassfish.

It is the conventional term for apps that is accessed via HTTP.

For Java that means Tomcat etc..

Arne
 
Ad

Advertisements

A

Arne Vajhøj

Knute said:
Lew wrote: ... [snip] ...

Thanks Lew and Arne for the info. This isn't my area of knowledge but I
was curious what Daniel was looking for.

Extra note:

Tomcat is significantly more lightweight [*] than full-fledged app servers like Glassfish, Geronimo or JBoss. It supports servlets and related technology (JSP, JSF, Facelets) out of the box, given the right JARs in the classpath. JPA (Java Persistence API) works with Tomcat, as indeed it does with standalone apps, for all that it's a Java EE specification. (EclipseLink, Apache OpenJPA and Hibernate are the Big Three for JPA.) For that matter, you can get EJBs in Tomcat by adding Apache OpenEJB.

At some point you might want the full Monty: all the acronyms from CDI to WS. That's when you reach for the heavyweight [*] servers. It doesn't hurt that the full-spec servers like the three mentioned all have dashboards to control everything from server configuration to logging to class loaders to database connections to ...

I've found in practice that Tomcat plus JPA and JSF/Facelets does pretty much everything you need, unless you want to put httpd in front of Tomcat, which is really a good idea. There are use cases for the big guns, but I'm hard pressed to come up with a compelling one.

SLSB's are OK. You can do without, but why do something similar a
non standard way when something standard exist.

MDB'a are very useful if one need asynch stuff.

And JCA is very useful if you need something besides
HTTP in and database out traffic.

Arne
 
M

markspace

And such an application is not normally called a "web app". The term
"web app[lication]", as Arne says, is the conventional nomenclature for
It is the conventional term for apps that is accessed via HTTP.

For Java that means Tomcat etc..


Well, I don't like picking nits, but "app" has become such a generic
term (Apple iPad apps, Android app) and many of those apps are
associated with the web, that I'm concerned that "web app" might already
be a generic term. I did a double take on the original post and decided
it really wasn't quite clear.

"JEE web app" would have been clear, imo. "JSP/Servlet web app" would
have been better, since Daniel seems to only need that part, and we all
would have got what that meant.

Just 2 somewhat pedantic nickels.
 
A

Arne Vajhøj

And such an application is not normally called a "web app". The term
"web app[lication]", as Arne says, is the conventional nomenclature for
It is the conventional term for apps that is accessed via HTTP.

For Java that means Tomcat etc..

Well, I don't like picking nits, but "app" has become such a generic
term (Apple iPad apps, Android app) and many of those apps are
associated with the web, that I'm concerned that "web app" might already
be a generic term.

The terms app and web app are part of a term hierarchy:

app = web apps + smartphone apps + ...

web apps = Java web apps + ASP.NET web apps + PHP web apps + ...

smartphone apps = iOS apps + Android apps + WP apps

etc.

But web app means a HTTP server so smartphone apps does
not fit.

Sure there are some people outside IT that think:
app === smartphone app

But that is the same segment that call the PC system
unit for the hard drive.

Arne
 
Ad

Advertisements

C

Chris Stefanich

I've been working on my AT-Robots program
<https://sourceforge.net/projects/at-robots2-j/>, and I'm getting ready
to create a "Tournament Server" for it. Basically, what that means is a
webapp where someone can upload their robot definitions to compete
against the others that have already been uploaded. I think this is a
necessary next step in order to start building a community around my
project, but I don't really have excess capital to spend on an otherwise
free project.

I do have my own personal "server", but it lives in my house and isn't
very "stable". I've also looked into nosupportlinuxhosting.com, and
while I can get Java to start up with a *lot* of finagling, it doesn't
seem likely to be useful to me as a host for this kind of work.

Just thinking out loud here, maybe the free (for a year) Micro Instance
in EC2 is the way to go, but I don't know if that's "big" enough for a
Java web-app. Anyone have experience with that?

Any ideas or suggestions are appreciated. I'm looking to spend < $5/mo
if possible. At this point traffic will be fairly minimal, and free is
best, but it has to work well enough when it is used. I'm not concerned
about scalability at first, since when I do need to scale, I'll probably
be able to monetize at least a little and use that to pay for a real host.

Thanks everyone,
Daniel.

Have you looked into Heroku?
 
Ad

Advertisements


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top