FAQ
We are developing a web based solution.

The server side will have 3 million to 15 million user records.Each user
record has a binary code (master code) which will be stored as part of the
user record in the database.

There will be multiple client machines 10 to 50+ sending requests to the
server.

The client machines will send out a binary code (slave code) to the server.
The Server will try to match the slave code with the master code. If the
slave code and master code are a pair then the system will send out the
record to the client machines in real time. The process of determining if a
slave code and master code are a match is a bit complex and is determined
by our matching algorithm. This algorithm can match 40,000 records per
second per core.
I am a bit concerned on which language we should use for this application.
We were thinking of using Java but then someone recommended Node.js & NoSQL
(as Node.JS is very easy to scale & takes care of lots of aspects &
development time is far less).

Can anyone provide advantages/disadvantages of using either Node.js or
Java?
Is Node.js a good fit for this project?

Thanks a lot for your help.

--
--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Search Discussions

  • Ben Noordhuis at Nov 12, 2013 at 9:37 am

    On Tue, Nov 12, 2013 at 2:42 AM, wrote:
    We are developing a web based solution.

    The server side will have 3 million to 15 million user records.Each user
    record has a binary code (master code) which will be stored as part of the
    user record in the database.

    There will be multiple client machines 10 to 50+ sending requests to the
    server.

    The client machines will send out a binary code (slave code) to the server.
    The Server will try to match the slave code with the master code. If the
    slave code and master code are a pair then the system will send out the
    record to the client machines in real time. The process of determining if a
    slave code and master code are a match is a bit complex and is determined by
    our matching algorithm. This algorithm can match 40,000 records per second
    per core.

    I am a bit concerned on which language we should use for this application.
    We were thinking of using Java but then someone recommended Node.js & NoSQL
    (as Node.JS is very easy to scale & takes care of lots of aspects &
    development time is far less).

    Can anyone provide advantages/disadvantages of using either Node.js or Java?
    Is Node.js a good fit for this project?

    Thanks a lot for your help.
    I'd say it depends on how computationally expensive your matching
    algorithm is. V8 (the JS engine) is no slouch but it's usually not in
    the same ballpark as C or Java.

    That said, it's often possible to get performance that's within a
    factor of 2-3x of native code if you craft your code carefully. On
    top of that, calling out to C or C++ code from JS is quite easy so
    there is an escape hatch if you need it.

    If your application is mostly I/O-bound (many applications tend to
    be), then node.js should be a great fit.

    --
    --
    Job Board: http://jobs.nodejs.org/
    Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
    You received this message because you are subscribed to the Google
    Groups "nodejs" group.
    To post to this group, send email to nodejs@googlegroups.com
    To unsubscribe from this group, send email to
    nodejs+unsubscribe@googlegroups.com
    For more options, visit this group at
    http://groups.google.com/group/nodejs?hl=en?hl=en

    ---
    You received this message because you are subscribed to the Google Groups "nodejs" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Alex Kocharin at Nov 12, 2013 at 12:06 pm
    If your application works with a network, you will be better off using
    node.js. As Ben pointed out, if you have anything CPU-heavy, you can use
    node.js and c++ extension, it's easy enough (I remember writing native
    extensions for perl, and native extensions for node.js is a piece of cake
    after that you know).

    As for Java, it has one and only one advantage: portability. If you're
    writing a large application and need to support a lot of weird platforms
    like beos or windows, I think jdk is far more portable than v8. But other
    than that, I'd avoid that language entirely (unless you really like Scala).

    On Tuesday, November 12, 2013 5:42:02 AM UTC+4, ramesh...@gmail.com wrote:

    We are developing a web based solution.

    The server side will have 3 million to 15 million user records.Each user
    record has a binary code (master code) which will be stored as part of the
    user record in the database.

    There will be multiple client machines 10 to 50+ sending requests to the
    server.

    The client machines will send out a binary code (slave code) to the
    server. The Server will try to match the slave code with the master code.
    If the slave code and master code are a pair then the system will send out
    the record to the client machines in real time. The process of determining
    if a slave code and master code are a match is a bit complex and is
    determined by our matching algorithm. This algorithm can match 40,000
    records per second per core.
    I am a bit concerned on which language we should use for this application.
    We were thinking of using Java but then someone recommended Node.js & NoSQL
    (as Node.JS is very easy to scale & takes care of lots of aspects &
    development time is far less).

    Can anyone provide advantages/disadvantages of using either Node.js or
    Java?
    Is Node.js a good fit for this project?

    Thanks a lot for your help.
    --
    --
    Job Board: http://jobs.nodejs.org/
    Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
    You received this message because you are subscribed to the Google
    Groups "nodejs" group.
    To post to this group, send email to nodejs@googlegroups.com
    To unsubscribe from this group, send email to
    nodejs+unsubscribe@googlegroups.com
    For more options, visit this group at
    http://groups.google.com/group/nodejs?hl=en?hl=en

    ---
    You received this message because you are subscribed to the Google Groups "nodejs" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupnodejs @
categoriesnodejs
postedNov 12, '13 at 9:19a
activeNov 12, '13 at 12:06p
posts3
users3
websitenodejs.org
irc#node.js

People

Translate

site design / logo © 2022 Grokbase