服务器端ruby与客户端js-api的速度/组织
Server-side ruby vs client-side js api speed/organization
假设我有AR对象的某些字符串属性,例如"filename"answers"title",我希望在前端动态填充选择框的方法是在该对象的JSON表示中使用ajax,如果存在,则将title attr显示为select选项的文本,如果title attr为空,则将filename attr用作select选项的文字。现在,我应该在服务器端执行我刚才描述的其他逻辑,并在对象的JSON表示中以类似于"display_name"attr的形式返回它吗,或者我应该返回对象的普通as_json表示,只包含AR属性,并让js决定是将标题属性还是文件名属性显示为select选项的文本?据我所知,JS比ruby快得多,但同时,在服务器端拥有这种逻辑似乎更容易维护。我还想知道,一般来说,在客户端w/js上还是在服务器端w/ruby上执行逻辑更快?谢谢
在这里,您真的不必太担心速度——除非您做错了什么,否则您不太可能真正遇到由if/else语句引起的性能问题。
相反,要追求清晰和简单。在这种情况下,这可能意味着直接在服务器上呈现页面,除非由于某种原因数据已经在JSON中。
我的建议是将逻辑放在它所属的位置。如果逻辑是关于演示/渲染的,那么我会把它放在您的演示层中。根据您的描述,这似乎是您的客户端JS。
我建议您尽可能让API不知道其数据是如何呈现的。这将允许您更改视图,而不必更改API返回的有效负载的结构。
根据我的经验,表示层的变化往往比它们所表示的数据的底层结构更频繁。我同意前面的回答,我不会担心这里的速度,并将关注点明确分开。
相关文章:
- Wacom stu-430签名捕获速度太慢
- 如何在速度模板中获取LiferayPortlet实例id
- 将Windows文件路径组织到文件夹中
- 如何为d3.js图表输出组织/嵌套数据
- 我想放慢html中进程栏的速度
- 如何组织用户系统的Mongo集合
- Knockout绑定大量数据的速度较慢
- Wordpress:未捕获引用错误:未定义速度
- Html5-使用SVG路径绘制的组织层次结构在左手边被剪裁
- 即使光标位于屏幕边缘,也可以跟踪鼠标速度
- Css优化谷歌页面速度洞察
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 谷歌组织结构图:具有多种属性的样式
- 录制速度javascript
- Javascript图像数组预加载速度和从内存中删除
- 谷歌地图多边形减慢浏览器速度
- nodejs/ccurlhttp请求与postlerrest客户端相比速度较慢
- 从Three.js场景中删除许多对象的速度较慢
- 构建多个图表时,HighCharts加载数据的速度较慢
- 服务器端ruby与客户端js-api的速度/组织