Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.7
    • Component/s: thin client
    • Labels:
      None

      Description

      Implement Thin (lightweight) Client lib in Node.js programming language for Ignite Binary Client Protocol.

      Examples of other Thin Clients:
      .net https://github.com/apache/ignite/tree/master/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Client
      java https://github.com/gridgain/apache-ignite/tree/ignite-7421
      https://apacheignite.readme.io/v2.3/docs/java-thin-client

      Scope of work
      -------------

      Functionality:

      Support all operations of the Ignite Binary Client Protocol 2.4:
      https://apacheignite.readme.io/v2.4/docs/binary-client-protocol
      Except:
      OP_QUERY_SCAN (requires changes on the server side)
      OP_REGISTER_BINARY_TYPE_NAME, OP_GET_BINARY_TYPE_NAME (not applicable)

      Support name/password authentication (not in the protocol yet).
      Support optional SSL/TLS communication.

      Support failover/reconnect algorithm:
      https://issues.apache.org/jira/browse/IGNITE-7282
      http://apache-ignite-developers.2346864.n4.nabble.com/Thin-client-failover-mechanism-ODBC-JDBC-td26553.html

      Minimal Node.js version - 8.0
      Promise asynch/await to be used.

      Examples:
      Cover all basic features - Key-value API, SQL queries, Cluster configuration/management, Authentication, SSL/TLS.

      Tests:
      Jasmine tests for all API methods and all basic features.
      Simple Jasmine tests to start examples.
      The tests should call external commands/scripts to start/stop the nodes.

      Docs:
      Auto-generated API spec from jsdoc comments:
      http://usejsdoc.org/
      https://www.npmjs.com/package/jsdoc

      Readme for the lib.
      Simple instruction to setup/run examples.
      Simple instruction to setup/run Jasmine tests.

      Docs should be on readme.io or in github - TBD

      Released as NPM module on https://www.npmjs.com

       

        Attachments

          Issue Links

          There are no Sub-Tasks for this issue.

            Activity

              People

              • Assignee:
                alexey.kosenchuk Alexey Kosenchuk
                Reporter:
                alexey.kosenchuk Alexey Kosenchuk
              • Votes:
                1 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: