使用PHP来阻止用户下载代码,但代码占用cpu


Using PHP to stop users from downloading code, but code is cpu intensive

我有一些专有的公式,用于计算一些车辆的动态内容。我在一个php文件中保存了所有内容,用户可以通过客户端javascript中的ajax访问这些内容。

我相信这样做用户永远无法访问php脚本中的公式,这是真的吗(如果我的访问设置正确)?

我遇到的实际问题是,可能有80个方程,循环运行200次,以获得最终答案及其cpu密集型。运行1是可以的,但如果我有10个人使用该网站,它会减慢服务器的速度。

我不能把所有的公式都放在客户端,否则他可以下载。我不能把90%的等式放在客户端,而把其余的留在服务器上,因为那样我就必须在循环中来回使用ajax 200次才能得到一次答案。

在保护配方的同时,我有什么选择可以在客户端完成任务?

如果不让客户端看到代码,就无法在客户端运行代码。你可以混淆你的代码,但对于数学方程这样的东西,我怀疑你能做的混淆方式会让内容变得模糊,足以阻止人们弄清楚方程是什么。

您的选择是:

  • 投资一些更好的硬件,这样你的服务器就可以处理更多的用户。这可能意味着在不同于web服务器层的层上运行计算
  • 优化您的方程式。这可能意味着将它们作为PHP扩展模块在C中重新实现,或者至少启用操作码缓存