Cache-Konfig
Die Cache-Konfigurationsdatei enthält Informationen zu allen registrierten Caches/Clustern. Module, die die Konfigurationen lesen müssen, werden zunächst gesucht config.ncconf in der Bewerbungsmappe, also neben der Web.config. Wenn config.ncconf nicht im Anwendungsordner gefunden wird, liest es dann die Konfiguration aus dem Installationsordner.
Note
Diese Datei wird mit installiert NCache und befindet sich bei %NCHOME%\config in Windows und NCache Installieren Sie dir/config in Linux.
Cache-Konfigurationssyntax und Tags
Das config.ncconf Die Datei wird im Folgenden erläutert:
<!--
The configuration file (config.ncconf) contains the details of all the registered caches. All cache configurations are enclosed in the <configuration></configuration> tag. Whereas each cache detail is enclosed in <cache-config></cache-config>.
-->
<cache-config cache-name="demoCache" alias="" store-type="Distributed-Cache" config-id="6a49d9ce-9aa7-4312-ada6-4fec37a6e729" config-version="1">
<cache-settings inproc="False" last-modified="" auto-start="False" data-format="Serialized" serialization="Binary">
...
</cache-settings>
</cache-config>
cache-name
: Die Cache-ID. Der Cache wird unter dem Namen bekannt sein, den Sie hier angeben. Dies ist derselbe Name, den Sie beim Initialisieren des Caches angegeben haben.
store-type
: Gibt den Zweck an, für den dieser Cache verwendet wird. Kann einen der folgenden möglichen Werte haben:
Distributed-Cache
Distributed-Cache-Persistence
Pub/Sub-Messaging
Distributed-Lucene
inproc
: Bestimmt, ob der Cache als InProc (in Ihrem Anwendungsprozess) oder OutProc (in der) ausgeführt wird NCache Serviceprozess). Bei „False“ wird der Cache als OutProc ausgeführt, bei „True“ wird der Cache als InProc ausgeführt.
config-version
: Wird verwendet, um festzustellen, ob die Konfiguration geändert wurde oder nicht.
config-id
: Generiert automatisch eine eindeutige ID für die geänderte Konfiguration.
last-modified
: Enthält Informationen zur letzten Änderung in der Cache-Konfiguration.
auto-start
: Aktiviert den automatischen Start des Caches beim Cache-Start. (NCache Enterprise einzige)
data-format
: Das Format, in dem Daten im Cache gespeichert werden, kann Serialisiert oder Objekt sein.
serialization
: Das Serialisierungsformat für den Cache. Es kann entweder JSON oder Binär sein.
<logging enable-logs="True" trace-errors="True" trace-notices="False" trace-warnings="False" trace-debug="False" log-path=""/>
NCache verwaltet eine Protokolldatei zum Schreiben von Ablaufverfolgungen zu Informations- und Debugzwecken. Mithilfe dieser Tags kann der Benutzer die verschiedenen Traces aktivieren oder deaktivieren. Standardmäßig ist nur der „Fehler“-Trace aktiviert, die restlichen Traces sind deaktiviert. Die Fehlerverfolgung hat keinen Einfluss auf die Cache-Leistung, außer für andere Ablaufverfolgungen. Wir empfehlen, sie nicht in einer Produktionsumgebung zu aktivieren, da sie die Leistung beeinträchtigen NCache.
log-path
: Standardmäßig werden Protokolldateien für jeden Cache erstellt %NCHOME%\log-files in Windows und NCache Verzeichnis/Protokolldateien installieren unter Linux. Sie können jedoch einen benutzerdefinierten Pfad angeben, wenn Sie die Protokolle an anderer Stelle speichern möchten.
<performance-counters enable-counters="True" snmp-port="0"/>
Wenn dieses Attribut auf True gesetzt ist, NCache aktualisiert die veröffentlichten PerfMon-Zähler. Wenn auf „Falsch“ gesetzt, NCache aktualisiert keinen der veröffentlichten PerfMon-Zähler.
<replication-strategy synchronous="False"/>
Im Fall von Partition-Replica finden Sie dieses Tag in der Cache-Konfiguration. Die Replikationsstrategie definiert, wie Daten auf den Backup-Knoten repliziert werden.
synchronous
: Dieses Attribut kann auf True/False gesetzt werden. Wenn der Wert auf „False“ gesetzt ist, wird der Datenvorgang asynchron auf dem Backup-Knoten repliziert. Wenn es auf „True“ gesetzt ist, wird der Datenvorgang synchron auf dem Backup-Knoten repliziert.
<pipelining enabled="False" batch-interval="250usec"/>
Um Pipelining zu aktivieren, setzen Sie das Tag „Pipelining aktiviert“ auf „True“ und geben Sie die Zeit in Mikrosekunden (µs) für das Batch-Intervall ein. Der Standardwert beträgt 250 µs und die minimalen und maximalen Werte betragen 50 µs bzw. 5000 µs.
<compression enable-compression="False" threshold="100kb"/>
Dieses XML-Tag gibt an, ob die Elemente, die über dem angegebenen Schwellenwert liegen, auf der Clientseite komprimiert/dekomprimiert werden sollen.
enable-compression
: Um die Komprimierung zu aktivieren, setzen Sie dieses Attribut auf True, andernfalls auf False.
threshold
: Elemente, die größer als der im Schwellenwertattribut angegebene Wert sind, werden nur dann auf der Clientseite komprimiert/dekomprimiert, wenn die Komprimierung aktiviert ist.
Gemäß dem oben genannten Komprimierungs-Tag-Beispiel werden auf der Clientseite nur Elemente komprimiert/dekomprimiert, die größer als 100 KB sind.
<client-activity-notification enabled="False" retention-period="5sec"/>
Enabled
: Aktivieren Sie diese Option, um Clients den Empfang von Benachrichtigungen zu ermöglichen, wenn ein anderer Client eine Verbindung herstellt oder trennt.
retention-period
: Der Aufbewahrungszeitraum ist das Zeitintervall, nach dem ein getrennter Client als getrennt betrachtet wird.
<cache-notifications item-remove="False" item-add="False" item-update="False"/>
notifications
: XML-Tag gibt das registrierte Ereignis im Cache an.
Item-add
: Dieses Attribut kann auf True oder False gesetzt werden. Wenn auf „True“ gesetzt, wird benachrichtigt, wenn ein Element zum Cache hinzugefügt wird. Wenn der Wert auf „Falsch“ gesetzt ist, wird ebenfalls keine Benachrichtigung ausgelöst, wenn das Element zum Cache hinzugefügt wird.
Item-remove
: Dieses Attribut kann auf True oder False gesetzt werden. Wenn auf „True“ gesetzt, wird benachrichtigt, wenn ein Element aus dem Cache entfernt wird. Wenn der Wert auf „Falsch“ gesetzt ist, wird ebenfalls keine Benachrichtigung ausgelöst, wenn das Element aus dem Cache entfernt wird.
Item-update
: Dieses Attribut kann auf True oder False gesetzt werden. Wenn auf „True“ gesetzt, wird benachrichtigt, wenn ein Element im Cache aktualisiert wird. Wenn die Einstellung auf „Falsch“ gesetzt ist, wird ebenfalls keine Benachrichtigung ausgelöst, wenn das Element im Cache aktualisiert wird.
<cleanup interval="15sec"/>
cleanup
: XML-Tag gibt das periodische Intervall an, nach dem das Element auf Ablauf überprüft wird:
Interval:
Bei der Einstellung „15 Sekunden“ bedeutet dies, dass die Ablaufprüfung alle 15 Sekunden durchgeführt wird.
<storage type="heap" cache-size="1024mb"/>
storage
: XML-Tag gibt die speicherbezogenen Details für den Cache an:
Type
: Dieses Attribut kann derzeit nur auf „heap“ gesetzt werden NCache Unterstützt nur Heap-basierten Speicher.
Cache-size
: Dieses Attribut gibt die Obergrenze der Cachegröße in MB an.
<eviction-policy enabled-eviction="True" default-priority="normal" policy="lru" eviction-ratio="5%"/>
Dieses XML-Tag gibt an, ob die Räumung durchgeführt werden soll oder nicht. Wenn die Räumung aktiviert ist, entfernt der Cache das vorhandene Element, um neue aufzunehmen. Ausstehende Elemente werden basierend auf der Räumungsstrategie entfernt.
Enabled-eviction
: Um die Räumung zu aktivieren, setzen Sie dieses Attribut auf True, andernfalls auf False.
Policy
: Dieses Attribut gibt die zu verwendende Räumungsrichtlinie an. Eine Räumungsrichtlinie kann eine der folgenden sein:
- LRU (zuletzt verwendet) (NCache Enterprise einzige)
- LFU (am seltensten verwendet) (NCache Enterprise einzige)
- Prioritätsbasiert
Default-priority
: Gibt die Standardpriorität an, die einem Element zugeordnet ist, wenn für dieses Element keine Priorität angegeben ist. Dieses Attribut kann wie folgt festgelegt werden:
- GUTE
- Über Normal
- Normal
- Unter dem Normalwert
- Sneaker
Dies gilt nur im Falle einer vorrangigen Räumung.
Eviction-ratio
: Gibt an, wie viel Prozent der Daten bei der Räumung entfernt werden sollen.
<expiration-policy enabled="True">
<absolute-expiration longer-enabled="False" longer-value="0" default-enabled="False" default-value="0"/>
<sliding-expiration longer-enabled="False" longer-value="0" default-enabled="False" default-value="0"/>
</expiration-policy>
enabled
: Aktiviert die Ablaufrichtlinie.
longer-enabled
: Gibt an, ob ein längerer Ablauf aktiviert ist. Wenn True, sollte der Wert bereitgestellt werden.
longer-value
: Wenn „longer-enabled“ „True“ ist, wird dieser Wert für den Ablauf verwendet.
default-enabled
: Gibt an, ob der Standardablauf aktiviert ist. Wenn True, sollte der Wert ebenfalls bereitgestellt werden.
default-value
: Wenn die Standardeinstellung „True“ ist, wird dieser Wert für den Ablauf verwendet.
<security>
<user id="john_smith" dn="CN=John Smith,OU=admin,DC=yourdomain,DC=org"/>
<user id="david_watson" dn="CN=David Watson,OU=admin,DC=yourdomain,DC=org"/>
<group id="DEV" dn="CN=DEV,OU=admin,DC=yourdomain,DC=org"/>
</security>
user
: Dieses Attribut gibt die Anmeldeinformationen des Administratorbenutzers an.
id
: Gibt die ID des Benutzers an.dn
: Gibt den Distinguished Name des Benutzers an.
group
: Dieses Attribut gibt die Gruppendetails an.
id
: Gibt den Namen der Gruppe an.dn
: Gibt den Distinguished Name der Gruppe an.
<cache-topology topology="partition-replica">
<cluster-settings operation-timeout="60sec" stats-repl-interval="2sec" use-heart-beat="True">
...
</cluster-settings>
</cache-topology>
Dieses XML-Tag wird zur Angabe der Kommunikationsdetails innerhalb des Clusters verwendet. Es enthält außerdem ein Untertag (Kanal), das die Kommunikationsdetails des Clusters weiter definiert:
Bitte beachten Sie, dass dieses Tag im lokalen Cache nicht vorhanden ist.
topology
: Gibt an, welcher Topologie der Cluster folgt. Es kann eine der folgenden sein, wie von bereitgestellt NCache:
- Partition-Replikat-Topologie (NCache Enterprise einzige)
- Replizierte Topologie
- Partitionierte Topologie
- Spiegeltopologie
operation-timeout
: Bestimmt das Zeitlimit einer Verbindung zwischen den Servern, wenn ein Server im Cluster nicht antwortet.
stats-repl-interval
: (Statistics Replication Interval) das Intervall, das dem Cluster zur Verfügung gestellt wird, um seine Informationen zwischen seinen Servern zu synchronisieren.
use-heart-beat
: HeartBeat wird verwendet, um die Konnektivität zwischen Knoten zu überwachen.
<data-persistence store-name="demoPersistenceCache_db">
<provider-settings provider-type="ncache-persistence" connection-string="lxxKK7Xqh0Tpm3rPvPOmYcCRYyeUV8f8NswyNRFum/uA0HXudbm6vWkXcnJ33GE9"/>
<operation-setting persistence-interval="1000ms" persistence-retries="3" persistence-interval-longer="60sec"/>
</data-persistence>
Dieses Tag data-persistence
wird verwendet, um die Einstellungen Ihres verteilten Caches mit Persistenz zu bestimmen. Es wird nur angezeigt, wenn Sie Ihre eingestellt haben store-type
as distributed-cache-persistence
. Es hat die folgenden Parameter:
provider-type
: Dieser Parameter gibt den Typ des Persistenzanbieters an, den Sie in Ihrem verwenden distributed-cache-persistence
. Es hat Wert ncache-persistence
.
connection-string
: Eine gültige Verbindungszeichenfolge, die die Verbindung mit dem bestimmt provider-type
spezifiziert.
persistence-interval
: Dies ist das Intervall, nach dem die in der Persistenzwarteschlange vorhandenen Vorgänge auf den Persistenzspeicher angewendet werden.
persistence-retries
: Dies ist die Anzahl der Wiederholungsversuche im Falle von Persistenz-Batch-Fehlern, nach denen das Persistenzintervall auf „Persistenzintervall länger“ verschoben wird.
persistence-interval-longer
: Wenn mehrere aufeinanderfolgende Fehler die Persistenzwiederholungsversuche erreichen, wird das Intervall auf „Persistenzintervall länger“ gesetzt.
<caching-modules>
<module name="lucene-net-4.8" enable="True">
<parameters name="IndexPath" value="C:\ProgramData\ncache\lucene-index\lucene"/>
</module>
</caching-modules>
<caching-module>
: Dieses XML-Tag gibt alle Module und ihre jeweiligen Parameter an, die in einem Cache registriert sind. Es erscheint nur, wenn Sie Ihre festgelegt haben store-type
as distributed-lucene
.
Unter dem <module>
Tag, du hast:
name
: Gibt den Namen des Moduls an. Das Modul wird anhand des Namens identifiziert, den Sie hier angeben. Dieser Name muss eindeutig sein.
enable
: Aktiviert/deaktiviert das bereitgestellte Modul.
Unter dem <parameters>
Tag, du hast:
name
: Gibt die Liste der für ein Modul hinzugefügten Parameter an.
value
: Gibt den Wert an, der für den hinzugefügten Parameter bereitgestellt wird.
<cluster-connection-settings cluster-port="7806" port-range="1" connection-retries="2" connection-retry-interval="2secs" join_retry_count="24" join_retry_timeout="5"/>
<cluster-connection-settings>
: Dieses XML-Tag gibt die Details der Portkonnektivität und anderer Kommunikationsoptionen zwischen den Clusterservern an:
cluster-port
: Die Verbindung wird über einen TCP-Port geleitet; Dieser Wert definiert den Port, den er belegt.
port-range
: Wenn bei der Initialisierung der bereitgestellte Port von einer anderen Anwendung verwendet wird, versucht sie, ihre Verbindung auf dem um 1 erhöhten Port herzustellen. Hierzu wird der Bereich angegeben, dh in welchem Bereich nach einem verfügbaren TCP-Port gesucht werden soll.
connection-retries
: Wenn die Verbindung zwischen den Knoten fehlschlägt, wird hiermit definiert, wie viele Wiederholungsversuche durchgeführt werden müssen, damit es sich um einen dauerhaften Fehler handelt.
connection-retry-interval
: Das Intervall zwischen Verbindungswiederholungen wird in diesem Wert definiert.
<alerts>
<email-notification email-notification-enabled="False" sender="" smtp-server="" smtp-port="0" ssl="False" authentication="False" sender-login="" sender-password=""/>
<alerts-types cache-stop="False" cache-start="False" node-left="False" node-joined="False" state-transfer-started="False" state-transfer-stop="False" state-transfer-error="False" cache-size="False"/>
</alerts>
Wenn Ereignisbenachrichtigungen per E-Mail (nur Enterprise-Funktion) erforderlich sind, werden die Informationen für die Einrichtung hier konfiguriert:
Email-notification
: Enthält alle Informationen zur E-Mail-Adresse.
Email-notification-enabled
: Aktiviert die Benachrichtigung per E-Mail.
Sender
: Geben Sie das E-Mail-Konto an, von dem die E-Mail-Benachrichtigungen gesendet werden.
Smtp-server
: Geben Sie das Gateway zum Senden von E-Mail-Benachrichtigungen an.
Smtp-port
: Die Portnummer, die zum Weiterleiten von E-Mails verwendet wird.
SSL
: Secure Socket Layer zur Aktivierung der SSL-Sicherheit.
Authentication
: Wenn eine Authentifizierung erforderlich ist, muss dies „True“ sein.
Sender-login
: Wenn eine Authentifizierung erforderlich ist, geben Sie den Anmeldenamen an.
Sender-password
: Hier wird das Authentifizierungspasswort eingegeben.
Alert-Types
: Gibt an, bei welchem Ereignis eine automatisierte E-Mail generiert werden soll.
Cache-stop
: Wenn der Cache zu irgendeinem Zeitpunkt gestoppt wird, wird eine E-Mail-Benachrichtigung generiert.
Cache-start
: Beim Start des Caches wird eine E-Mail-Benachrichtigung generiert.
Node-left
: Wenn ein Serverknoten den Cluster verlässt oder aus irgendeinem Grund nicht auf einen Serverknoten zugegriffen werden kann, wird eine E-Mail-Benachrichtigung gesendet, sofern dies aktiviert ist.
Node-joined
: Beim Beitritt eines Serverknotens wird eine E-Mail-Benachrichtigung generiert.
State-Transfer-started
: Um zu benachrichtigen, wann immer eine Statusübertragung stattgefunden hat, die beim Durchführen des Lastausgleichs erfolgt, wird eine E-Mail-Benachrichtigung generiert.
Cache-size
: Immer wenn die Cachegröße mit Hot Apply geändert wird, wird eine E-Mail-Benachrichtigung generiert.
<sql-dependency use-default="False"/>
Dieses XML-Tag gibt die Warteschlangen- und Service-SQL-Benachrichtigungsarchitektur an. (Nur Enterprise)
Use-default
: Das Attribut kann auf True/False gesetzt werden. Wenn das Attribut auf „True“ gesetzt ist, werden der Standard-SQL-Abhängigkeitsdienst und die Standardwarteschlange zur Laufzeit erstellt. Wenn das Attribut auf „Falsch“ gesetzt ist, werden der benutzerdefinierte SQL-Abhängigkeitsdienst und die Warteschlange erstellt und von verwendet NCache.
Siehe auch
Clientseitige Konfigurationen
Bridge-Konfig
Sicherheitskonfiguration