Standalone Nodes
An Ignite.NET node can be started within the code of a .NET application by using Ignition.Start()
or as a separate process with Apache.Ignite.exe
executable located under {apache_ignite_release}\platforms\dotnet\bin
folder. Internally Apache.Ignite.exe
references Apache.Ignite.Core.dll
and uses Ignition.Start()
as you would normally do, and can be configured with command line arguments, listed below, by passing them as command line options or setting directly in Apache.Ignite.exe.config
file.
Configuring Standalone Node via Command Line
Below you can see basic Ignite parameters that can be passed as command line arguments when a node is started with Apache.Ignite.exe
executable:
Command Line Option | Meaning |
---|---|
-IgniteHome | Path to Ignite installation directory (if not provided IGNITE_HOME environment variable is used) |
-ConfigFileName | Path to the app.config file (if not provided Apache.Ignite.exe.config is used). |
-ConfigSectionName | Name of the IgniteConfigurationSection in the configuration file to use. |
-SpringConfigUrl | Path to Spring configuration file. |
-JvmDllPath | Path to JVM library jvm.dll (if not provided JAVA_HOME environment variable is used). |
-JvmClasspath | Classpath passed to JVM (enlist additional jar files here). |
-SuppressWarnings | Whether to print warnings. |
-J<javaOption> | JVM options passed to created JVM. |
-Assembly | Additional .NET assemblies to be loaded. |
-JvmInitialMemoryMB | Initial Java heap size, in megabytes. Maps to -Xms Java parameter. |
-JvmMaxMemoryMB | Maximum Java heap size, in megabytes. Maps to -Xmx Java parameter. |
/install | Installs Ignite Windows service with provided options. |
/uninstall | Uninstalls Ignite Windows service. |
Apache.Ignite.exe -ConfigFileName=c:\ignite\my-config.xml -ConfigSectionName=igniteConfiguration -Assembly=c:\ignite\my-code.dll -J-Xms1024m -J-Xmx2048m
Configuring Standalone Node via XML Files
A standalone node can be configured with app.config XML or Spring XML (or both). Every command line argument, listed above, can also be used in Apache.Ignite.exe.config
under appSettings
section:
<configuration>
<configSections>
<section name="igniteConfiguration" type="Apache.Ignite.Core.IgniteConfigurationSection, Apache.Ignite.Core" />
</configSections>
<igniteConfiguration springConfigUrl="c:\ignite\spring.xml">
<cacheConfiguration name="myCache" cacheMode="Replicated" />
</igniteConfiguration>
<appSettings>
<add key="Ignite.Assembly.1" value="my-assembly.dll"/>
<add key="Ignite.Assembly.2" value="my-assembly2.dll"/>
<add key="Ignite.ConfigSectionName" value="igniteConfiguration" />
</appSettings>
</configuration>
This example defines igniteConfiguration
section and uses it to start Ignite via Ignite.ConfigSectionName
setting. It also references Spring XML configuration file, which will be combined with specified configuration.
Loading User Assemblies
Some Ignite APIs involve remote code execution and require you to load assemblies with your code into Apache.Ignite.exe via -Assembly
command line argument or Ignite.Assembly
app setting.
The following functionalities require a corresponding assembly to be loaded on all nodes:
- ICompute (supports automatic loading, see Remote Assembly Loading)
- Scan Queries with filter
- Continuous Queries with filter
- ICache.Invoke methods
- ICache.LoadCache with filter
- IServices
- IMessaging.RemoteListen
- IEvents.RemoteQuery
Missing User Assemblies
If a user assembly cannot be located a
Could not load file or assembly 'MyAssembly' or one of its dependencies
exception will be thrown.Note that it is also necessary to add any dependencies of the user assembly to the list.
Ignite.NET as Windows Service
Apache.Ignite.exe can be installed as a Windows Service so it is started automatically via /install
command line argument. All other command line arguments will be preserved and used each time the service starts. Use /uninstall
to uninstall the service.
Apache.Ignite.exe /install -J-Xms513m -J-Xmx555m -ConfigSectionName=igniteConfiguration
Updated over 4 years ago