Heim - Internet
Der aktuellen Verbindung ist keine Konfiguratorsitzung zugewiesen. Wir werfen Benutzer aus der Server-Informationsbasis

Für die routinemäßige Wartung der 1C:Enterprise 8-Informationsdatenbank ist es häufig erforderlich, exklusiven Zugriff auf die Datenbank zu erhalten. Um beispielsweise eine Datenbanksicherung durchzuführen oder routinemäßige Wartungsarbeiten am DBMS-Server durchzuführen (Neuindizierung usw.), müssen Sie alle aktiven Sitzungen trennen.

Schauen wir uns eine einfache Möglichkeit an, Benutzer zu trennen Informationsbasis Nutzung der Standardfunktionalität des 1C:Enterprise-Servers.

Standardfunktionalität

Lassen Sie mich gleich reservieren, dass wir über die Client-Server-Version von 1C:Enterprise 8 sprechen werden. Um Sitzungen zu deaktivieren, gehen wir zur Serververwaltungskonsole. Dort finden wir die benötigte Informationsbasis in der Liste:

Stellen Sie in den Eigenschaften der Informationssicherheit die Option „Blockierung des Sitzungsstarts ist aktiviert“ ein. In diesem Fall müssen Sie möglicherweise einen Benutzernamen/ein Passwort angeben Konto Administrator der Informationsbasis.

Vergessen Sie nicht, den Sitzungssperrzeitraum festzulegen. Sie sollten außerdem sicherstellen, dass Sie alle Sitzungen stoppen müssen, während Sitzungen blockiert sind Hintergrundjobs. Dies geschieht über die Option „Blockierung von Routineaufgaben ist aktiviert“.

Bei Bedarf können Sie den Text der Nachricht an Benutzer festlegen, an die sie 5 Minuten vor der Sperrung der Sitzungen benachrichtigt werden, sowie den Berechtigungscode für den Zugriff auf die Infobase während des Sperrzeitraums der Sitzung.

Mit dem Berechtigungscode können Sie sich bei der Infobase anmelden, um routinemäßige Wartungsarbeiten durchzuführen, während andere Sitzungen inaktiv sind. Sie müssen den Berechtigungscode eingeben, wenn Sie über die Parameter eine Verbindung zur Datenbank herstellen. So sieht beispielsweise der an den Server übergebene Parameter aus, wenn der Berechtigungscode „123456“ lautet.

Durch diese Anmeldung in der Datenbank erhalten wir exklusiven Zugang zur Informationsbasis. Andere Sitzungen können nicht an uns teilnehmen.

Die Benutzerbenachrichtigung, dass Sitzungen blockiert sind, sieht folgendermaßen aus (abhängig von der vom Administrator eingegebenen Nachricht). Es erscheint jede Minute 5 Minuten vor der Sperrfrist.

Wenn der Sitzungssperrzeitraum beginnt, erscheint zunächst eine Benachrichtigung:

Danach endet die Sitzung.

Aktive Sitzungen können auch deaktiviert werden, indem Sie sie aus der Liste der aktiven Sitzungen entfernen. Diese Aktion ist manchmal erforderlich, um blockierte Sitzungen zu beenden.

In der Praxis ist es besser, die Trennung der Benutzer im Voraus zu kommunizieren, um das Risiko des Verlusts von von Benutzern eingegebenen, aber noch nicht gespeicherten Daten zu verringern.

1C 8.3 Sitzungsparameter— eine Variable, die den Wert des gewünschten Parameters für die Dauer der Benutzersitzung speichert. Im Wesentlichen handelt es sich dabei um eine Art globale Variable, die an die Sitzung des aktuellen Benutzers gebunden ist.

Verwenden von Sitzungsparametern in 1C

Sitzungsparameter werden nur programmgesteuert festgelegt; es gibt keine universelle Schnittstelle zum Festlegen von Sitzungsparametern im System. Sie werden normalerweise beim Systemstart im „Sitzungsmodul“ festgelegt. Wenn ein Parameter nicht definiert ist, wird beim Zugriff darauf ein Fehler ausgelöst.

Beispiel für die Einstellung eines 1C-Sitzungsparameters

Schauen wir uns ein typisches Beispiel für die Verwendung von Sitzungsparametern an – das Festlegen des aktuellen Benutzers. Ich werde ein Beispiel aus der Vorbereitung nehmen.

Im Metadatenbaum werden wir erstellen neuer Parameter session – CurrentUser, weisen Sie ihm einen Typ zu – DirectoryLink.Individuals:

Holen Sie sich 267 Video-Lektionen zu 1C kostenlos:

Im Sitzungsmodul erstellen wir eine Prozedur, in der der aktuelle Sitzungsparameter ermittelt wird:

Verfahrenscode:

Verfahren zum Festlegen von Sitzungsparametern (erforderliche Parameter) // auf der Suche nach physischem Person nach Benutzernamen TechUser = Verzeichnisse. Einzelpersonen. FindByName(Benutzername()) ; //Wenn nicht gefunden, erstelle ein neues Wenn TechUser. Empty() Then NewUser = Verzeichnisse. Einzelpersonen. CreateItem() ; NeuerBenutzer. Name = Benutzername() ; NeuerBenutzer. Schreiben() ; CurrentUser = NeuerBenutzer. Link; EndIf ;

// Weisen Sie dem Sitzungsparameter CurrentUser einen Link zum Personenverzeichnis zu

Sitzungsparameter. CurrentUser = CurrentUser;

  • Ende des Verfahrens
  • Der Unterschied zwischen den Konzepten Sitzung und Verbindung in 1C:Enterprise 8
  • Was lernen Sie aus diesem Artikel?

Was sind die Unterschiede zwischen einer Sitzung und einer Verbindung? Diese scheinbar einfache Frage zur 1C:Expert-Prüfung verwirrt viele. Trotz umfangreicher Programmiererfahrung kann nicht jeder Fachmann eine klare und richtige Antwort formulieren.

In diesem Artikel werden wir eine detaillierte Analyse dieses Problems liefern. Schauen wir uns zunächst die Konzepte Sitzung und Verbindung in 1C:Enterprise separat an. Bitte beachten Sie, dass die Informationen für die Plattformversionen 8.2.x und 8.3.x relevant sind.

Sitzung 1C

Sehen wir uns das Administratorhandbuch an. Es definiert das Konzept einer Sitzung wie folgt:

Die Sitzung definiert den aktiven Benutzer der Infobase und den Kontrollfluss dieses Benutzers.

Wir können sagen, dass der Servercluster keine Benutzer sieht, sondern Sitzungen und Sitzungsdaten. Grundsätzlich verfügt die Cluster-Management-Konsole nicht über einen Abschnitt „Benutzer“, der Cluster versteht Sitzungen als Benutzer.

Dies bestätigt die visuelle Darstellung des Elements „Sitzungen“ – das Symbol wird in Form von Benutzern angezeigt.

Es sollte klargestellt werden, dass der aktive Benutzer nicht unbedingt die Client-Verbindung bedeutet, sondern auch sein kann:

  • eine Instanz der 1C:Enterprise-Clientanwendung
  • Webanwendungsinstanz, in der der Webclient ausgeführt wird
  • Äußere Verbindungsinstanz, die vom V83.COMConnector-Objekt abgerufen wird
  • 1 Instanz eines Hintergrundjobs
  • 1 Aufruf des Webdienstes

Sitzungsdaten

Betrachten wir das Konzept der Sitzungsdaten. Die Sitzung enthält einige Informationen wie:

  • Name der Informationsbasis
  • Sitzungsnummer
  • Name des authentifizierten Infobase-Benutzers
  • Schnittstellensprache
  • Sitzungsparameterwerte
  • Zwischenspeicherung
  • Sitzungsstatistiken
  • Informationen zu verwalteten Antragsformularen
  • einige interne Plattformdaten

Diese Informationen werden Sitzungsdaten genannt. Darüber hinaus verfügt jeder aktive Benutzer über eigene Sitzungsdaten, die nur für die Dauer seiner Arbeit relevant sind. Wenn der Benutzer die Datenbank verlässt (die Sitzung beendet), werden seine Sitzungsdaten gelöscht.

Sitzungsdaten werden auf einem Cluster von Servern gespeichert, dafür ist der Cluster-Manager verantwortlich, und dafür ist der Sitzungsdatendienst gedacht. Um die Arbeit zu beschleunigen, werden Sitzungsdaten in Worker-Prozessen und in Thick Clients zwischengespeichert.

Beim Neustart des Serverclusters bleiben die Sitzungsdaten erhalten. Wenn der aktive Benutzer innerhalb von 20 Minuten keinen einzigen Anruf beim Cluster getätigt hat und die Sitzung nicht der Verbindung zugeordnet ist, wird die Sitzung mitsamt ihren Daten gelöscht.

Um eine Sitzung aufrechtzuerhalten Thin-Client und der Webclient gewähren mindestens alle 10 Minuten Zugriff auf den Cluster.

Anschluss 1C

Lassen Sie uns nun das Konzept der Verbindung verstehen. Werfen wir noch einmal einen Blick auf das Administratorhandbuch:

Eine Verbindung ist ein Mittel zum Zugriff auf Sitzungen zu einem Cluster von 1C:Enterprise-Servern, enthält einen begrenzten Satz von Verbindungsdaten und wird nicht mit dem aktiven Benutzer identifiziert.

Mit anderen Worten: Eine Verbindung ermöglicht einer Sitzung den Zugriff auf den Cluster. In diesem Fall ist die Anzahl der Verbindungen begrenzt und sobald eine von der Sitzung nicht mehr benötigt wird, wird sie an den Verbindungspool zurückgegeben.

Wenn die Sitzung nicht auf den Cluster zugreift, der Benutzer also inaktiv ist, wird ihm die Verbindung nicht zugewiesen. Somit kann eine Sitzung auch ohne Verbindung bestehen.

Es ist zu beachten, dass Sitzungsdaten auf dem Server gespeichert werden. Wenn die Verbindung also für weniger als 20 Minuten unterbrochen wird, hat dies keine Auswirkungen auf die Sitzung, da die Verbindung nur ein Zugriffsmittel ist.

Zum Beispiel, wenn Sie versehentlich herausziehen Netzwerkkabel, erhält der Benutzer keine Fehlermeldung, wenn das Kabel innerhalb von 20 Minuten angeschlossen wird. In diesem Fall wird der Sitzung eine neue Verbindung zugewiesen und sie läuft weiter. Der Benutzer wird das Problem nicht einmal bemerken, außer vielleicht durch ein leichtes Einfrieren.

Verbindungen werden auch für die Kommunikation zwischen Clusterprozessen verwendet, d. h. Arbeitsprozesse (rphost) kommunizieren mit dem Clustermanager (rmngr-Prozess) über Verbindungen und nicht über Sitzungen.

Unterschiede zwischen Verbindungen und Sitzungen

Um den Hauptunterschied zwischen diesen Konzepten zu beschreiben, werden wir eine Analogie geben.

Nehmen wir an, dass es sich bei der Sitzung um einen Passagier und bei der Verbindung um ein Taxi handelt. Wenn ein Passagier nach Hause muss (die Sitzung muss eine Verbindung zum Server herstellen), ruft er ein Taxi (der Sitzung wird eine Verbindung aus dem Verbindungspool zugewiesen).

Wenn der Fahrgast zu Hause angekommen wieder zur Arbeit fahren möchte, das Taxi aber bereits abgefahren ist (nach dem Umsteigen wurde die Verbindung getrennt), ruft der Fahrgast ein neues Taxi und geht seinem Geschäft nach (eine neue Verbindung wird zugewiesen). der Sitzung).

Diese Analogie zeigt deutlich, dass eine Sitzung und eine Verbindung nicht dasselbe sind und eine Sitzung eine Verbindungsunterbrechung problemlos überstehen kann.

Burmistrow Andrej



 


Lesen:



Verwenden von Stilen in Excel So erstellen Sie Ihren eigenen neuen Stil

Verwenden von Stilen in Excel So erstellen Sie Ihren eigenen neuen Stil

Wenn Sie in Ihren Tabellenkalkulationen immer dieselben Optionen zum Formatieren von Arbeitsblattzellen verwenden, ist es möglicherweise sinnvoll, einen Formatierungsstil zu erstellen ...

Welche Fehler treten bei der Installation auf?

Welche Fehler treten bei der Installation auf?

Hinweis: AutoLISP-Programme sind nur auf der Vollversion von AutoCAD lauffähig, sie funktionieren nicht unter AutoCAD LT. (ausgenommen Ladefälle...

Sozialer Status einer Person in der Gesellschaft

Sozialer Status einer Person in der Gesellschaft

Schlagen Sie vor, was die Wahl einer Person für ihren Hauptstatus bestimmt. Treffen Sie anhand des Texts und der Fakten des gesellschaftlichen Lebens zwei Annahmen und ...

Vollständige Interpretation von Fehlern

Vollständige Interpretation von Fehlern

Nicht wenige Benutzer sind auf das Phänomen des Blue Screen of Death gestoßen. Was zu tun ist (Windows 7 ist am häufigsten für dieses Problem anfällig) ...

Feed-Bild RSS