ZK框架的zscript的运行机制

最近在自学ZK框架,想知道zscript的运行机制。
zscript好像是服务端运行的,个人的理解是ZK加载器在加载zul页面的时候把zscript代码整
合到组件里,然后浏览器那边用户进行了某个操作后ZK客户端引擎把事件捕获并传递一个
请求到ZK异步更新引擎,然后更新引擎去更新组件并解释运行zscript代码,最后把
结果传回浏览器更新页面。
希望哪位大神给个更详细的解释吧,比如我的zul页面上有个button,然后按这个button
就执行一段zscript代码,这个过程是怎样的?