Frage

Ich bin durch die folgende gezwungen, keinen Weg drum herum:

  1. Read-Only Daten: Microsoft Access
  2. JET 4.0 OLDB
  3. ASP.NET 2.0
  4. Shared-Host, sehr wenig Kontrolle.
  5. OR Mapper - LLBL Gen Pro

Die App ist ein Nur-Lese-Tool, das eine Menge von Microsoft Access-Datenbanken in den Ordner App_Data liest. Adaequat meistens.

Unter Last beginnt es andernfalls den Zugang MEB erreichbar.

Was ist die beste Strategie, um den Zugang zu MEB Limit Fehler für den Zugriff auf sie Zugriff auf? Im Moment versuche ich, dann Thread.Sleep (500) auf einem Fehler dann erneut versuchen.

War es hilfreich?

Lösung

ich glaube, es Möglichkeiten geben, kann die Isolation / Gleichzeitigkeit / Verriegelungsoptionen zu ändern, wenn die Access-Datenbanken zugreifen Aufwand zu beseitigen Sperren zu verwalten. Vielleicht versuchen "Mode = Anteil Deny None"; in der Verbindungszeichenfolge. Ich würde dies nicht verwenden, wenn Sie Daten in irgendeiner Art und Weise jederzeit modifizieren, obwohl da es ziemlich viel ist alles der Isolierung / Concurrency Management Haufen zu werfen, dass Sie mit einer Datenbank erhalten. Benutzung auf eigene Gefahr.

Andere Tipps

Wie funktioniert häufig die Daten ändern? Wenn es schreibgeschützt ist können Sie die Daten aus den Datenbanken in dem Cache geladen werden und von dort aus statt direkt aus den Datenbanken lesen?

Welche spezifischen Fehler zu bekommen. Ich nehme an, sie sind Verbindungsfehler?

Dies ist eine schreckliche Lösung, aber wenn Sie wirklich sind „auf einer einsamen Insel verloren nur mit diesen Tools“ und den Zugriff auf Datenbanken vollständig schreibgeschützt, dann mehrere Kopien von jedem von ihnen schaffen und erlauben nur eine bestimmte Anzahl von Verbindungs in einen von ihnen auf einmal. Zum Beispiel, wenn Sie 2 Zugriff auf Datenbanken haben, MdbAA und MdbBB dann erstellen Kopien wie:

  • MdbAA01
  • MdbAA02
  • MdbAA03
  • MdbBB01
  • MdbBB02
  • MdbBB03

Dann, wenn eine Anforderung für MdbAA kommt, sehen Sie, wie viele Anfragen zur Zeit MdbAA01 zugreifen, wenn über die Schwelle, dann MdbAA02 versuchen, usw. Machen Sie dasselbe für alle Anfragen an die MdbBB Datei.

Wie ich schon sagte, dies sehr schlechte Lösung, aber wenn Sie wirklich keine andere Wahl haben, dann könnte es für Sie arbeiten. Aber realistisch klingt es wie der App entwachsen Access hat (und den gemeinsamen Host), so dass es Zeit ist, die Architektur zu aktualisieren.

ein wenig Geld ausgeben und einige SQL-Speicher bekommen. Wie viel Zeit haben Sie verbrachte arbeiten an einer Krücke zu einem gebrochenen klingender System passend?

Wenn das Projekt ist wert, dann lohnt es sich etwas bares Geld zu investieren.

Wenn ein Unternehmen versucht, Sie zu zwingen unten auf dieser Route, erklären, warum die Option, die Sie haben nicht lebensfähig ist. Wenn Sie die Option in erster Linie vorgeschlagen, ein Paar wachsen und erklären, warum Sie falsch waren, aber das ist, wie man es beheben kann.

Sorry, wenn das als frivol abgeht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top