search
HomeBackend DevelopmentPHP TutorialAsf PHP development configuration information is resident in system memory

This article mainly introduces the configuration information of Asf PHP development resident in the system memory. It has a certain reference value. Now I share it with you. Friends in need can refer to it.

Comparison between traditional MVC and Asf

Traditional MVC framework

The configuration file will be reloaded with each request. Even if the configuration file content has not been updated, it will be reloaded. This is a very bad design. (When Opcache is turned on, there is still execution time)

Asf framework

The content of the read configuration file is saved to the system memory, and the next request goes directly to the memory to read the data. Asf also provides a very simple configuration implementation Config Cache.

In what scenarios is it appropriate to enable Config Cache?

  • It is recommended to enable it in web application scenarios. Later versions may enable it by default

  • It also takes effect when enabled in CLI and multi-threaded mode, but the PHP script is released every time it is executed.

  • ##Supported data types are: strings, arrays, integers, boolean, doubles, floats, null

Flowchart

Asf PHP development configuration information is resident in system memory

Enable caching method

<?php ini_set(&#39;asf.cache_config_enable&#39;, 1); /* 开启配置文件缓存 */
ini_set(&#39;asf.cache_config_expire&#39;, 300); /* 设置缓存多少秒之后过期, 300 seconds by default */

Frame entry way to load php/ ini configuration file

<?php define(&#39;APP_PATH&#39;, dirname(__DIR__));

/* 缓存 config.ini 文件 */
$app = new Asf\Application(APP_PATH . &#39;/config/config.ini&#39;);
$app->run();

Asf\Config\Php Load php configuration file

<?php $conf_php =  new Asf\Config\Php(CONFIG_PATH . &#39;/config.db.php&#39;);

Asf\Config\Ini Load ini configuration file

<?php $conf_ini =  new Asf\Config\Ini(CONFIG_PATH . &#39;/config.redis.ini&#39;);

Read configuration content method

<?php print_r(Asf\Application::getInstance()->getConfig()->toArray());
print_r(Asf\Config::get()->toArray());

Performance test

With Opcache turned on, we simply did a Config Cache performance test, ab -c100 -n10000

There is a difference between the complexity of the configuration items in the configuration file and the performance indicators. Contact us directly

Enable cache asf.cache_config_enable = 1

Total transferred:      16109994 bytes
HTML transferred:       14259994 bytes
Requests per second:    6859.01 [#/sec] (mean)
Time per request:       14.579 [ms] (mean)
Time per request:       0.146 [ms] (mean, across all concurrent requests)

No cache

Total transferred:      16080000 bytes
HTML transferred:       14230000 bytes
Requests per second:    6398.22 [#/sec] (mean)
Time per request:       15.629 [ms] (mean)
Time per request:       0.156 [ms] (mean, across all concurrent requests)

Tips

Cache Config is not based on shared memory, it is based on For PHP processes, there will be no problem with shared memory locks.

The above is the entire content of this article. I hope it will be helpful to everyone's study. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

Nginx load scheduler dual Tomcat load and session sharing MySQL back-end database

ThinkPHP5.0 Linux Apache/ Nginx rewrite URL configuration

The above is the detailed content of Asf PHP development configuration information is resident in system memory. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
2023年最流行的11款PHP框架2023年最流行的11款PHP框架Jul 07, 2022 pm 03:30 PM

什么是PHP框架?为什么要使用PHP框架?本篇文章就来和大家聊聊PHP框架的优势,并总结分享11款2023年最流行的PHP框架,希望对大家有所帮助!

如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务Jun 27, 2023 am 11:43 AM

随着移动互联网的快速发展和用户需求的变化,消息推送系统已成为现代应用程序不可或缺的一部分,它能够实现即时通知、提醒、推广、社交等功能,为用户和商业客户提供更好的体验和服务。为了满足这一需求,本文将介绍如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务。一、Lumen简介Lumen是由Laravel框架开发团队开发的一个微框架,它是一个

2023年最流行的5个php开发框架视频教程推荐2023年最流行的5个php开发框架视频教程推荐May 08, 2017 pm 04:26 PM

如果想快速进行php web开发,选择一个好用的php开发框架至关重要,一个好的php开发框架可以让开发工作变得更加快捷、安全和有效。那2023年最流行的php开发框架有哪些呢?这些php开发框架排名如何?

什么是PHP框架?PHP框架与CMS的区别什么是PHP框架?PHP框架与CMS的区别Jun 13, 2022 pm 02:21 PM

在编程中,框架扩展了构建通用软件应用程序的支撑结构。在你开始编码之前,框架就会将程序的基本功能插入到你的应用程序中,从而简化了软件的开发过程。

安全加固PHP框架的实施措施安全加固PHP框架的实施措施Aug 07, 2023 pm 06:41 PM

标题:安全加固PHP框架的实施措施引言:随着互联网的快速发展,安全问题成为了一个不可忽视的挑战。而作为最常用的编程语言之一,PHP的安全性也备受关注。为了提高PHP框架的安全性,我们需要采取一系列的实施措施。本文将介绍一些基本的安全加固措施,并提供相应的代码示例。一、输入过滤和验证1.1XSS(跨站脚本攻击)过滤在PHP框架中,使用htmlspecialc

使用PHP框架CodeIgniter开发一个实时聊天应用,提供便捷的通讯服务使用PHP框架CodeIgniter开发一个实时聊天应用,提供便捷的通讯服务Jun 27, 2023 pm 02:49 PM

随着移动互联网的发展,即时通信变得越来越重要,越来越普及。对于很多企业而言,实时聊天更像是一种通信服务,提供便捷的沟通方式,可以快速有效地解决业务方面的问题。基于此,本文将介绍如何使用PHP框架CodeIgniter开发一个实时聊天应用。了解CodeIgniter框架CodeIgniter是一个轻量级的PHP框架,提供了一系列的简便的工具和库,帮助开发者快速

如何使用PHP框架Yii开发一个高可用的云备份系统如何使用PHP框架Yii开发一个高可用的云备份系统Jun 27, 2023 am 09:04 AM

随着云计算技术的不断发展,数据的备份已经成为了每个企业必须要做的事情。在这样的背景下,开发一款高可用的云备份系统尤为重要。而PHP框架Yii是一款功能强大的框架,可以帮助开发者快速构建高性能的Web应用程序。下面将介绍如何使用Yii框架开发一款高可用的云备份系统。设计数据库模型在Yii框架中,数据库模型是非常重要的一部分。因为数据备份系统需要用到很多的表和关

深入探讨swoole协程与PHP框架的结合开发深入探讨swoole协程与PHP框架的结合开发Aug 05, 2023 pm 01:54 PM

深入探讨swoole协程与PHP框架的结合开发国内的互联网发展迅速,更多的开发者开始寻找高性能的解决方案来满足日益增长的用户需求。在PHP领域,swoole协程是一个备受关注的技术,它可以大幅提升PHP的性能,并且非常适合与PHP框架结合使用。本文将深入探讨swoole协程与PHP框架的结合开发,并附带一些代码示例。一、什么是swoole协程swoole是一

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),