Nice article - Many of the suggestions (single-jar deployment, metrics, slf4j logging, etc) are all wrapped up for you in Dropwizard http://dropwizard.io , which we use and love.
Sharing a lot of the Dropwizard philosophy, there is Spring Boot ( http://projects.spring.io/spring-boot/ ), which we use and love as well.
An Opinionated Guide to Modern Java, Part 2
41–50 of 138 posts
Re: An Opinionated Guide to Modern Java, Part 2
#42Earlier quoted context omitted.
Java - "run anywhere" (supposedly) Docker - "The Linux Container Engine" Think you've got your answer there.
> Java - "run anywhere" (supposedly) Sure, it's a nice benefit, but is it actually used? In 2014, how many of us are doing backend/service development in java and not deploying to Linux machines? There are certainly still backend/service java shops out there that aren't deploying to linux machines, but I wager that most are. Regardless of those numbers though, why do the linux shops actually care about being able to…
In 2014, how many of us are doing backend/service development in java and not deploying to Linux machines?
Among silicon valley webstartups? Not many. But there still are a lot of Windows based installs large megacorps and small offices all over. For a lot of them, switching away is not an option so you might want to support them.Re: An Opinionated Guide to Modern Java, Part 2
#43Earlier quoted context omitted.
> "Java application servers are dead" and since there's no alternative to Java application servers here's a solution I cooked up myself. The alternative are servlet containers, like Jetty or Tomcat. Jetty for example is very popular and really good and can be easily embedded inside an app for single JAR deployments, which is an awesome way to deploy an app btw.
Fair enough, it's a matter of terminology then, I guess? Generally I think of Tomcat as being as much of an application server as something like JBoss is. Granted, JBoss/Wildfly has a lot more enterprise-y features, but they both 'serve' web 'applications.'
Re: An Opinionated Guide to Modern Java, Part 2
#44Nice article - Many of the suggestions (single-jar deployment, metrics, slf4j logging, etc) are all wrapped up for you in Dropwizard http://dropwizard.io , which we use and love.
Do you just use it for producing a REST API or do you use it to render HTML, handle session management etc.?
Re: An Opinionated Guide to Modern Java, Part 2
#45I like the overview given to JVM tooling, many developers are fully unaware of what JVMs (not only the official one from Oracle) offer in terms of monitoring. If you want to go really low level, a few of them even show the generated assembly code by the JIT.
Re: An Opinionated Guide to Modern Java, Part 2
#46Nice article - Many of the suggestions (single-jar deployment, metrics, slf4j logging, etc) are all wrapped up for you in Dropwizard http://dropwizard.io , which we use and love.
We'll discuss Dropwizard in part 3, but the single-jar deployment is not really solved by Dropwizard. To launch the server you still need to configure the JVM at the command line.
Re: An Opinionated Guide to Modern Java, Part 2
#47Earlier quoted context omitted.
We'll discuss Dropwizard in part 3, but the single-jar deployment is not really solved by Dropwizard. To launch the server you still need to configure the JVM at the command line.
An off topic question; Would it be possible to have an RSS feed on your blog? I see you have Twitter but personally I don't really use that.
Re: An Opinionated Guide to Modern Java, Part 2
#48Earlier quoted context omitted.
Java - "run anywhere" (supposedly) Docker - "The Linux Container Engine" Think you've got your answer there.
Docker is an option if you're deploying on Linux, which is what the majority of server deployments use these days. Chef works on the rest of the Unixes, including OS X. If you're deploying Java on a Windows server, you're doing it wrong. And the days of needing to use different development and production OSs are over...if you develop in Windows and deploy on some Unix variant, you should be using a VM. I'm still not…
You're assuming you have control over what the customer's servers are.
Re: An Opinionated Guide to Modern Java, Part 2
#49As far as packaging and deployment of a native executable goes, I thought it odd to not mention Excelsior JET ( http://www.excelsiorjet.com ) as I believe that's the only Java compiler that can handle all of the JDK (gcj isn't there yet).
Re: An Opinionated Guide to Modern Java, Part 2
#50As a Java developer, I thought this article had some interesting information about logging and monitoring. However, the deployment section had my scratching my head a little. I've never totally understood why people want to make fat jars. It seems like a process full of headaches since you can't have jars in jars. Wouldn't it be much easier to create a regular zip file with a small script to set the classpath and and…