确实是一个非常华丽的标题。
我有一个基于Web的向导形式的PHP Web应用程序。用户可以通过向导运行并选择选项,运行进程(数据库查询)等。他们可以反复前进并一次又一次地运行进程。
我正在努力研究如何最好地保存用户做/做的状态,他们运行的进程等等。所以基本上是一个美化的日志,我可以稍后提起。
如何保存这些状态或会话?我的同事正在考虑的一个选项是为每个会话使用XML文件并保存所有内容。我的想法是使用数据库表来执行此操作。
每个人都有利弊,我希望能得到哪个选项的答案?建议其他可行的选择会很棒!或者我应该问自己选择正确的实施方式的问题。
目前使用的技术
后端:在Windows Server 2005上运行的PHP和MS SQL Server
FrontEnd:HTML,CSS,JavaScript(JQuery)
非常感谢任何帮助。
每个站点将只有一个/两个/三个用户将启动此系统。每个站点都不会以任何方式连接。该系统每月可以有大约10到100个会话。
答案 0 :(得分:2)
使用数据库可能就是这样。只需创建一个简单的表,即按会话ID跟踪操作。不要索引任何内容,因为您希望将行插入为低成本操作(您可以创建临时表,添加索引,并在以后对其运行报告)。
XML文件也可以工作 - 您希望为每个sessionid编写一个单独的文件 - 但如果您可以利用数据库的功能集,那么进行分析可能会更加简单。
答案 1 :(得分:0)
如果您正在谈论大量用户同时执行操作,并且您想要跟踪他们的步骤,我认为最好采用面向数据库的方法。数据库服务器可以优化数据流和磁盘写入,从而比不断在磁盘上写入文件带来更好的并发性能。你真的应该尝试对系统进行压力测试,无论你选择哪种,都要确保在负载很大的情况下性能不受影响。