javaopenstackjcloudspkgcloudopenstack4j

OpenStack criteria to choose API (NodeJS versus Java)


I am referring to OpenStack SDK for NodeJS (pkgcloud) and Java (apache jclouds, openstack4j, OpenStack Java SDK). Is there any benefit of using NodeJS (and pkgcloud behind it) for developing application compared to using Java SDK.

If NodeJS is your answer, is it because NodeJS SDK (pkgcloud) provides asynchronous calls and Java APIs (e.g. jclouds etc) don't provide asynchronous calls.

Or my assumption is wrong that two different language SDKs provide different types of calls (synchronous versus asynchronous). I personally don't believe that something which is provided by one language SDK is not provided by another language SDK but I didn't find in documentation about Java SDK if they support asynchronous calls to open stack.

Is there any comparison and benchmark posted some where between NodeJS SDK and Java SDK for OpenStack?


Solution

  • jclouds does not provide asynchronous support; instead users can submit many Callable objects to an ExecutorService and wait for their completion. In practice, providers rate-limit requests so supporting thousands of asynchronous concurrent requests should not pose a real issue. Instead they provide bulk APIs such as OpenStack Swift multi-delete.