FWIW getting 1mil+ connections will requires some OS level tuning even in 
Erlang. So you are not going to get that in a benchmark that is not set up 
for this.

In the JVM you are going to run into GC problems eventually, depending on 
how much state/memory you keep per connection. It might work with something 
Azul [1] offers but the standard JVM still has no comparable GC. You can do 
some heavy tuning of the different standard GCs but that is a science in 
itself and can not be answered without a deep understanding of your app 
architecture.

Erlang was specifically designed for this purpose and makes some things 
significantly simpler, so it is going to be much more straightforward 
writing such a system. Erlang is also pretty fun.

As you can see in the http-kit benchmark, the application itself barely 
uses any CPU. Most of it is GC, so this is going to be your worst enemy as 
you are going to run into some hefty GC pauses on large heaps, which will 
affect ALL connections. Erlang does not suffer from this problem.

I'm a big fan of using the right tool for the job, in this case I would 
recommend Erlang and only Erlang. Unless you want to write C, which is 
going to be much much harder and more prone to error. You can also use 
Erlang to handle all the connection stuff and interface it to a Clojure app 
that does the DB work, you do not have to write everything in Erlang.

Just my 2 cents,
/thomas

PS: I have not written such a system in either language, so everything is 
just an educated guess.

[1] https://www.azul.com/

On Wednesday, October 7, 2015 at 8:17:57 PM UTC+2, Nick Pavlica wrote:
>
> All,
> I posed this question with a little more detail in the Quasar/Pulsar group 
> in hopes that they may have some insight into my question (
> https://groups.google.com/forum/#!topic/quasar-pulsar-user/l8ZX7pk9bkI) 
> because they are more focused on that domain.  Hopefully, my question is 
> clear, if not please help me clarify it.
>
> Thanks Again
> -- Nick
>

-- 
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