时间:2021-07-01 10:21:17 帮助过:2人阅读
如题
我们程序里面仙子阿使用了很多CURL进行内部程序的接口调用,这样的架构是否会影响到服务器的性能,因为一次HTTP请求,会让服务器重新启动PHP的一个进程,在系统里面多次调用CURL进行数据的获取是否是拆分功能模块的一个好的选择啊?
会的,CURL对本地的HTTP进行请求也是完成了一整个HTTP过程,和从外面调用请求所需的过程都是一样的,比如你说的需要重启一个php进程等等都是实实在在发生的。只不过从本地调用的话没有走你外网的流量而已,这给人的感觉就是自己抓自己的数据。
项目不大、需调用的的地方也不多的时候这种方式可以当作简单的拆分的一种手段,但是调用频繁之后首先是成功程序的结构变的混乱以至难以维护,其次是会增大服务器自身的开销。服务和数据都是本地的就没必要这样了,如果都是同一种语言的话就将获取处理数据的这部分代码封装起来共同使用,如果不是同一种语言的话看看能否直接从数据库上面获取数据。
是肯定占用的,内网请求只是减少了常规HTTP请求的几步操作。我觉得你这种情况可以考虑采用WebService或者RPC。