Самая большая ценность NCache заключается в том, что его можно использовать в качестве OutProc
распределенного кэша в памяти, где кэш находится внутри самого процесса NCache; это отличается от кэша InProc
, где доступ будет ограничен одним процессом.
Вам необходимо настроить OutProc
кеш, работающий либо на отдельном выделенном сервере кэширования (или кластере), либо на том же сервере, что и ваши службы.
См. http://www.alachisoft.com/resources/docs/ncache/admin-guide/local-cache.html для получения дополнительной информации о кэшах OutProc
и InProc
.
После установки сервера NCache вы можете создать свою конфигурацию кэширования, изменив файл config.ncconf
, который по умолчанию находится в C:\Program Files\NCache\config
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<configuration>
<cache-config cache-name="MyOutProcCacheName">
<cache-settings inproc="False">
<logging enable-logs="True" trace-errors="True" trace-debug="False" log-path=""/>
<performance-counters enable-counters="True" snmp-port="0"/>
<cache-notifications item-remove="False" item-add="False" item-update="False"/>
<cleanup interval="15sec"/>
<storage type="heap" cache-size="2024mb"/>
<eviction-policy default-priority="normal" eviction-ratio="5%"/>
<cache-topology topology="local-cache"/>
<client-death-detection enable="False" grace-interval="60sec"/>
</cache-settings>
</cache-config>
</configuration>
Приведенная выше конфигурация создаст кэш OutProc
на локальном сервере (см. cache-topology
). При необходимости его можно настроить как различные зеркальные, секционированные или реплицированные кэши в кластерной среде (см. topologies.html" rel="nofollow noreferrer">http://www.alachisoft.com/resources/docs/ncache/admin-guide/cache-topologies.html).
Затем вы можете запустить службу NCache
и подключиться к службе из своего приложения, а также инициализировать подключение к именованному экземпляру кэша в приведенной выше конфигурации.
Cache outProcCache = NCache.InitializeCache("MyOutProcCacheName");
Вы также можете настроить подключение к серверу/службе NCache
полностью в коде, а не в файле client.ncconf
, отправив параметры конфигурации в метод InitializeCache
выше.
CacheInitParams connectionParams = new CacheInitParams();
connectionParams.ServerList = new CacheServerInfo[]{ new CacheServerInfo("ncacheIp", ncachePort) };
Cache outProcCache = NCache.InitializeCache("MyOutProcCacheName", connectionParams);
person
Sivart
schedule
25.01.2019