我一直致力于一个项目,我正在进行AJAX调用,从数据库加载100条记录,然后在滑块上进行渲染。
准确地说,我将要获取的数据是“图像路径”'对于所有图像,以及其他详细信息,例如“滑块缩略图的大小”,“'要显示的缩略图的数量等”
对于这个数据列表,我有两个选择: 1.在服务器端生成HTML并将其发送到客户端,它将应用于滑块。 2.生成json数据并将其发送到客户端。解析此json数据并为Slider生成幻灯片。
我对使用哪种方法感到困惑,以便为客户端/服务器提供更好的整体性能。谷歌搜索和阅读文章指出,使用json数据更快。但是,在执行少量初始测试以获取和呈现HTML后,显示在服务器端生成HTML并将其发送到客户端进行呈现比将json数据发送到客户端并准备HTML以进行呈现要快得多。
如果有人能够解决这个问题,服务器每小时点击量达到4k-5k就会很棒。
答案 0 :(得分:1)
围绕这个主题进行了很多非常好的讨论,但是我倾向于支持客户端渲染。我的理由是1.如果您的服务器经常受到攻击,服务器端渲染会降低服务器的响应时间,并导致排队时间过长,以及2.因为您要从标记中单独提出请求,样式,你可以在用户端有一个启动页面或一些等待动画,而不是在服务器编译所有内容时让它们坐在白色屏幕上。这只是我的意见,但我发现客户端渲染提供最好的用户体验以及从Web服务器卸载计算通常是个好主意
答案 1 :(得分:0)
我喜欢这个link的答案。 简短说明(复制粘贴):
我实际上有点:
- 当我在javascript方面需要的是数据时,我使用JSON
- 当我在javascript方面需要的是我不会做任何计算的演示文稿时,我通常使用HTML
使用HTML的主要优点是您想要替换完整版 您的页面的一部分,包含Ajax请求中的内容:
在JS中重建一部分页面(非常)很难
你可能已经在服务器端有一些模板引擎,用于首先生成页面...为什么不 重用它?
我通常不会真正考虑到"表现" 事情的一面,至少在服务器上:
在服务器上,生成一部分HTML或一些JSON不会产生太大影响
关于通过网络的东西的大小:好吧,你可能不会使用数百KB的数据/ HTML ...使用gzip 无论你转移什么,最重要的是什么 差异(不在HTML和JSON之间选择)
但是,可以考虑的一件事是,客户端需要重新创建HTML(或DOM)所需的资源 结构)从JSON数据...比较推动一部分 HTML进入页面; - )