You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Иван Артюхов <m....@gmail.com> on 2018/06/07 11:47:09 UTC

Re: NodeJS thin client: full API

Hi Igniters!

I've prepared two scripts to benchmark the throughput of Node.JS thin
client using 'atomic-put' operations [1]. They work in the following way:
- Main script 'bench-starter.js' starts the given number of thin clients as
sub-processes. AFAIK, Node.JS is one-threaded so we should fork clients
from some parent process to make the benchmark fully utilize all CPU cores.
- The Node.JS thin client script 'CachePut.js' uses the 'sandra' benchmark
package [2] which is simple and suites the asynchronous logic of the
Node.JS thin client package itself. Every second 'CachePut.js' calculates
and prints on screen the average throughput for current iteration.

I tried to make the logic of 'CachePut.js' to be close to Java thin client
benchmarks for Yardstick framework available in a pull request [3]. Because
I'm not a Node.JS expert, it would be great if someone could review these
two scripts and compare them with Java thin client benchmarks. Specifically
the 'IgniteThinPutBenchmark.java' benchmark which also does atomic puts. Any
feedback is greatly appreciated!

[1] https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95
[2] https://www.npmjs.com/package/sandra
[3] https://github.com/apache/ignite/pull/3942

Thanks,
Ivan


вт, 29 мая 2018 г. в 20:05, Denis Magda <dm...@gridgain.com>:

> Hi Pavel,
>
> Thanks for prompt improvements. I'll check them this week.
>
> --
> Denis
>
> On Sun, May 27, 2018 at 5:04 PM, Pavel Petroshenko <pa...@petroshenko.com>
> wrote:
>
> > Hi Denis,
> >
> > Thanks for your feedback on the documentation! I addressed all your
> > comments from https://issues.apache.org/jira/browse/IGNITE-8589.
> >
> > Please let me know if you have any questions.
> >
> > Thanks,
> > p.
> >
> >
> > On Thu, May 24, 2018 at 12:42 PM, Pavel Petroshenko <
> pavel@petroshenko.com
> > >
> > wrote:
> >
> > > Hi Denis,
> > >
> > > That's a good point, thanks. This should be a part of the "Usage"
> > section.
> > > I'll follow up in JIRA.
> > >
> > > p.
> > >
> > > On Thu, May 24, 2018 at 10:49 AM, Denis Magda <dm...@apache.org>
> wrote:
> > >
> > >> Pavel,
> > >>
> > >> Recalled that we've not described how to authenticate and set up SSL
> > from
> > >> the client side. Please consider this for the doc. Left some notes in
> > the
> > >> JIRA.
> > >>
> > >> --
> > >> Denis
> > >>
> > >> On Wed, May 23, 2018 at 12:25 PM, Denis Magda <dm...@apache.org>
> > wrote:
> > >>
> > >> > Alexey, Pavel,
> > >> >
> > >> > I've done a preliminary review of the doc and moved it to the
> > readme.io
> > >> > page:
> > >> > https://apacheignite.readme.io/v2.4/docs/nodejs-thin-client
> > >> >
> > >> > The page is hidden. I'll grant you access to readme so that you can
> > >> update
> > >> > the doc taking my suggestions into account:
> > >> > https://issues.apache.org/jira/browse/IGNITE-8589
> > >> >
> > >> > --
> > >> > Denis
> > >> >
> > >> >
> > >> > On Mon, May 21, 2018 at 6:39 PM, Alexey Kuznetsov <
> > >> akuznetsov@apache.org>
> > >> > wrote:
> > >> >
> > >> >> Hi,
> > >> >>
> > >> >> FYI, HZ also has NodeJs client: https://github.com/
> > >> >> hazelcast/hazelcast-nodejs-client
> > >> >> May be it is worth to take a look?
> > >> >>
> > >> >> --
> > >> >> Alexey Kuznetsov
> > >> >>
> > >> >
> > >> >
> > >>
> > >
> > >
> >
>

Re: NodeJS thin client: full API

Posted by Ivan Artiukhov <m....@gmail.com>.
Also it would be better to set the 'atomic' cache to PARTITIONED mode to
equally split the data across all available nodes. This can be done by
setting the 'cacheMode' property to 'PARTITIONED'. Please see [1].

Ivan

[1]
https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95#file-example-cache-xml

чт, 14 июн. 2018 г. в 9:26, Иван Артюхов <m....@gmail.com>:

> Hi Pavel,
>
> Thanks for trying to run the benchmark. The error arises because an Apache
> Ignite node started with the default config does not have the cache with
> name '*atomic*'. To run the benchmark you should do the following:
>
>    1. Checkout latest '*master*' branch from Apache Ignite repo [1].
>    2. Compile, install and assembly the Apache Ignite build as described
>    in DEVNOTES.txt, section "Ignite Fabric Maven Build Instructions", clauses
>    2 and 4.
>    3. Unzip the assembly file '*target/bin/apache-ignite-fabric-*-bin.zip*
>    '.
>    4. Cd to target folder, open '*examples/config/example-cache.xml*'
>    with an editor, find the '
>    *org.apache.ignite.configuration.CacheConfiguration*' section and
>    rename '*default*' cache to '*atomic*'.
>    5. Start local Apache Ignite node with this config: '*./bin/ignite.sh
>    examples/config/example-cache.xml*'. Either start one more local node
>    the same way or set one endpoint in *CachePut.js* (via *ENDPOINT*
>    constant).
>    6. Start the benchmark: '*node bench-starter.js*'.
>
> Please let me know if you experience any other problems.
>
> Thanks,
> Ivan
>
> [1] https://github.com/apache/ignite/
>
> вс, 10 июн. 2018 г. в 23:17, Pavel Petroshenko <pa...@petroshenko.com>:
>
>> Hi Ivan,
>>
>> I've got through some build issues, but it's still crashing on master [1]
>> for me:
>>
>> Thread 1. Client is started
>> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
>> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
>> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
>> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
>>
>> It would be nice if you could provide some sufficient instructions on how
>> to "install" and run the scripts. And also please specify, which AI
>> codebase you used for testing.
>>
>> Thanks,
>> p.
>>
>> [1]
>> https://github.com/nobitlost/ignite/tree/master/modules/platforms/nodejs
>>
>> On Thu, Jun 7, 2018 at 5:05 PM, Pavel Petroshenko <pa...@petroshenko.com>
>> wrote:
>>
>>> Hi Ivan,
>>>
>>> Thanks for taking care of this. I will give the scripts a try and get
>>> back to you if any questions.
>>>
>>> Could you please update the JIRA ticket [1] so that we keep it
>>> up-to-date.
>>>
>>> Thanks!
>>> p.
>>>
>>> [1] https://issues.apache.org/jira/browse/IGNITE-8733
>>>
>>>
>>> On Thu, Jun 7, 2018 at 4:47 AM, Иван Артюхов <m....@gmail.com> wrote:
>>>
>>>> Hi Igniters!
>>>>
>>>> I've prepared two scripts to benchmark the throughput of Node.JS thin
>>>> client using 'atomic-put' operations [1]. They work in the following
>>>> way:
>>>> - Main script 'bench-starter.js' starts the given number of thin
>>>> clients as
>>>> sub-processes. AFAIK, Node.JS is one-threaded so we should fork clients
>>>> from some parent process to make the benchmark fully utilize all CPU
>>>> cores.
>>>> - The Node.JS thin client script 'CachePut.js' uses the 'sandra'
>>>> benchmark
>>>> package [2] which is simple and suites the asynchronous logic of the
>>>> Node.JS thin client package itself. Every second 'CachePut.js'
>>>> calculates
>>>> and prints on screen the average throughput for current iteration.
>>>>
>>>> I tried to make the logic of 'CachePut.js' to be close to Java thin
>>>> client
>>>> benchmarks for Yardstick framework available in a pull request [3].
>>>> Because
>>>> I'm not a Node.JS expert, it would be great if someone could review
>>>> these
>>>> two scripts and compare them with Java thin client benchmarks.
>>>> Specifically
>>>> the 'IgniteThinPutBenchmark.java' benchmark which also does atomic
>>>> puts. Any
>>>> feedback is greatly appreciated!
>>>>
>>>> [1] https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95
>>>> [2] https://www.npmjs.com/package/sandra
>>>> [3] https://github.com/apache/ignite/pull/3942
>>>>
>>>> Thanks,
>>>> Ivan
>>>>
>>>>
>>>> вт, 29 мая 2018 г. в 20:05, Denis Magda <dm...@gridgain.com>:
>>>>
>>>> > Hi Pavel,
>>>> >
>>>> > Thanks for prompt improvements. I'll check them this week.
>>>> >
>>>> > --
>>>> > Denis
>>>> >
>>>> > On Sun, May 27, 2018 at 5:04 PM, Pavel Petroshenko <
>>>> pavel@petroshenko.com>
>>>> > wrote:
>>>> >
>>>> > > Hi Denis,
>>>> > >
>>>> > > Thanks for your feedback on the documentation! I addressed all your
>>>> > > comments from https://issues.apache.org/jira/browse/IGNITE-8589.
>>>> > >
>>>> > > Please let me know if you have any questions.
>>>> > >
>>>> > > Thanks,
>>>> > > p.
>>>> > >
>>>> > >
>>>> > > On Thu, May 24, 2018 at 12:42 PM, Pavel Petroshenko <
>>>> > pavel@petroshenko.com
>>>> > > >
>>>> > > wrote:
>>>> > >
>>>> > > > Hi Denis,
>>>> > > >
>>>> > > > That's a good point, thanks. This should be a part of the "Usage"
>>>> > > section.
>>>> > > > I'll follow up in JIRA.
>>>> > > >
>>>> > > > p.
>>>> > > >
>>>> > > > On Thu, May 24, 2018 at 10:49 AM, Denis Magda <dm...@apache.org>
>>>> > wrote:
>>>> > > >
>>>> > > >> Pavel,
>>>> > > >>
>>>> > > >> Recalled that we've not described how to authenticate and set up
>>>> SSL
>>>> > > from
>>>> > > >> the client side. Please consider this for the doc. Left some
>>>> notes in
>>>> > > the
>>>> > > >> JIRA.
>>>> > > >>
>>>> > > >> --
>>>> > > >> Denis
>>>> > > >>
>>>> > > >> On Wed, May 23, 2018 at 12:25 PM, Denis Magda <dmagda@apache.org
>>>> >
>>>> > > wrote:
>>>> > > >>
>>>> > > >> > Alexey, Pavel,
>>>> > > >> >
>>>> > > >> > I've done a preliminary review of the doc and moved it to the
>>>> > > readme.io
>>>> > > >> > page:
>>>> > > >> > https://apacheignite.readme.io/v2.4/docs/nodejs-thin-client
>>>> > > >> >
>>>> > > >> > The page is hidden. I'll grant you access to readme so that
>>>> you can
>>>> > > >> update
>>>> > > >> > the doc taking my suggestions into account:
>>>> > > >> > https://issues.apache.org/jira/browse/IGNITE-8589
>>>> > > >> >
>>>> > > >> > --
>>>> > > >> > Denis
>>>> > > >> >
>>>> > > >> >
>>>> > > >> > On Mon, May 21, 2018 at 6:39 PM, Alexey Kuznetsov <
>>>> > > >> akuznetsov@apache.org>
>>>> > > >> > wrote:
>>>> > > >> >
>>>> > > >> >> Hi,
>>>> > > >> >>
>>>> > > >> >> FYI, HZ also has NodeJs client: https://github.com/
>>>> > > >> >> hazelcast/hazelcast-nodejs-client
>>>> > > >> >> May be it is worth to take a look?
>>>> > > >> >>
>>>> > > >> >> --
>>>> > > >> >> Alexey Kuznetsov
>>>> > > >> >>
>>>> > > >> >
>>>> > > >> >
>>>> > > >>
>>>> > > >
>>>> > > >
>>>> > >
>>>> >
>>>>
>>>
>>>
>>

Re: NodeJS thin client: full API

Posted by Иван Артюхов <m....@gmail.com>.
Hi Pavel,

Thanks for trying to run the benchmark. The error arises because an Apache
Ignite node started with the default config does not have the cache with
name '*atomic*'. To run the benchmark you should do the following:

   1. Checkout latest '*master*' branch from Apache Ignite repo [1].
   2. Compile, install and assembly the Apache Ignite build as described in
   DEVNOTES.txt, section "Ignite Fabric Maven Build Instructions", clauses 2
   and 4.
   3. Unzip the assembly file '*target/bin/apache-ignite-fabric-*-bin.zip*'.
   4. Cd to target folder, open '*examples/config/example-cache.xml*' with
   an editor, find the '*org.apache.ignite.configuration.CacheConfiguration*'
   section and rename '*default*' cache to '*atomic*'.
   5. Start local Apache Ignite node with this config: '*./bin/ignite.sh
   examples/config/example-cache.xml*'. Either start one more local node
   the same way or set one endpoint in *CachePut.js* (via *ENDPOINT*
   constant).
   6. Start the benchmark: '*node bench-starter.js*'.

Please let me know if you experience any other problems.

Thanks,
Ivan

[1] https://github.com/apache/ignite/

вс, 10 июн. 2018 г. в 23:17, Pavel Petroshenko <pa...@petroshenko.com>:

> Hi Ivan,
>
> I've got through some build issues, but it's still crashing on master [1]
> for me:
>
> Thread 1. Client is started
> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
> Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
>
> It would be nice if you could provide some sufficient instructions on how
> to "install" and run the scripts. And also please specify, which AI
> codebase you used for testing.
>
> Thanks,
> p.
>
> [1]
> https://github.com/nobitlost/ignite/tree/master/modules/platforms/nodejs
>
> On Thu, Jun 7, 2018 at 5:05 PM, Pavel Petroshenko <pa...@petroshenko.com>
> wrote:
>
>> Hi Ivan,
>>
>> Thanks for taking care of this. I will give the scripts a try and get
>> back to you if any questions.
>>
>> Could you please update the JIRA ticket [1] so that we keep it up-to-date.
>>
>> Thanks!
>> p.
>>
>> [1] https://issues.apache.org/jira/browse/IGNITE-8733
>>
>>
>> On Thu, Jun 7, 2018 at 4:47 AM, Иван Артюхов <m....@gmail.com> wrote:
>>
>>> Hi Igniters!
>>>
>>> I've prepared two scripts to benchmark the throughput of Node.JS thin
>>> client using 'atomic-put' operations [1]. They work in the following way:
>>> - Main script 'bench-starter.js' starts the given number of thin clients
>>> as
>>> sub-processes. AFAIK, Node.JS is one-threaded so we should fork clients
>>> from some parent process to make the benchmark fully utilize all CPU
>>> cores.
>>> - The Node.JS thin client script 'CachePut.js' uses the 'sandra'
>>> benchmark
>>> package [2] which is simple and suites the asynchronous logic of the
>>> Node.JS thin client package itself. Every second 'CachePut.js' calculates
>>> and prints on screen the average throughput for current iteration.
>>>
>>> I tried to make the logic of 'CachePut.js' to be close to Java thin
>>> client
>>> benchmarks for Yardstick framework available in a pull request [3].
>>> Because
>>> I'm not a Node.JS expert, it would be great if someone could review these
>>> two scripts and compare them with Java thin client benchmarks.
>>> Specifically
>>> the 'IgniteThinPutBenchmark.java' benchmark which also does atomic puts.
>>> Any
>>> feedback is greatly appreciated!
>>>
>>> [1] https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95
>>> [2] https://www.npmjs.com/package/sandra
>>> [3] https://github.com/apache/ignite/pull/3942
>>>
>>> Thanks,
>>> Ivan
>>>
>>>
>>> вт, 29 мая 2018 г. в 20:05, Denis Magda <dm...@gridgain.com>:
>>>
>>> > Hi Pavel,
>>> >
>>> > Thanks for prompt improvements. I'll check them this week.
>>> >
>>> > --
>>> > Denis
>>> >
>>> > On Sun, May 27, 2018 at 5:04 PM, Pavel Petroshenko <
>>> pavel@petroshenko.com>
>>> > wrote:
>>> >
>>> > > Hi Denis,
>>> > >
>>> > > Thanks for your feedback on the documentation! I addressed all your
>>> > > comments from https://issues.apache.org/jira/browse/IGNITE-8589.
>>> > >
>>> > > Please let me know if you have any questions.
>>> > >
>>> > > Thanks,
>>> > > p.
>>> > >
>>> > >
>>> > > On Thu, May 24, 2018 at 12:42 PM, Pavel Petroshenko <
>>> > pavel@petroshenko.com
>>> > > >
>>> > > wrote:
>>> > >
>>> > > > Hi Denis,
>>> > > >
>>> > > > That's a good point, thanks. This should be a part of the "Usage"
>>> > > section.
>>> > > > I'll follow up in JIRA.
>>> > > >
>>> > > > p.
>>> > > >
>>> > > > On Thu, May 24, 2018 at 10:49 AM, Denis Magda <dm...@apache.org>
>>> > wrote:
>>> > > >
>>> > > >> Pavel,
>>> > > >>
>>> > > >> Recalled that we've not described how to authenticate and set up
>>> SSL
>>> > > from
>>> > > >> the client side. Please consider this for the doc. Left some
>>> notes in
>>> > > the
>>> > > >> JIRA.
>>> > > >>
>>> > > >> --
>>> > > >> Denis
>>> > > >>
>>> > > >> On Wed, May 23, 2018 at 12:25 PM, Denis Magda <dm...@apache.org>
>>> > > wrote:
>>> > > >>
>>> > > >> > Alexey, Pavel,
>>> > > >> >
>>> > > >> > I've done a preliminary review of the doc and moved it to the
>>> > > readme.io
>>> > > >> > page:
>>> > > >> > https://apacheignite.readme.io/v2.4/docs/nodejs-thin-client
>>> > > >> >
>>> > > >> > The page is hidden. I'll grant you access to readme so that you
>>> can
>>> > > >> update
>>> > > >> > the doc taking my suggestions into account:
>>> > > >> > https://issues.apache.org/jira/browse/IGNITE-8589
>>> > > >> >
>>> > > >> > --
>>> > > >> > Denis
>>> > > >> >
>>> > > >> >
>>> > > >> > On Mon, May 21, 2018 at 6:39 PM, Alexey Kuznetsov <
>>> > > >> akuznetsov@apache.org>
>>> > > >> > wrote:
>>> > > >> >
>>> > > >> >> Hi,
>>> > > >> >>
>>> > > >> >> FYI, HZ also has NodeJs client: https://github.com/
>>> > > >> >> hazelcast/hazelcast-nodejs-client
>>> > > >> >> May be it is worth to take a look?
>>> > > >> >>
>>> > > >> >> --
>>> > > >> >> Alexey Kuznetsov
>>> > > >> >>
>>> > > >> >
>>> > > >> >
>>> > > >>
>>> > > >
>>> > > >
>>> > >
>>> >
>>>
>>
>>
>

Re: NodeJS thin client: full API

Posted by Pavel Petroshenko <pa...@petroshenko.com>.
Hi Ivan,

I've got through some build issues, but it's still crashing on master [1]
for me:

Thread 1. Client is started
Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]
Thread 1. ERROR: Cache does not exist [cacheId= -1407396309]

It would be nice if you could provide some sufficient instructions on how
to "install" and run the scripts. And also please specify, which AI
codebase you used for testing.

Thanks,
p.

[1] https://github.com/nobitlost/ignite/tree/master/modules/platforms/nodejs

On Thu, Jun 7, 2018 at 5:05 PM, Pavel Petroshenko <pa...@petroshenko.com>
wrote:

> Hi Ivan,
>
> Thanks for taking care of this. I will give the scripts a try and get back
> to you if any questions.
>
> Could you please update the JIRA ticket [1] so that we keep it up-to-date.
>
> Thanks!
> p.
>
> [1] https://issues.apache.org/jira/browse/IGNITE-8733
>
>
> On Thu, Jun 7, 2018 at 4:47 AM, Иван Артюхов <m....@gmail.com> wrote:
>
>> Hi Igniters!
>>
>> I've prepared two scripts to benchmark the throughput of Node.JS thin
>> client using 'atomic-put' operations [1]. They work in the following way:
>> - Main script 'bench-starter.js' starts the given number of thin clients
>> as
>> sub-processes. AFAIK, Node.JS is one-threaded so we should fork clients
>> from some parent process to make the benchmark fully utilize all CPU
>> cores.
>> - The Node.JS thin client script 'CachePut.js' uses the 'sandra' benchmark
>> package [2] which is simple and suites the asynchronous logic of the
>> Node.JS thin client package itself. Every second 'CachePut.js' calculates
>> and prints on screen the average throughput for current iteration.
>>
>> I tried to make the logic of 'CachePut.js' to be close to Java thin client
>> benchmarks for Yardstick framework available in a pull request [3].
>> Because
>> I'm not a Node.JS expert, it would be great if someone could review these
>> two scripts and compare them with Java thin client benchmarks.
>> Specifically
>> the 'IgniteThinPutBenchmark.java' benchmark which also does atomic puts.
>> Any
>> feedback is greatly appreciated!
>>
>> [1] https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95
>> [2] https://www.npmjs.com/package/sandra
>> [3] https://github.com/apache/ignite/pull/3942
>>
>> Thanks,
>> Ivan
>>
>>
>> вт, 29 мая 2018 г. в 20:05, Denis Magda <dm...@gridgain.com>:
>>
>> > Hi Pavel,
>> >
>> > Thanks for prompt improvements. I'll check them this week.
>> >
>> > --
>> > Denis
>> >
>> > On Sun, May 27, 2018 at 5:04 PM, Pavel Petroshenko <
>> pavel@petroshenko.com>
>> > wrote:
>> >
>> > > Hi Denis,
>> > >
>> > > Thanks for your feedback on the documentation! I addressed all your
>> > > comments from https://issues.apache.org/jira/browse/IGNITE-8589.
>> > >
>> > > Please let me know if you have any questions.
>> > >
>> > > Thanks,
>> > > p.
>> > >
>> > >
>> > > On Thu, May 24, 2018 at 12:42 PM, Pavel Petroshenko <
>> > pavel@petroshenko.com
>> > > >
>> > > wrote:
>> > >
>> > > > Hi Denis,
>> > > >
>> > > > That's a good point, thanks. This should be a part of the "Usage"
>> > > section.
>> > > > I'll follow up in JIRA.
>> > > >
>> > > > p.
>> > > >
>> > > > On Thu, May 24, 2018 at 10:49 AM, Denis Magda <dm...@apache.org>
>> > wrote:
>> > > >
>> > > >> Pavel,
>> > > >>
>> > > >> Recalled that we've not described how to authenticate and set up
>> SSL
>> > > from
>> > > >> the client side. Please consider this for the doc. Left some notes
>> in
>> > > the
>> > > >> JIRA.
>> > > >>
>> > > >> --
>> > > >> Denis
>> > > >>
>> > > >> On Wed, May 23, 2018 at 12:25 PM, Denis Magda <dm...@apache.org>
>> > > wrote:
>> > > >>
>> > > >> > Alexey, Pavel,
>> > > >> >
>> > > >> > I've done a preliminary review of the doc and moved it to the
>> > > readme.io
>> > > >> > page:
>> > > >> > https://apacheignite.readme.io/v2.4/docs/nodejs-thin-client
>> > > >> >
>> > > >> > The page is hidden. I'll grant you access to readme so that you
>> can
>> > > >> update
>> > > >> > the doc taking my suggestions into account:
>> > > >> > https://issues.apache.org/jira/browse/IGNITE-8589
>> > > >> >
>> > > >> > --
>> > > >> > Denis
>> > > >> >
>> > > >> >
>> > > >> > On Mon, May 21, 2018 at 6:39 PM, Alexey Kuznetsov <
>> > > >> akuznetsov@apache.org>
>> > > >> > wrote:
>> > > >> >
>> > > >> >> Hi,
>> > > >> >>
>> > > >> >> FYI, HZ also has NodeJs client: https://github.com/
>> > > >> >> hazelcast/hazelcast-nodejs-client
>> > > >> >> May be it is worth to take a look?
>> > > >> >>
>> > > >> >> --
>> > > >> >> Alexey Kuznetsov
>> > > >> >>
>> > > >> >
>> > > >> >
>> > > >>
>> > > >
>> > > >
>> > >
>> >
>>
>
>

Re: NodeJS thin client: full API

Posted by Pavel Petroshenko <pa...@petroshenko.com>.
Hi Ivan,

Thanks for taking care of this. I will give the scripts a try and get back
to you if any questions.

Could you please update the JIRA ticket [1] so that we keep it up-to-date.

Thanks!
p.

[1] https://issues.apache.org/jira/browse/IGNITE-8733


On Thu, Jun 7, 2018 at 4:47 AM, Иван Артюхов <m....@gmail.com> wrote:

> Hi Igniters!
>
> I've prepared two scripts to benchmark the throughput of Node.JS thin
> client using 'atomic-put' operations [1]. They work in the following way:
> - Main script 'bench-starter.js' starts the given number of thin clients as
> sub-processes. AFAIK, Node.JS is one-threaded so we should fork clients
> from some parent process to make the benchmark fully utilize all CPU cores.
> - The Node.JS thin client script 'CachePut.js' uses the 'sandra' benchmark
> package [2] which is simple and suites the asynchronous logic of the
> Node.JS thin client package itself. Every second 'CachePut.js' calculates
> and prints on screen the average throughput for current iteration.
>
> I tried to make the logic of 'CachePut.js' to be close to Java thin client
> benchmarks for Yardstick framework available in a pull request [3]. Because
> I'm not a Node.JS expert, it would be great if someone could review these
> two scripts and compare them with Java thin client benchmarks. Specifically
> the 'IgniteThinPutBenchmark.java' benchmark which also does atomic puts.
> Any
> feedback is greatly appreciated!
>
> [1] https://gist.github.com/iartiukhov/c02385d265330e2c9192931759616f95
> [2] https://www.npmjs.com/package/sandra
> [3] https://github.com/apache/ignite/pull/3942
>
> Thanks,
> Ivan
>
>
> вт, 29 мая 2018 г. в 20:05, Denis Magda <dm...@gridgain.com>:
>
> > Hi Pavel,
> >
> > Thanks for prompt improvements. I'll check them this week.
> >
> > --
> > Denis
> >
> > On Sun, May 27, 2018 at 5:04 PM, Pavel Petroshenko <
> pavel@petroshenko.com>
> > wrote:
> >
> > > Hi Denis,
> > >
> > > Thanks for your feedback on the documentation! I addressed all your
> > > comments from https://issues.apache.org/jira/browse/IGNITE-8589.
> > >
> > > Please let me know if you have any questions.
> > >
> > > Thanks,
> > > p.
> > >
> > >
> > > On Thu, May 24, 2018 at 12:42 PM, Pavel Petroshenko <
> > pavel@petroshenko.com
> > > >
> > > wrote:
> > >
> > > > Hi Denis,
> > > >
> > > > That's a good point, thanks. This should be a part of the "Usage"
> > > section.
> > > > I'll follow up in JIRA.
> > > >
> > > > p.
> > > >
> > > > On Thu, May 24, 2018 at 10:49 AM, Denis Magda <dm...@apache.org>
> > wrote:
> > > >
> > > >> Pavel,
> > > >>
> > > >> Recalled that we've not described how to authenticate and set up SSL
> > > from
> > > >> the client side. Please consider this for the doc. Left some notes
> in
> > > the
> > > >> JIRA.
> > > >>
> > > >> --
> > > >> Denis
> > > >>
> > > >> On Wed, May 23, 2018 at 12:25 PM, Denis Magda <dm...@apache.org>
> > > wrote:
> > > >>
> > > >> > Alexey, Pavel,
> > > >> >
> > > >> > I've done a preliminary review of the doc and moved it to the
> > > readme.io
> > > >> > page:
> > > >> > https://apacheignite.readme.io/v2.4/docs/nodejs-thin-client
> > > >> >
> > > >> > The page is hidden. I'll grant you access to readme so that you
> can
> > > >> update
> > > >> > the doc taking my suggestions into account:
> > > >> > https://issues.apache.org/jira/browse/IGNITE-8589
> > > >> >
> > > >> > --
> > > >> > Denis
> > > >> >
> > > >> >
> > > >> > On Mon, May 21, 2018 at 6:39 PM, Alexey Kuznetsov <
> > > >> akuznetsov@apache.org>
> > > >> > wrote:
> > > >> >
> > > >> >> Hi,
> > > >> >>
> > > >> >> FYI, HZ also has NodeJs client: https://github.com/
> > > >> >> hazelcast/hazelcast-nodejs-client
> > > >> >> May be it is worth to take a look?
> > > >> >>
> > > >> >> --
> > > >> >> Alexey Kuznetsov
> > > >> >>
> > > >> >
> > > >> >
> > > >>
> > > >
> > > >
> > >
> >
>