互联网领域的云平台化已经成为云时代基础架构新创领域的方向之一,云时代的需求与技术创新也是不少开发者为之考虑和前进的未来方向。云计划,云产品,云应用,云享受,随着云服务的大力深入,更多企业和开发者开始漫步云端,而一款好用又兼容的云引擎技术,更是广大开发者所为之追求的。
伴随着云服务的强势入侵,引领互联网发展的云计算也成为了未来走势的重中之重。从3.0版本的SAE引擎开始,ThinkPHP已经开始迈出了支持云平台的第一步,不同版本的升级改进也在为用户提供更好的云服务而不断优化。面对云计算技术“扎堆热”的产业趋势和国内不同云平台的风起云涌,不同的云引擎势必给开发者造成了不少的困惑。
经过数月的研究和测试,2013年新年伊始,作为ThinkPHP七周年分享计划的一部分,官方正式推出了针对所有云平台和分布式系统而开发的Cluster云引擎扩展,全面拥抱云时代的到来。兼容新浪云、百度云和阿里云等云平台的Cluster云引擎,完全打破云平台的限制,全面开启跨平台无缝兼容的新机制,以给广大开发者提供最大的便利为出发点,方便使用者通过Cluster云引擎写的程序可以在各种云平台无缝呈现。
Cluster云引擎采用IO分离的机制,实现了一个引擎扩展,通用所有云平台和所有分布式环境,普通环境下也可以运行,真正的打破了云平台不兼容的缺点。开发者使用Cluster引擎写出的程序将对云平台没有依赖,可以很方便的移植到另外的云平台。
大数据来袭,你准备好了吗?还在为不兼容各云平台的程序而烦扰吗?ThinkPHP提供你势在必行的免费云引擎扩展,实现你多云平台的云梦想。走在云端的最前沿,ThinkPHP可以,你也可以!
Cluster云引擎采用IO分离的机制,实现了一个引擎扩展,通用所有云平台和所有分布式环境,普通环境下也可以运行,真正的打破了云平台不兼容的缺点。开发者使用Cluster引擎写出的程序将对云平台没有依赖,可以很方便的移植到另外的云平台。
为了方便大家使用,提供了两个下载包(只需要下载其中一个即可):
1. 云引擎扩展单独下载
2. ThinkPHP云引擎版本下载
如果是下载的引擎扩展,下载后解压缩放入系统的Extend/Engine/目录。
云引擎版本集成了最新github版本的3.1.2核心包和最新的Cluster引擎扩展,以及常用的驱动和类库扩展。
Github核心版本功能改进如下:
· 改进内置的 xml_encode 和 data_to_xml函数,不仅可以用于ajaxReturn还可以用于其他xml数据的返回
· 查询条件支持sql函数
· 入口文件增加ENGIN_PATH常量定义
· 入口文件增加对引擎扩展的载入支持
· 分组支持行为扩展定义文件
· A方法和D方法在独立分组模式下支持跨分组调用
· 修正跳转模板的一处js错误
· 改进D方法对多层模型的支持
· 改进Model类的cache方法
· 改进模板标签的界定符支持
· 改进模板引擎的对JS代码的误解析 可以有效识别JS代码中的易混淆代码(尤其对Jquery)
· 改进模板引擎的模板标签解析
· 分组添加独立的别名定义文件支持
· 修正在某些情况下Log类找不到的错误
· 修正空的标签{}导致解析混淆的问题
· 采用模式扩展后首先读取核心惯例配置文件 然后读取模式扩展自身的配置文件
· 改进Action类中error和success方法中waitSecond参数设置为0无效的情况
· 改进cache类 支持定义队列名称 改进缓存更新对出列的影响 调试模式下面可以记录出列次数便于优化队列长度 增加对缓存类型其他方法的内部调用支持
· 文件换行格式保存为unix格式
· 改进cache类对队列缓存的缓存机制判断
· DB类改进
· cache类取消connected属性
· 改进文件缓存类
· Model类的where方法支持多次调用
· Model类的query和execute方法增加对表前缀的支持
· action类的dispatchJump方法改进
对于引擎扩展的使用来说,有一个更方便的改进。新版的引擎扩展入口文件不再需要载入引擎入口文件了,直接载入框架的入口文件然后定义引擎名称即可,例如:
define('APP_NAME','App');
define('APP_PATH','./App/');
define('THINK_PATH','./ThinkPHP/');
define('ENGINE_NAME','cluster');
require THINK_PATH.'ThinkPHP.php';
?>
如果不定义ENGINE_NAME常量的话,就使用标准模式核心。
具体的云引擎的用法,请参考下面的教程和文档。
使用教程:ThinkPHP云引擎使用教程
视频教程:ThinkPHP云引擎视频教程