Erweiterte Themen¶
Diese fortgeschrittenen Themen erfordern Änderungen an der web.config-Datei, die für den reibungslosen Betrieb von CentreStack entscheidend ist. Daher wird nicht empfohlen, die web.config-Datei zu ändern, ohne zuvor den Gladinet-Support zu konsultieren.
Aufteilung der Datenbank¶
Die Datenbank enthält zwei Arten von Informationen.
Die erste Art von Informationen sind die Konfigurationsdaten, die relativ statisch sind. Zum Beispiel Benutzername, Benutzer-E-Mail, vom Benutzer veröffentlichte freigegebene Dateien und Ordner usw. Diese Art von Informationen ist relativ klein. Sie kann auf 5000 Bytes pro Benutzer geschätzt werden. Also, wenn Sie 2000 Benutzer haben, kann es auf 10 MB geschätzt werden.
Die zweite Art von Informationen ist relativ volatiler. Zum Beispiel das Änderungsprotokoll der Datei, die Überwachungsspur und die Dateiliste für den Index. Es kann mit 100 Dateiänderungen pro Benutzer pro Tag geschätzt werden und jede Dateiänderung kann auf 1000 Bytes für die Datenbankspeicherung geschätzt werden. Also für einen 15-tägigen Zeitraum (Standardverlauf des Änderungsprotokolls) kann es auf 100*1000*15 = 1,5MB pro Benutzer für einen 15-tägigen Zeitraum geschätzt werden. Wenn Sie HIPAA-Konformität benötigen, kann der Standardverlauf des Änderungsprotokolls deutlich länger sein, so dass dieser Teil der Datenbank viel größer sein wird.
Aus Leistungs- und regulatorischen Gründen wird empfohlen, die Datenbank in zwei separate Datenbanken aufzuteilen, eine, die statische Informationen enthält und eine, die relativ mehr flüchtige Informationen enthält.
Die sekundäre Datenbank (für volatilere Daten) kann entweder eine MySQL-Datenbank oder eine Microsoft SQL-Datenbank sein.
Um die Datenbank aufzuteilen, erstellen Sie zunächst eine neue Datenbank, die dazu verwendet wird, die flüchtigen Informationen zu speichern. Erstellen Sie einen Datenbankbenutzer und gewähren Sie diesem Benutzer vollen Zugriff auf die Datenbank (entspricht db_owner). Nachdem die Datenbank und der Benutzer erstellt wurden, melden Sie sich als Cluster-Administrator in der CentreStack-Verwaltungskonsole an und navigieren Sie zu Cluster-Dashboard > Cluster-Einstellungen > Änderungsprotokoll. Aktualisieren Sie die Einstellung „Logging DB Connection String“ mit einer entsprechenden Verbindungszeichenfolge:

Beispiel für eine Verbindungszeichenfolge für MySQL-Datenbank
Server=localhost;Port=3306;Database=gladinet;Uid=root;Pwd=password;
Beispiel für eine Verbindungszeichenfolge für Microsoft SQL-Datenbank
Data Source=server_name;Initial Catalog=logging_db_name;User Id=user_id;Password=user_password;
Authentifizierungsalgorithmus auf Version 2 ändern¶
Wenn Sie eine neue Installation von CentreStack ohne vorhandene Benutzer haben, empfehlen wir Ihnen, den Authentifizierungsalgorithmus fest auf Version 2 zu setzen.
Sie können die Datei web.config im Stammordner des Installationsverzeichnisses finden (dieselbe web.config-Datei, auf die im vorherigen Abschnitt verwiesen wurde) und eine Zeile im Abschnitt <appSettings file=“branding.config“> hinzufügen.
<add key="sys_access_ver" value="2" />
Ändern Sie den Synchronisierten Uploader in einen Asynchronisierten Uploader¶
Unter C:Program Files (x86)CentreStack(oder dem Installationsverzeichnis) suchen Sie nach dem UploadDownloadProxy und identifizieren Sie die web.config-Datei. Finden Sie die Zeile mit dem SyncedStorageProxiedPutUploadHandler und ändern Sie diese zu StorageProxiedPutUploadHandler.
Diese Optimierung funktioniert möglicherweise nicht auf allen Systemen, daher wird empfohlen, dass Sie das Hochladen per Drag-and-Drop im Webportal testen, nachdem Sie die Änderung vorgenommen haben. Wenn es für Ihren IIS nicht funktioniert, können Sie die Änderung rückgängig machen oder den Gladinet-Support konsultieren.
<add name="storageuploadex" path="proxiedupload.up" verb="PUT"
type="GladinetStorage.SyncedStorageProxiedPutUploadHandler"
resourceType="Unspecified" preCondition="integratedMode" />
Zonenunterstützung¶
Wenn Sie zwei unabhängige CentreStack-Cluster haben, zum Beispiel einen Cluster in den USA und einen Cluster in Großbritannien, können Sie die Zonenunterstützung nutzen, um die beiden Cluster miteinander zu verbinden. Der Vorteil der Verwendung von Zonen ist, dass die Anmeldeanfrage des Endbenutzers automatisch an die Zone weitergeleitet wird, zu der der Benutzer gehört.
Skalierbarkeitstuning¶
CentreStack basiert auf ASP.NET und WCF. Standardmäßig verfügen sowohl ASP.NET als auch WCF über Drosselungskontrollparameter, die wir anpassen und entfernen können. Bitte beziehen Sie sich auf diesen MSDN-Artikel zur Leistungsoptimierung:
http://msdn.microsoft.com/de-de/library/ff647813.aspx

(Bildquelle: http://msdn.microsoft.com/de-de/library/ff647813.aspx)

(Bildquelle: http://msdn.microsoft.com/de-de/library/ff647813.aspx)
Tuning #1 – namespace/web.config¶
Es gibt drei Parameter bezüglich maximal gleichzeitiger Anrufe, gleichzeitiger Sitzungen und gleichzeitiger Instanzen.
<serviceThrottling
maxConcurrentCalls="100"
maxConcurrentSessions="100"
maxConcurrentInstances="1000" />
Dies ist in der Datei <CENTRESTACKInstallDir>namespaceweb.config festgelegt
Es können bereits Blöcke von serviceBehaviors und Verhaltensblöcke vorhanden sein. Sie können einfach den Block serviceThrottling hinzufügen.
<serviceBehaviors>
<behavior name="WcfWebService.Service1Behavior">
<serviceThrottling
maxConcurrentCalls="100"
maxConcurrentSessions="100"
maxConcurrentInstances="1000" />
</behavior>
</serviceBehaviors>
Tuning #2 – aspnet.config¶
Die aspnet.config befindet sich unter c:windowsMicrosoft.NETFramework64v4.0.30319
system.web ist ein Element von <configuration>, sodass Sie es innerhalb des <configuration>-Blocks hinzufügen können.
<system.web>
<applicationPool
maxConcurrentRequestsPerCPU="5000"
requestQueueLimit="20000"/>
</system.web>
Tuning #3 – machine.config¶
Machine.config befindet sich unter %windir%Microsoft.NETFramework64[version]configmachine.config
(%windir% ist typischerweise c:windows. [version] ist 4.0.30319 für das .NET Framework 4)
Prozessmodell
processModel befindet sich unter <system.web> und <system.web> ist unter <configuration>. Wahrscheinlich ist der processModel-Block bereits vorhanden, aber mit autoConfig auf true gesetzt. Wir können dies ändern, indem wir es auf false setzen und mit den unten angegebenen Attributen.
<processModel
autoConfig="false"
maxWorkerThreads="500"
maxIoThreads="500"
minWorkerThreads="2"/>
Verbindungsmanagement
<system.net> ist ein Block unterhalb von <configuration>. Typischerweise, wenn <system.net> noch nicht existiert, kann der Block am Ende der Konfigurationsdatei hinzugefügt werden, direkt vor dem schließenden Tag von <configuration>.
<system.net>
<connectionManagement>
<add address="*" maxconnection="20000"/>
</connectionManagement>
</system.net>
Tuning #4 – appConcurrentRequestLimit¶
appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:50000
Benötigen Sie mehr Informationen?¶
Kontaktieren Sie den Gladinet Support (support@gladinet.com) für weitere Informationen.