Ask HN: Any Famous Webapp Made with Java and Google App Engine? - gcatalfamo
======
niftich
Snapchat [1][2].

Streak [3][4][5].

Various apps from Floreysoft [6].

Google Cloud Platform has a customer showcase at
[https://cloud.google.com/customers/](https://cloud.google.com/customers/) [7]
and issuing a site-limited search with the terms 'java' and 'app engine' finds
good results.

[1] [https://gigaom.com/2013/05/07/snapchats-act-of-faith-in-
buil...](https://gigaom.com/2013/05/07/snapchats-act-of-faith-in-building-on-
google-compute-engine/) [2]
[https://www.theregister.co.uk/2014/02/19/magnusson_snapchat/](https://www.theregister.co.uk/2014/02/19/magnusson_snapchat/)
[3] [http://googleappengine.blogspot.com/2012/10/streak-brings-
cr...](http://googleappengine.blogspot.com/2012/10/streak-brings-crm-to-inbox-
with-google.html) [4]
[https://cloud.google.com/customers/streak/](https://cloud.google.com/customers/streak/)
[5] [https://www.streak.com/](https://www.streak.com/) [6]
[https://cloud.google.com/customers/floreysoft/](https://cloud.google.com/customers/floreysoft/)
[7] [https://cloud.google.com/customers/](https://cloud.google.com/customers/)

~~~
alooPotato
Not sure if we, Streak, are famous but yes we are on Java app engine. Happy to
answer any questions....

~~~
niftich
Were you able to use popular off-the-shelf libraries in your codebase without
any trouble, or did App Engine's different JVM give you issues?

How much App Engine-specific code is in your product? Would it be a very large
undertaking to migrate off of App Engine?

Besides autoscaling, what is the feature of App Engine that you've found most
useful?

~~~
alooPotato
We've used almost all libraries with no issues. The only problematic ones are
those that try to implement networking code on their own. Appengine has some
limitations on the type of networking calls you can do but most libraries
support delegating that work. The new Java 8 runtime has A LOT of these
restrictions removed.

There is very little appengine specific code in our app with the exception of
our data layer. Because we use AppEngine datastore (the only option at the
time), we are pretty tied to it. I feel like migrating cloud platforms is
always a large undertaking and appengine would be no different. If we were
starting today, we'd probably consider using Cloud SQL or Spanner, but the
good thing now is that you have a choice.

Aside from the autoscaling, the idea of never thinking about machines is
really nice. We never think about OS's, patches, networking, etc.

The other nice benefit is the deployment story. You can organize your
application into services, deploy them individually, traffic split between
version, rollback quickly, setup staging, etc. Its very well implemented and
the fact that we never think about it is really nice.

------
crispytx
I believe Google's search engine was originally written in Java if you're
looking for an inspiring Java webapp. App engine obviously didn't exist yet
though.

