0

确实是一个非常华丽的标题。

我有一个基于 Web 的向导形式的 PHP Web 应用程序。用户可以运行向导并选择选项、运行进程(数据库查询)等。他们可以来回运行并一次又一次地运行进程。

我正在尝试找出如何最好地保存用户所做/所做的状态、他们运行的进程等的状态。所以基本上是一个美化的日志,我可以稍后再提取。

如何保存这些状态或会话?我的同事正在考虑的一个选项是为每个会话使用一个 XML 文件并将所有内容保存在那里。我的想法是使用数据库表来执行此操作。

每个都有优点和缺点,我希望我能得到关于选择哪个选项的答案?其他可行的选项的建议会很棒!或者我应该问自己什么样的问题来选择正确的实现。

目前使用的技术

后端:PHP 和 MS SQL Server,在 Windows Server 2005 上运行

前端:HTML、CSS、JavaScript (JQuery)

任何帮助将不胜感激。

编辑

每个将启动该系统的站点将只有一/二/三个用户。每个站点都不会以任何方式连接。该系统每月可以有大约 10 到 100 个会话。

4

2 回答 2

2

使用数据库可能是要走的路。只需创建一个简单的表,按会话 ID 跟踪操作。不要索引任何东西,因为您希望插入行是一种低成本的操作(您可以创建一个临时表、添加索引并稍后在其上运行报告)。

XML 文件也可以工作——您希望为每个 sessionid 编写一个单独的文件——但是如果您可以利用数据库的功能集,那么进行分析可能会更加直接。

于 2009-10-08T18:16:26.403 回答
0

如果您正在谈论大量用户同时进行操作,并且您想跟踪他们的步骤,我认为最好采用面向数据库的方法。数据库服务器可以优化数据流和磁盘写入,从而获得比在磁盘上不断写入文件更好的并发性能。您确实应该尝试对系统进行压力测试,无论您选择哪种方式,以确保在发生大负载时性能不会受到影响。

于 2009-10-08T18:17:15.733 回答