HICK 者,乡巴佬也

Smarty 出新版了: Smarty 3

Posted in: PHP — Hick @ 2008/10/25 23:41:20 Comments (1)

有些意外,刚才访问 http://smarty.php.net 发现提示已经转移了。印象中 smarty 有好几年没怎么更新了,一直给人很臃肿的感觉。不过很多时候,还是觉得 php 模板里,用它还是最爽的。

刚看到 smarty 3.0 alpha 版本,目录结构有所变化, Smarty.class.php 减肥了,一个整体思路就是尽量在需要的时候才加载相关文件。
支持单例,还把 php 所谓的 “PHP TEMPLATES” (php 本身可看做一个模板引擎)引入,但是我还是讨厌 php 代码直接夹杂在 html 中的写法,很麻烦很别扭,除了模板写法相对简单,使用 smarty 的另外一个作用是限制模板中的语法复杂度。现在允许下面这样,有些反感
$smarty->display('php:mytemplate.tpl');

也支持这种语法:
$smarty->display('string:This is my template, {$foo}!');

感觉上没什么变化,正好一会拿去做压力测试看下跟老版本是否有性能上的改进。更多描述参见 http://smarty-php.googlecode.com/svn/branches/Smarty3Alpha/README

smarty 官方新地址 http://www.smarty.net/

Dtrace & SystemTap

Posted in: Linux/Unix工具 — Hick @ 2008/10/05 12:11:55 Comments (0)

[摘自 IBM DW] DTrace是一个强大的动态跟踪框架,它允许管理员、开发者和服务团队精确地回答关于操作系统和用户程序的任何问题。用户可以使用它管理成千上万个探测点,为每一个探测点指定执行条件(Predicates)和执行的动作(Actions),动态管理跟踪缓存和探测点开销。用户通过它能够对正在运行的系统跟踪来查看问题,也可以根据系统崩溃时产生的dump数据来查看问题。开发人员则可以实现新的提供者(Provider)和消费者(Consumer)以及配置管理探测点的工具。

DTrace对探测点上下文没有任何限制,也就说可以对任何函数进行探测,这是因为DTrace框架是完全非阻塞的,它基本上没有显式或隐式地调用内核其他功能。

如果发生性能下降或其他服务器问题,动态追查 (DTrace)帮助您解决这些问题。利用 DTrace,您可以在服务器上监控和了解运行状态、详细的系统行为和系统问题。

作为为 Sun Solaris 企业级服务器而设计的分析工具,它能与操作系统协作,而不会中断系统的运行和降低系统性能。其功能远不是 strace 等能相比的,而 Dtrace 也不局限于底层的调试分析,同时能通过专门的脚本语言进行编程,甚至有拿来做 javascript 调试的视频演示:http://frsun.downloads.edgesuite.net/sun/07C00953/

2006 年,Dtrace 打败 600 多个竞争对手应用软件,被评为最具有突破性的技术,荣获华尔街是日报技术创新金奖 Wall Street Journal’s Technological Innovation Award 。它使用最少的工作负荷,在 Solaris? 10 操作系统中内嵌 4 万多个追踪点,提供强大的追踪过滤功能。

由于跟内核密切相关等因素,Dtrace 目前只能够在 solaris 系系统上运行(freeBSD 的移植也进展缓慢),Red Hat, IBM, Intel, Hitachi, Oracle 共同开发了 linux 下类似的工具: SystemTap (http://sourceware.org/systemtap/)

(more…)