/** * 最常用的使用方式 */ public function testMostUsedWay() { /** * 初始化Lotus类 */ $lotus = new Lotus(); /** * 项目目录, 按照约定的目录结构,自动加载共享配置文件 */ $lotus->option['proj_dir'] = dirname(__FILE__) . '/proj_dir/'; /** * 应用名称 */ $lotus->option['app_name'] = 'app_name1'; /** * 可选 */ $lotus->defaultStoreDir = '/tmp'; /** * MVC模式 默认 true */ $lotus->mvcMode = true; /** * 开发模式, 默认 true */ $lotus->devMode = true; /** * run */ $lotus->init(); /** * class_exists默认调用自动加载 */ $this->asserttrue(class_exists("LtCaptcha")); }
public function testPerformance() { $option['proj_dir'] = dirname(__FILE__) . '/proj_dir/'; $option['app_name'] = 'app_name2'; /** * 初始化Lotus类 */ $lotus = new Lotus(); $lotus->devMode = false; $lotus->defaultStoreDir = '/tmp'; $lotus->option = $option; $lotus->init(); /** * class_exists默认调用自动加载 */ $this->asserttrue(class_exists("LtCaptcha")); /** * 运行100次,要求在1秒内运行完 */ $base_memory_usage = memory_get_usage(); $times = 100; $startTime = microtime(true); for ($i = 0; $i < $times; $i++) { $lotus = new Lotus(); $lotus->devMode = false; $lotus->defaultStoreDir = '/tmp'; $lotus->option = $option; $lotus->init(); unset($lotus); } $endTime = microtime(true); $totalTime = round($endTime - $startTime, 6); $averageTime = round($totalTime / $times, 6); $memory_usage = memory_get_usage() - $base_memory_usage; $averageMemory = formatSize($memory_usage / $times); $memory_usage = formatSize($memory_usage); if (LOTUS_UNITTEST_DEBUG) { echo "\n---------------------Lotus------------------------------\n"; echo "times \t{$times}\n"; echo "totalTime \t{$totalTime}s\taverageTime \t{$averageTime}s\n"; echo "memoryUsage \t{$memory_usage}\taverageMemory \t{$averageMemory}"; echo "\n---------------------------------------------------------\n"; } $this->assertTrue(1 > $totalTime); }
* SDK工作目录 * 存放日志,AOP缓存数据 */ if (!defined("AOP_SDK_WORK_DIR")) { define("AOP_SDK_WORK_DIR", WEB_ROOT . "/cache/"); } if (!is_dir(WEB_ROOT . "/cache/")) { mkdirs(WEB_ROOT . "/cache/"); } /** * 是否处于开发模式 * 在你自己电脑上开发程序的时候千万不要设为false,以免缓存造成你的代码修改了不生效 * 部署到生产环境正式运营后,如果性能压力大,可以把此常量设定为false,能提高运行速度(对应的代价就是你下次升级程序时要清一下缓存) */ if (!defined("AOP_SDK_DEV_MODE")) { define("AOP_SDK_DEV_MODE", true); } /** * 定义常量结束 */ /** * 找到lotusphp入口文件,并初始化lotusphp * lotusphp是一个第三方php框架,其主页在:lotusphp.googlecode.com */ $lotusHome = dirname(__FILE__) . DIRECTORY_SEPARATOR . "lotusphp_runtime" . DIRECTORY_SEPARATOR; include $lotusHome . "Lotus.php"; $lotus = new Lotus(); $lotus->option["autoload_dir"] = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'aop'; $lotus->devMode = AOP_SDK_DEV_MODE; $lotus->defaultStoreDir = AOP_SDK_WORK_DIR; $lotus->init();