...
Client protocol reuse is the quickest way to add platform compute to Ignite, and the most universal (easily implemented in any language). However, it is not the most performant (~40us overhead per API call - see Performance section below).
We expect to add an alternative, more performant mechanism in the future (such as embedded CLR with JNI interop, similar to Ignite 2.x).
...
- Include the “special client” binary (.dll) with the database package (zip , Docker, etcdownload)
- The .dll is a “console app” in .NET terms - another project and assembly
- Later we can allow the users to deploy worker processes in a custom way: instead of auto-generating a “secret id” for the executor connection, we let the user set it manually (on server and client) and deploy the client anywhere
- Not a NuGet package - internal use only
- The .dll is OS-independent and requires .NET runtime to run
.NET Runtime Dependency
- Zip download - no runtime (no Java => , no .NET)
- RPM, DEB - no runtime (no Java => , no .NET)
- Docker - Slim, Medium, Fat images
- Good for demos and POCs
- Only Fat image includes all possible runtimes for Compute jobs
Implementing a .NET Compute Job
...