Please note that this is a legacy feature which is no longer supported on the latest (and greatest) sensenet version.
For a monthly subscription fee, we store all your content and data, relieving you of all maintenance-related tasks and installation, ensuring easy onboarding, easy updates, and patches.
https://www.sensenet.com/pricing
MSMQ implementation for sending server-to-server messages in sensenet.
Please note that in a cloud-based environment it is more advisable to use a more modern message provider like RabbitMQ for sensenet.
To get started, install the following NuGet package:
This is a dll-ony package, not a full sensenet component, so you only have to install the package above in Visual Studio and configure your instance.
Please make these additions in every configuration file you plan to use in a load balanced environment (e.g. web.config and [web]\Tools\SnAdminRuntime.exe.config).
Make sure your config file contains the necessary config section definitions at the beginning of the file:
<configSections>
<sectionGroup name="sensenet">
<section name="messaging" type="System.Configuration.NameValueSectionHandler" />
<section name="providers" type="System.Configuration.NameValueSectionHandler" />
</sectionGroup>
</configSections>
Please configure both the main and the security message providers.
<providers>
<add key="ClusterChannelProvider" value="SenseNet.Communication.Messaging.MsmqChannelProvider" />
<add key="SecurityMessageProvider" value="SenseNet.Security.Messaging.Msmq.MsmqMessageProvider" />
</providers>
Provide the queue names that you registered on the server (one per app domain).
<messaging>
<add key="MsmqChannelQueueName" value=".\private$\ryan1;.\private$\ryan2" />
</messaging>
Important: the order of the names is important: the dedicated local queue comes first. This means that web.config values on all web servers are different.
Similarly to main queues, security queues also need to be in the appropriate order: local queue first.
<appSettings>
<add key="SecurityMsmqChannelQueueName" value=".\private$\security1;.\private$\security2" />
</appSettings>