Particular ServiceControl : Where to put RavenDB Configuration options?

223 views Asked by At

I'm confused as to where the RavenDB Configuration options such as Raven/MemoryCacheLimitMegabytes or Raven/Esent/CacheSizeMax should be placed when running Particular ServiceControl with embedded RavenDB. Specifically I want to limit memory consumption so RavenDB will play nice with other applications running on the server.

Per the RavenDB configuration options webpage here. It talks about using the Raven.Server.exe.config file, but this doesn't appear to exist. Neither does Raven.Server.exe.

The only other file that looks like it may be used in its place is ServiceControl.exe.config which is used to configure ServiceControl. Is this the correct file to add the RavenDB configuration options to? Particular documentation doesn't specifically go into detail about where they should be entered on their page here.

Full path: C:\Program Files (x86)\Particular Software\Particular.ServiceControl\ServiceControl.exe.config

Thanks!

1

There are 1 answers

0
Sean Feldman On BEST ANSWER

Is this the correct file to add the RavenDB configuration options to?

Yes.

RavenDB used by ServiceControl is an embedded RavenDB, not a standalone server. Therefore the settings for RavenDB need to be provided via ServiceControl.exe.config and not Raven.Server.exe.config.

For example, to provide Esent maximum cache size, you'd need to add to the ServiceControl.exe.config file under appSettings a new entry with a key Raven/Esent/CacheSizeMax and a value you wish to set. For example:

<?xml version="1.0" encoding="utf-8"?>
  <configuration>
    <appSettings>
       <add key="Raven/Esent/CacheSizeMax" value="512" />