4 ms·
"Heaps in the 1-2 GB range are not uncommon." Is this really still a complaint in 2016? Your phone has that much RAM. Honestly if you're worried about Java he
by mark242 11y ago
"Heaps in the 1-2 GB range are not uncommon."
Is this really still a complaint in 2016? Your phone has that much RAM.
Honestly if you're worried about Java heap size, spin up a t2.medium instead of a t2.small for your build pipeline. Running Jenkins on a Raspberry Pi is probably not a great idea if you're writing any serious application.
- ascotan 11y agoActually it's becoming more of a complaint in 2016 with rise AWS instances that pay by the container size and with the rise of languages like go, etc. which have smaller runtime sizes and are more compatible with cloud computing environments like docker. The JVM adds something like 400MB to every layer of a docker container resulting in multi gigabyte containers. Additionally the memory requirements for running a JVM put you immediately into the t2.medium range which will cost you 4X cost over a t2.nano for simply choosing to run Java instead of something with a smaller runtime footprint.
- mark242 11y agoDon't run production code on a nano. Don't run production code on a nano. Don't run production code on a nano. I don't care what language you're using, if you find yourself saying "well, I could run on a nano" just stop.
- Alupis 11y ago> The JVM adds something like 400MB to every layer of a docker container Perhaps this is the "writing on the wall" that containers aren't what you should be using to deploy your app. Just because it's the "latest craze" doesn't mean it's the best solution for the task at hand.
- t0mk 11y agoIn the simplest case, Jenkins is just polling and cloning git repos, and then spawning some tests. This plus config parsing and web frontend is not a 1GB RAM job.
- deleted 11y ago[deleted]
- nobleach 11y agoThis is a horrible solution. No, my phone does NOT have that amount of memory available. It has it in its specs, but there's no way any ONE app should require that much. Look at what Jenkins is actually doing. Git/SVN checkout, build, other shell tasks. This should not take more than 16 megs!!! Let's be generous and add overhead for the GUI... so... 128mb. Java can certainly be tuned, but by default it wants a ton of memory.