Something I would ask your co-worker is if he has ever run heaps of that
size on Heroku. From what I can tell, Heroku runs on AWS. Not sure if they
are using dedicated boxes under the sheets, but the fact is you are
probably running on a provisioned device. One that may have many other
users. I've seen many problems arise from running poor provisioning, where
two users are fighting for more than their fair share of the box.

The rules for debugging this sort of thing are always 1) assume nothing.
Just because GC'ing 20GB on a desktop is fast, doesn't mean it will be on
some other proprietary provisioning system. 2) the more information the
better. You can never hope to optimize something if you don't know what is
wrong. So gathering info is always important, the more the better.

Timothy


On Mon, Jun 16, 2014 at 11:47 AM, Brian Marick <mar...@exampler.com> wrote:

> We have a small Clojure app on Heroku that performs backend tasks for a
> Rails app. Low traffic (like a request a minute). Heap is 400M. We've been
> having long (10 sec) GC pauses using both the default and G1 GC (both
> untuned). Browsing our logs today, I found:
>
>      [GC pause (young) 156M->36M(400M), 56.0281380 secs]
>
> A minute for GC seems... excessive.
>
> Our other Clojure apps also have GC problems.
>
> 1. Is this something peculiar to Heroku? Clojure in small-memory
> environments? I have very little experience with non-Clojure java apps, but
> a coworker says: "I've run JVMs with +20g heaps, and *never* seen 10s
> pauses, let alone a whole f%#^$ing minute".
>
> 2. Is there lore about appropriate GC tweaks for Clojure backend server
> apps?
>
> --------
> Latest book: /Functional Programming for the Object-Oriented Programmer/
> https://leanpub.com/fp-oo
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
“One of the main causes of the fall of the Roman Empire was that–lacking
zero–they had no way to indicate successful termination of their C
programs.”
(Robert Firth)

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to