设计具有数据持久性的web应用程序的更好方法

Better way to design a web application with data persistance

本文关键字:web 应用程序 更好 方法 持久性 数据      更新时间:2023-11-25

对于我的Web应用程序,我一直在想,哪种方式是设计一个具有数据持久性的合适Web应用程序的最佳方式。现在,我每次都设计一个HTML页面,所有内容和数据上传都是用基于RESTful模型的jQueryAJAX请求管理的,并发送到负责数据库的远程服务器。但最终,有时会进行大量AJAX调用,获取大量数据有时需要几秒钟,这对用户来说并不友好。

是否有类似的指导方针或标准的开发方式来设计web应用程序?

我已经看过WebWorkers和WebSockets Javascript API,但从未使用过它们。有人已经试过了吗?这是否允许比AJAX交换更好的性能?

您的Web应用程序开发方式是什么?

这里不是回答此类问题的地方,但我会给你一些简短的提示。

  1. AJAX请求应该不会花很长时间,如果它们一直很慢,那么问题很可能是服务器端代码和效率低下。如果你的服务器速度很慢,Websockets不会给你带来任何AJAX的好处
  2. 一种常见的设计是加载页面运行所需的最小数据集,AJAX化任何其他所需的数据,以使页面尽快响应
  3. 缓存和预取是加快网站速度的好方法,例如:如果你一遍又一遍地运行mysql查询,运行一次,并将结果放入一个缓存服务(如memcached或mongodb,过期一小时左右)中,并提供缓存的响应,这将加快服务器的响应时间。预取是指预测用户下一步要做什么,并在后台加载数据,而无需任何用户交互
  4. 如果用户重复加载相同的数据,请考虑使用localStorage或IndexedDB