《开源框架那点事儿24》:开着跑车换轮胎

开着跑车换轮胎,这样的情形您能想象吗?

最近,一段拍摄于沙特阿拉伯的视频就记录了这样的超牛特技。地址给大家分享一下:http://www.douban.com/group/topic/52087839。从短片中可以看到,这辆汽车在沙漠中前进,一名男性就站在车门外,在几个大转弯之后,汽车成功地侧翻了约45度,仅靠2个轮子贴在地上行驶着。画面显示五个戴着头巾的男子探身从一辆正在行驶的银色跑车里爬出来,司机像F1赛车手那样让车子侧立起来,仅靠车身一侧的两个车轮行驶,他们则很麻利地更换了悬空的另一侧两个车轮。五名男子接下来的表现让人大跌眼镜——完成换轮胎特技表演后,他们并不急于回到车内,而是一脸兴奋的击掌和挥手庆祝,过路司机目瞪口呆地看完表演后纷纷加速超了过去。

据了解,这种汽车绝技表演在阿拉伯十分流行,运用两轮贴地面行驶的超高难度技巧,考验着驾驶者与乘客间的绝佳默契。在Java框架使用中,你能体验这种默契感吗?

带着思考,我们自然要联想到Java应用中比较常见的热部署。热部署是在不重启Java虚拟机的前提下,能自动侦测到class文件的变化,更新运行时class 的行为。Java类是通过Java虚拟机加载的,某个类的class文件在被classloader加载后,会生成对应的Class对象,之后就可以创建该类的实例。大多数基于Java的应用服务器,包括EJB服务器和Servlet容器,都支持热部署。类装入器不能重新装入一个已经装入的类,但只要使用一个新的类装入器实例,就可以将类再次装入一个正在运行的应用程序。

Tiny框架就是这样一部超牛的赛车,它支持在不停止应用的情况下,增加或删除业务单元。

Tiny构建者认为,一个完整的框架可能需要有许许多多个部分组成,但是对于实际应用的用户来说,它可能只需要其中的一部分功能。构架一定要有这种能力,可以由使用者进行点菜式,使用,避免只要用一点点功能,就要引入许许多多的内容。

TinyVFS把对各种各样的的文件系统的访问封装成统一的应用程序接口,这大大的简化了应用程序本身代码的复杂度。通过业务单元管理器,可以在不停止其它业务单元的情况下,增加新的业务单元,或把已经安装的业务单元停止或下卸载。这里所谓的业务单元,就是用来实现某种业务功能的完整集合,它包含了相关的Java Class文件、配置文件、媒体文件、界面展现文件(甚至支持把Jsp文件也放在Jar包中)等。利用业务单元,程序员可以进行软件开发、测试、发布,大大方便了业务的设计与发布。而且,业务单元之间也可以有依赖关系,如果某业务单元依赖的业务单元不存在或被停止时,则此业务单元也会被停止。

开着车换轮胎,使用Tiny来应用,这种灵活性还体现在多个地方。

(1)Tiny流程的执行位置十分灵活,可以从流程的任意节点开始执行,流程可重入的特性可以实现页面流、工作流等功能。

(2)Tiny模板引擎是一个基于Java技术构建的模板引擎,它具有体量小、性能高和扩展易的特点。适合于所有通过文本模板生成文本类型内容的场景,如:XML、源文件、HTML等等,可以说,它的出现就是为了替换Velocity模板引擎而来,因此在指令集上在尽量与Velocity接近的同时,又扩展了一些Velocity不能很好解决问题的指令与功能,在表达多方面则尽量与java保持一致,所以非常的易学易用。

(3)不管对象是否是在Spring等容器中托管,都可以使用缓冲逻辑,实现了缓冲逻辑无容器要求。

在UI引擎的组件包中,每个UI组件都是一个Jar工程,使得UI组件的集成由框架自动进行,而不必程序员进行干预。UI组件自发现功能,避免了大量配置工作。

(4)支持BigPipe模式。利用Web服务器和浏览器之间的并行执行能力,BigPipe首先把网页分解成多个可调用的Pagelet。多个Pagelet并行的在服务器端生成、网络传输、浏览器展现,从而大大提升展现效率与效果。

(5)在稳定性方面,Tiny框架是立足于在需要稳定、安全要求非常高的应用环境中使用的,因此其稳定性就是框架构建者首要思考目标,核心部分只使用经过充验证及广泛应用的第三方包。

总之,在这种灵活性基础上,Tiny正在形成一个成熟的开源生态圈,包含了Tiny框架、Tiny开源组件、Tiny商业组件、Tiny技术支持、Tiny咨询、Tiny培训等,具有较强市场竞争力和可持续发展的体系,展现了一种新的软件产业发展模式。

IT书友会:http://bbs.tinygroup.org/group-115-1.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-06 14:26:49

《开源框架那点事儿24》:开着跑车换轮胎的相关文章

《开源框架那点事儿11》:软件开发杂谈

杂谈之中的一个:技术仅仅是成功的一点点基础条件.真正还是得靠做人 话说,有位lianzi同学.水平不错.思想超前,签约阿里如今在百度实习,曾经由于喷我的贴又没有啥理由,因此告诉他离我远一点.可是近期他又回到我群里了.一直伸个大拇指,我说啥他都是大拇指,认为怪怪的.总不是那么个感觉,最终憋了一段时间,又恢复了正常的沟通方式,聊天实录: [传说]杭州-悠然 18:31:13 lianzi本色最终出来了. [传说]杭州-悠然 18:31:30 我学得这样才是你自己.你天天伸个大拇指.我都认为不像你了.

《开源框架那点事儿13》:基于开源框架做应用是未来中小型软件公司的发展趋势

在我的周边朋友身边就发生过这样的事情: 故事1:A君在北京从事Java开发好多年了,萌发了创业的念头,想组建了一个开发团队想大干一场.但是慢慢发现,构建一个有战斗力的团队真不容易.后来技术团队的组建初步有了起色,但是技术路线却非常难成一致意见.折腾来折腾去,把有点上道的技术人员都折腾得跳槽了.费了巨高的成本搞了一个架构师,就是利用SSH框架搭建了一个开发环境,数据量小,业务初期还是不错的,但是当业务快速增长的时候,运行速度就无法满足需要了.是重新来过还是在SSH的基础上继续折腾,非常难以抉择!

《开源框架那点事儿13》:开源与中小型软件公司的未来趋势

在我的周边朋友身边就发生过这样的事情: 故事1:A君在北京从事Java开发好多年了,萌发了创业的念头,想组建了一个开发团队想大干一场.但是慢慢发现,构建一个有战斗力的团队真不容易.后来技术团队的组建初步有了起色,但是技术路线却非常难成一致意见.折腾来折腾去,把有点上道的技术人员都折腾得跳槽了.费了巨高的成本搞了一个架构师,就是利用SSH框架搭建了一个开发环境,数据量小,业务初期还是不错的,但是当业务快速增长的时候,运行速度就无法满足需要了.是重新来过还是在SSH的基础上继续折腾,非常难以抉择!

《开源框架那点事儿15》:借船下海还是造船下海

1.借船与借力     三国时期,曹操率大军想要征服东吴,孙权.刘备联合抗曹,"草船借箭"即来源于此,意即运用智谋,凭借他人的人力或财力来实现自己的目标.我们来看看这个故事的几个关键环节.    为了筹集十万支箭,诸葛亮找到鲁肃.诸葛亮说:"这件事要请你帮我的忙.希望你能借给我20只船,每只船上30个军士,船要用青布慢子遮起来,还要一千多个草把子,排在船两边."第三天四更时候,诸葛亮邀请鲁肃一起,把船用绳索连起来向曹操对岸开去.那天江上大雾迷漫,对面都看不见人.当船

《开源框架那点事儿25》:对框架模板引擎实现方式的改造实录

点滴悟透设计思想,Tiny模板引擎优化实录! 增加框架设计兴趣小组:http://bbs.tinygroup.org/group-113-1.html Tiny模板引擎的实现方式原来是採用的编译方式,近期发生了一些问题.因此我认为有必要把编译方式调整为解释方式,为此就開始了此次实现活动. 编译方式存在的问题 当时採用编译方式.主要是考虑到编译方式在执行时不必再去遍历语法树.因此就採用了编译方式. 可是在实际应用其中,出现了例如以下问题: 文件路径冲突的问题 因为採用的是编译方式,这个时候就存在在

《开源框架那点事儿18》:为什么要先从测试用例编写和文档编写开始?

有一个同学,问我一个问题:加入Tiny是否必须从写单元测试用例和文档作起? 此问题引发我诸多感触,故形成乱弹一篇. 作为一个新加入者,多看.少说,是正点.而这个时候,写写测试用例.文档,就是个不错的选择.这样入手比较容易,也比较容易体现水平. 可以说好的程序员,测试和文档都是写得好的.测试和文档一定写不好的,一定不是好的程序员. 同时,在看代码,写测试用例.写文档的过程中,还可以这样思考: 他为什么要这么设计?换成我,我会怎么设计?然后有相当一部分,会转化成:哦,原来是这个样子的!这个时候你进步

《开源框架那点事儿23》:采用TinyDB组件方式开发

采用TinyDB组件方式开发 步骤 Icon 前文介绍四则运算的流程编程开发时,说过流程编排在开发重复功能时,可以利用已有的组件库快速开发.对于开发人员而言只需要简单配置流程就可以完成工作了. 开发增删改查的组件接口.本来这部分很花费时间,如果采用组件复用的话,就可以实现一次开发,终生受益. 配置curd.beans.xml和tinydb.xml. 使用流程编辑器定制组件流程curd.pageflow. 修改页面文件:list.page和operate.page,使之符合流程方式调用. 修改布局

《开源框架那点事儿17》:与屈原对话及开源精神

竹子与开源:扎根是为了长得更高 端午节到了,人们都在讨论屈原不屈不挠的精神,以及龙舟.粽叶等世界文化遗产.粽叶清淡,给人无限的遐想.或者,你很容易想起和粽叶形状比较类似的竹叶,以及屹立挺拔的骨感竹子.竹在清风中瑟瑟的声音,在夜月下疏朗的影子,都让文人墨客深深感动.而竹于风霜凌厉中苍翠依然的品格,更让诗人引为同道.苏东坡曾在<于潜僧绿筠轩>里宣称,"宁可食无肉,不可居无竹.无肉令人瘦,无竹令人俗.人瘦尚可肥,士俗不可医."当年郑板桥曾作<竹石>,细细品味,也给人许

《开源框架那点事儿20》:自己动手写前端框架

曾经发表过一篇文章:TinyAdmin前端展现框架.其在线演示路径为:http://www.tinygroup.org/tinyadmin/.应该说有很多人还是感觉兴趣的,可是因为这个是基于SmartAdmin框架改写的,尽管我们自己买了SmartAdmin的授权,可是广大用户假设要用的时候,就会有授权相关的问题,这会大大影响一些人的使用决策--尤其是会再发行的朋友. 再一个原因是SmartAdmin初看不是不错的.可是实际用起来.里面的问题比較多.对IE8基本上能够说是不兼容,尽管我们努力进行