Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript前端与C后端的性能对比_Javascript_C_Performance - Fatal编程技术网

Javascript前端与C后端的性能对比

Javascript前端与C后端的性能对比,javascript,c,performance,Javascript,C,Performance,我在服务器上拉一个JSON文件,大约每5分钟一次(现在大约10 KB大小,在投入生产时会变大)。一旦文件被提取出来,我就有了各种Javascript可视化API,我需要将数据插入其中 我的后端是C语言,我使用Jquery/Javascript进行可视化 以下是我的两种方法: 1. A.每隔5分钟从服务器获取整个JSON数据(>8KB)。 B使用Javascript解析数据,并根据Javascript API的要求提取所需信息。(不同的可视化api需要不同的信息子集) C显示可视化效果 或 2.

我在服务器上拉一个JSON文件,大约每5分钟一次(现在大约10 KB大小,在投入生产时会变大)。一旦文件被提取出来,我就有了各种Javascript可视化API,我需要将数据插入其中

我的后端是C语言,我使用Jquery/Javascript进行可视化

以下是我的两种方法: 1. A.每隔5分钟从服务器获取整个JSON数据(>8KB)。 B使用Javascript解析数据,并根据Javascript API的要求提取所需信息。(不同的可视化api需要不同的信息子集) C显示可视化效果

或 2. A.在后端本身处理数据,并根据Javascript API提取信息并将其存储在后端 B让每个javascript api进行独立的Ajax调用,并获取自己的数据并显示它

我的问题是,上述两种方法中的哪一种会产生更快的输出。
在这种情况下,C语言的后端会比Javascript语言的前端快吗?我不清楚您想做什么。无论如何,我认为业务逻辑必须包含在服务器上,而表示逻辑(jQuery/javascript或您正在使用的任何库)必须严格在客户端上运行。

唯一可以给出的答案是对这两种方法进行基准测试。涉及的变量太多,无法给出明确的答案

所使用的浏览器将对客户端所需的时间产生影响,因此根据您需要支持的内容,您需要记住这一点

需要解析的数据结构有多复杂可能会影响客户端性能


如果每个用户的数据相同,您可能会转向服务器上的解析和缓存。如果不同,您可能希望客户机处理此问题。

您的第二种方法会更快,可能更好。既然您说过“让每个javascript api……获取它们自己的数据”,那么方法1似乎表示向客户端发送超出其需要的数据。

取决于您的插件将发出多少请求。如果您不需要进行任何计算,并且在第一次调用中就完成了所有操作,并且您的任务只是定义每个数据块应该去哪里,那么选项1是最快的。请求很昂贵

另一方面,如果要用javascript计算值,这取决于这些计算有多重。在这种情况下,通过基准测试,您将得到更好的答案:

澄清一下,在第一种方法中,你的瓶颈将是计算。第二,网络/客户端浏览器速度所花费的时间

考虑将所有结果分组到一个JSON结果中,并将它们传递给插件

也考虑一下,如果你在服务器上做它,也许你可以使用Cache来赢得一些处理时间(我说可能是因为它取决于你使用的是哪种算法/数据源)


希望有帮助,祝你好运!:-)

您应该知道的第一件事是,您的特定设置将对该系统的性能产生更大的影响,因此,唯一确定的方法是对这两种方法进行基准测试。也就是说,像C这样的编译语言几乎总是比像JavaScript这样的解释语言快