代码之家  ›  专栏  ›  技术社区  ›  Ian Vink

可缩放的MS Access ASP.NET应用程序

  •  0
  • Ian Vink  · 技术社区  · 15 年前

    我受以下限制,无法绕过:

    1. 只读数据:Microsoft Access
    2. 旧款喷气式飞机4.0
    3. ASP.NET 2
    4. 共享主机,很少控制。
    5. 或映射器-llbl gen pro

    该应用程序是一个只读工具,可以读取app_data文件夹中的许多Microsoft Access数据库。大部分都可以。

    在加载状态下,它开始无法访问访问访问mdb。

    访问access mdb以限制访问错误的最佳策略是什么?现在我尝试,然后线程。在出错时休眠(500),然后重试。

    4 回复  |  直到 15 年前
        1
  •  2
  •   AaronLS    15 年前

    我认为在访问访问访问数据库时,可能有一些方法可以修改隔离/并发/锁定选项,以消除管理锁的开销。也许 尝试 “mode=share deny none;”在连接字符串中。如果您在任何时候以任何方式修改数据,我都不会使用这个方法,因为它几乎抛弃了您通过数据库获得的所有隔离/并发管理。自担风险使用。

        2
  •  1
  •   Wil P    15 年前

    数据更改频率如何?如果它是只读的,您是否可以将数据从数据库加载到缓存中并从缓存中读取,而不是直接从数据库中读取?

    得到什么样的具体错误。我假设它们是连接错误?

        3
  •  1
  •   Jeff Widmer    15 年前

    这是一个可怕的解决方案,但是如果你真的“在一个只有这些工具的荒岛上迷路了”,并且访问数据库是完全只读的,那么就创建每个数据库的多个副本,并且一次只允许与其中任何一个数据库建立一定数量的连接。例如,如果您有两个Access数据库,mdbaa和mdbbb,则创建如下副本:

    • MdBAA01
    • MdBaA02
    • MdBaA03
    • MdBBB01
    • MdBBB02
    • 多组分BBB03

    然后,当针对mdbaa的请求出现时,查看当前访问mdbaa01的请求数,如果超过阈值,则尝试mdbaa02等。对任何对mdbbb文件的请求执行相同的操作。

    就像我说的,这是一个非常糟糕的解决方案,但如果你真的没有选择,那么它可能对你有用。但实际上,这听起来像是应用程序的访问量(和共享主机)增长了,所以是时候升级架构了。

        4
  •  0
  •   ilivewithian    15 年前

    花点钱去买一些SQL存储。你花了多少时间在为一个破碎的音响系统安装拐杖上?

    如果这个项目值得做,那就值得投资一些硬现金。

    如果一个企业试图迫使你走这条路,解释一下为什么你的选择是不可行的。如果你一开始就提出了这个选择,那就培养一对并解释你为什么错了,但这就是你解决问题的方法。

    抱歉,如果这是轻率的话。