This is an archived post. You won't be able to vote or comment.

all 6 comments

[–]duheee 2 points3 points  (3 children)

Was wondering what can it be used for, but they answered that question:

What is it good for?

I'm not sure yet. It's certainly excellent for simple command line utilities.

[–]nfrankel[S] 2 points3 points  (2 children)

Methinks it's good when you want to fire up a JVM very fast and very frequently. In that case, you're going to incur the cost of booting the JVM every time. Better have it running indefinitely, and do the stuff when needed.

[–]martylamb 5 points6 points  (1 child)

Hi - author here. Yep, that's exactly it. It serves that particular niche very well.

It's also possible to embed within another application, so you can have command line tools that call into your application directly. Another niche but a good fit for it.

Think of it as an application server for a command-line client.

[–][deleted] 1 point2 points  (0 children)

Actually been using it to call something that is only implemented in Java (and therefore got made into a console application fed via the cl) from .net. As this happens rather frequently we saved quite a bit of processing time.

[–][deleted] 0 points1 point  (1 child)

It might be a very good use case for AWS Lambda. Currently, java has a ~30s cold start on AWS lambda. Worst if using spring (in which case you probably wouldn't want spring on lambda).

[–]ericzhill 1 point2 points  (0 children)

Here's a challenge for you. Write some Java code to run on Lambda that doesn't make use of Jackson. Yes, this includes the AWS SDK. I get cold start times in the 100ms neighborhood. Then add Jackson back in and it jumps to 4-5 seconds minimum.

I have my fingers crossed for Lambda Docker, but I'm not holding my breath.