PHP 避免重新读取配置文件
只是说我有一个文件configuration.xml,php 脚本需要解析该文件才能运行。
我有一个连接到服务器的 Web 客户端(实际上是一台运行 linux 的 400MHz ARM 机器),它将经常请求 php 页面。如何避免每次请求 php 页面时都重新打开 configuration.xml 文件并解析它?
有没有办法用 php 缓存这些数据?
请不要批评使用本机作为网络服务器。它的灵魂目的不是作为网络服务器,但我这样使用它有一个很好的理由......
Just say I have a file configuration.xml that a php script needs to parse in order to function.
I have a single web client connected to the server(which is actually a 400MHz ARM machine running linux) that will be requesting the php page very often. How do I avoid re-opening the configuration.xml file and parsing it every time the php page is requested?
Is there a way to cache this data some how with php?
Please, do not criticize using this machine as a web server. It's soul purpose is not as a web server, but there is a very good reason I am using it as such...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,您可以安装例如 APC 并将解析结果存储在共享内存中。或者内存缓存。
Yes, you can install for example APC and store the result of parsing in shared memory. Or memcached.
您可以制作一个脚本(例如在 php CLI 中),该脚本将在服务器上运行并解析 XML 并将数据保存到数据库,甚至保存到 PHP 文件(已解析的对象)。您可以每 X 分钟更新一次,例如使用 cron 或普通 php(这将是服务器上的后台作业)。
从 Web 客户端请求的 php 页面将仅从数据库读取已解析的数据(您可以对其进行序列化/反序列化)或仅包含生成的 PHP 文件,该文件将包含已解析的数据。
这是一种不需要共享内存等的方法,但是在 Web 客户端的每个请求中,您都必须包含生成的 PHP 文件或数据库中的信息
you can make a script (in php CLI for example) that will run on server and parse the XML and save the data to database, or even to a PHP file (a parsed object). you can update this every X minutes for example using cron or plain php (it will be a background job on server).
the php page requested from the web client will just read the parsed data from database (you can serialize/unserialize it) or just include a generated PHP file, that will contain the parsed data.
this is a method that will not require sharing memory etc, but on every request of the web client you will have to include the generated PHP file or the info from the database