繁体   English   中英

Web App向导的最佳实践-会话变量或嵌入式SQL?

[英]Best Practice for Web App Wizard — Session Variables or In-Line SQL?

我正在一个Web应用程序页面上工作,该页面由一个三页长的表单组成(尽管这样做并不是最有效的方式,但我不得不限制用户使用该表单)。

我的问题是:从表格的一页到下一页跟踪信息的最佳实践是什么? 通常,我们将所有内容存储在会话变量中,直到最后一个表单进行存储过程调用或内联SQL以使用表单结果更新数据库为止。 另一种选择是在逐页使用内联SQL之前存储数据。

TL; DR-在3页之后存储数据和SQL的会话变量,还是在每页插入SQL?

谢谢!

我建议将输入的数据保存在数据库的每个页面上。 可以通过会话ID将数据保存到一个(临时)表中。 如果用户单击“完成”或“提交”按钮,则通过从临时复制数据来“激活”数据。 表归一化表。

但是,此解决方案要求您处理无效会话,该会话永远不会复制到最终位置。 因此,需要设置清理任务。 这可以是MS SQL作业,也可以是对数据库的任何SQL查询,都将检查最后的清理时间,如果达到了预先设置的时间间隔,则执行该清理时间。

在会话中存储所有内容不是一个好方法。 尤其是当他们保留更大的数据集或有许多并发用户时。 原因是HTTP会话存储在服务器中的文本文件中并占用I / O。 与RDB相比,这使其速度较慢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM