0

让我先更好地解释一下上下文。应用程序应具有以下特征:

  • 只读共享数据位于 Internet 上的数据库服务器上。(相当大量的共享数据。)
  • 应用程序应该以类似 Java-Web-Start 的方式分发,或者是一个 Web 应用程序。(目标是简化主包和更新的分发。降低服务器负载并为最终用户提供更好响应的解决方案是首选。)
  • 必须可以仅在服务器上、仅在用户的 PC 上或在两者上存储用户特定的数据。(这样做的原因是大多数用户不愿意冒险将他们的信息从他们的 PC 中取出,但他们中的一些人愿意分享部分信息或进行备份。)

我对Web应用程序编程不是很了解。我所知道的唯一可以实现这一切的技术是 Java Web Start。它消除了服务器的负载,因为大多数计算都是在用户端完成的,允许在用户的 PC 上读/写(给定访问权限)并且访问集中式数据库不是问题。

我想知道是否有其他技术可以开发这样的应用程序并且不需要传统的本地安装。

非常感谢,

乔丹

4

1 回答 1

0

这真的取决于:

  • 数据/数据模型的体积、大小、复杂性,
  • 频率,更新的紧迫性,
  • 可用连接(24/7 在线与偶尔连接与夜间同步会话)和带宽,
  • 现有的数据存储机制,
  • 您可能/可以/想要在客户端上部署的软件数量,
  • 可用预算,
  • 可接受的开发时间
  • 可用于操作系统的资源和组织
  • 系统的生命周期计划(预期生命周期),
  • 任务重要性(可以杀死生命的关键任务系统,与“只是”经理信息系统相比)

都是您应该提及或至少评估的因素。根据这些方面,解决方案可以从“廉价”的 web 服务和通过简单的 java 代码同步的平面文件到完全平面的分布式数据库。

多年前,我发现 Sybase 的 SQL Anywhere 是满足中小型需求和预算的一个很好的解决方案,如果需要“真正的”SQL DBMS,或者已经存在于服务器后端。它在 SQL 级别提供了一种强大但透明(如果使用得当)的发布和订阅方法,如果您不能确定所有客户端都 24/7 全天候在线,它会很好地工作。

但是,对于在线(或几乎在线)成熟的解决方案,Oracle 提供了非常昂贵的在线数据库复制选项。

对于小型解决方案,访问远程数据库链接(Oracle 特性)的自定义 Java 代码通常可以工作,但定位性能瓶颈可能是一场噩梦。(并且您需要稳定的网络链接,以及所有节点上的“真实”Oracle 数据库。)

于 2011-01-25T17:38:07.407 回答