Heim > Backend-Entwicklung > PHP-Tutorial > 编译 - PHP中require和include的问题。

编译 - PHP中require和include的问题。

WBOY
Freigeben: 2016-06-06 20:40:45
Original
1220 Leute haben es durchsucht

已知require和include都是引入文件。现在的很多框架都是单入口,在框架初始化的时候要require很多个类库和文件,问题是:

  1. require的文件最后放在内存里吗?
  2. 如果第一个问题成立,那么当很多人同时访问服务器的时候,a. 放在内存里的这些文件能给大家共享用吗?b. 还是每一个用户访问都重新开辟一块内存?

回复内容:

已知require和include都是引入文件。现在的很多框架都是单入口,在框架初始化的时候要require很多个类库和文件,问题是:

  1. require的文件最后放在内存里吗?
  2. 如果第一个问题成立,那么当很多人同时访问服务器的时候,a. 放在内存里的这些文件能给大家共享用吗?b. 还是每一个用户访问都重新开辟一块内存?

記得 php5.5 zend 出的 OpCode Cache 可以緩存免得重複編譯。

這時 1 和 2.a 都是成立的了。

而 2.b 是執行的時候的 context 不是 cache。cache 是公用的,context 是單獨的。

编译 - PHP中require和include的问题。

參見:https://support.cloud.engineyard.com/entries/26902267-PHP-Performance-I-Everything-You-Need-to-Know-About-OpCode-Caches

1.文件内容肯定不是放在内存,应该是按加载顺序编译。
2.每个用户请求都应该是独立的,需要重新加载和编译代码。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage