Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用自己的服务器做后端性能消耗的问题 #2

Open
lzz29 opened this issue Dec 16, 2022 · 2 comments
Open

使用自己的服务器做后端性能消耗的问题 #2

lzz29 opened this issue Dec 16, 2022 · 2 comments

Comments

@lzz29
Copy link

lzz29 commented Dec 16, 2022

有一个问题:
前端使用了大量的计算 那后端也需要使用一样的计算量?
服务器并发有点大 所以对这个问题有点担心

@greensea
Copy link
Contributor

这倒不会,后端只需要对结果进行验算,验算速度是很快的,从纯算法的角度来看,前后端的计算量可以相差数千甚至数万倍。

在我的电脑上实测,在 2^20 难度下,前端用 wasm 计算,耗时大概 1158ms,后端验算耗时 0.161ms。根据测试,wasm 在做这个计算的时候速度大约是原生程序的 1/6,如果机器人来计算的话那就至少需要花费 1158ms / 6 = 193ms,那么前后端的计算量差距就是 193ms / 0.161ms =1198 倍

另外,难度越大,前后端计算量差距就越大,如果使用 2^22 的难度的话,计算量差距大约还会扩大 4 倍,变成超过 4000 倍

@lzz29
Copy link
Author

lzz29 commented Dec 17, 2022

这倒不会,后端只需要对结果进行验算,验算速度是很快的,从纯算法的角度来看,前后端的计算量可以相差数千甚至数万倍。

在我的电脑上实测,在 2^20 难度下,前端用 wasm 计算,耗时大概 1158ms,后端验算耗时 0.161ms。根据测试,wasm 在做这个计算的时候速度大约是原生程序的 1/6,如果机器人来计算的话那就至少需要花费 1158ms / 6 = 193ms,那么前后端的计算量差距就是 193ms / 0.161ms =1198 倍

另外,难度越大,前后端计算量差距就越大,如果使用 2^22 的难度的话,计算量差距大约还会扩大 4 倍,变成超过 4000 倍

等我部署到项目里试试 给你反馈
感谢感谢!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants