Tiny框架之内容组成

Tiny框架10分钟入门,用于在10分钟之内使读者对Tiny框架的组成有个概要了解。

  • 应用配置框架
    用于提供系统配置加载与分发,同时提供默认配置及应用级配置两套配置方案,并以应用级配置方案为主,也就是说应用级的配置参数可以覆盖默认配置。
    这样做有个好处,就是如果不配置应用级配置,那么默认配置也可以上你玩得很好;如果提供了应用级配置,那么可以对系统、框架、模块的原有行为进行个性化调整。在个性化及便捷化方面提供了一个兼顾。如果是低级用户,那么你就傻瓜式使用,啥配置也别改,有可能不是最优的,但一定也是相当不错的;如果是高级客户,那么你可以对各种参数进行深入配置。
  • 应用启动
    不管是普通控制台应用还是Web应用,都有一个启动过程。应用启动用于加载配置,分发配置,启动文件扫描,启动插件框架,等等处理。这个一般使用默认实现即可,当然,如果要深入调整启动方式,也可以自行实现。
  • 文件扫描
    Tiny框架采用了扔进去不用管的的组合模式,实际上是因为有文件扫描器进行扫描、处理,才得以实现的。可以说文件扫描是模块化的基石。
  • 插件框架
    插件框架主要解决启动及停止,还有要解决启动及停止时序。第一版的插件框架是支持热插拔的,但是由于要考虑的问题及多,投入产出比太不经济,再一个由于Tiny框架是SOA架构模式的,因此可以通过集群当中不同的机器进行分别维护来解决热插拔的问题,因此现在改成非热插拔的方式了。
  • 通用事件处理框架
    通用事件处理插件用于对外提供统一的基于服务的访问方式,而不用关心服务的真正生产者在哪里,所以也就无所谓本地服务和远程服务。
  • 服务加载框架
    服务加载框架用于把在本地运行环境中的服务加载起来并在通用事件处理框架中进行注册。
  • 缓冲框架
    通过查找是否存在缓冲的实现方案,如果有,且加载并启动之。
  • UI引擎
    UI引擎用于查找当前运行环境中存在的UI组件,并加载之,并提供JS合并及CSS合并等相关处理。同时提供了强大的基于布局和页面的展现支持。同时,高度的组件化,使得复用别人的组件和自己开发组件一样方便。同时还提供了JS,CSS加载时序的处理,使得开发人员不必再关心这些引入顺序问题。
  • JSP运行引擎
    JSP运行引擎是由Jasper引擎改进而来,主要的改进目的是解决模块化的问题,也就是说把JSP放入Jar包的支持。
  • 字典框架
    字典框架用于通过各种加载方式加载系统中用到的字典项并对外提供字典服务。
  • 上下文支持
    提供了强大的上下文支持,支持上下文嵌套。正有了上下文的支持,才使得变量的复制仅在跨节点时才会发生。节省了系统开销,内存占用,简化了框架实现难度。
  • 文档生成框架
    用于生成各种类型文本内容,比如:xml,比如:源代码,比如:word,pdf,excel等等。当然,它只是个框架,里面已经内嵌了一些组件,但是真正要用得好,还是需要进行组件扩展的。
  • VFS虚拟文件系统
    用于统一对各种异构文件来源的文件进行统一化操作的封装,支持本地文件,URL文件,FTP文件,ZIP,JAR文件等的统一化访问,当然也可以通过扩展支持更多的文件来源。
  • 基础组件
    主要包含线程组,对象池,优先队列等实现。
  • 元数据加载框架
    支持定义各种元数据并加载之,元数据主要包含类型定义(屏蔽不同数据库及编程语言之差异),业务类型定义(使得业务类型有含义),标准字段定义(业务中只能使用标准字段)等等,通过这些元数据的定义,可以方便的进行跨数据库,跨编程语言运行(只适合流程编排式开发)。
  • 数据库访问框架
    Tiny框架本身不拒绝任何ORM方案,但是内嵌也增加了一个小的跨数据库数据访问方案,不用写POJO,不用写DAO,直接就可以完成各种数据库处理。并且可以与Hibernate,iBatis等框架进行集成。
  • 应用安装框架
    应用安装框架用于解决软件升级过程中的数据库表结构调整,初始化数据插入等等处理,不论经历了多少个版本变迁,都可以使得应用无工作量自动升级完毕。有过大型工程实践经验的人,会知道这个功能可以带来多少便捷及节点多少开发及维护工作量。
  • Xml及Html解析
    内嵌高性能Xml及Html解析,尤其是在遍历方面性能比一般解析器高太多,非常适合一次解析之后需要进行大量遍历的场景。同时,对于中文标签及属性有良好支持,有非常强的容错性,即使Html不符合规范,大多数据情况也可以正确解析。最差的情况也会给出一个不正确的Dom,而不是抛错退出。
  • 网络爬虫支持
    资源获取集成了HttpClient,Html解析采用内嵌html解析方案,上手简单,可以避免多次抓取,死循环等等,在普通 应用场景应用已经足够了。
  • 流程引擎
    支持组件任意自行扩展,支持面向对象特性,如:流程继承、节点覆盖重写等,同时提供灵活的异常捕获机制,同时还支持流程重入,也就是说流程的执行不一定非从流程的第一个节点起执行。正因为流程可重入的特性,基于其提供了页面流的支持,工作流引擎理论上也是可以的,不过还没有开始。
  • 校验框架
    提供前后台校验规则一次性编写,前后台同时生效。
  • Web层框加
    这一次提供的内容太多,不一定说全。支持web.xml不用修改方案,这样大大有利于模块化及后期的维护。提供了页面流支持。提供了rewrite支持。提供了文件上传支持。提供了安全过滤。提供了No session支持。提供了Bigpipe支持。提供了压缩输出支持。提供了对象组装支持。
  • DBRouter
    基于JDBC3和JBC4规范的数据库集群及分库分表方案,提供数据库集群、分库、分表等方面的强力支持,支持各种数据库。在限定之外的SQL语句都可以支持。对上层应用影响最少的数据库集群及分库分表方案。
  • 分布式计算框架
    提供了基于职介所、工头、工人、工作模式的多机协作分布式计算功能。支持任务分解、合并,支持工作序列化,永不丢失等等诸多特性。
时间: 2024-08-03 10:37:57

Tiny框架之内容组成的相关文章

从应用示例来认识Tiny框架

呵呵,Tiny框架神龙见首不见尾已经许多时间了,里面只看到一些几个孤零零的子框架.今天就通过Tiny开发示例的方式来重点展示一下利用Tiny框架是如何开发的. HelloWorld 首先从这个神一样的示例写起. 服务开发: 方式1:注解方式 ? 1 2 3 4 5 6 7 8 9 10 11 12 @ServiceComponent() public class HelloWorldAnnotationService{     @ServiceMethod(serviceId = "sayHel

TINY框架FAQ汇集

问题:Tiny的贡献者有哪些? 创建及主要设计者:悠悠然然 主要参与人员:Atizose,ballackhui,nishihe,达达 其它贡献人员:dandy 问题:要学习Tiny框架要有什么前提条件? 必备条件: 首先会Java 掌握Maven 熟悉git 可选条件: 有oschina的注册帐号:可以与Tiny框架构建者沟通 有oschina的git注册帐号:便于创建Tiny框架的Fork,并提交给原作者 对悠悠然然加粉:享受果粉待遇,得到辅导及及时回复 加入Q群:可即时互动 问题:学习Tin

Tiny框架2.0版火热推出

方法论 方法论决定了可以达到的高度 方法论,就是人们认识世界.改造世界的根本方法. 它是人们用什么样的方式.方法来观察事物和处理问题.概括地说,世界观主要解决世界"是什么"的问题,方法论主要解决"怎么办"的问题.  方法论是一种以解决问题为目标的体系或系统,通常涉及对问题阶段.任务.工具.方法技巧的论述.方法论会对一系列具体的方法进行分析研究.系统总结并最终提出较为一般性的原则.  方法论也是一个哲学概念.人们关于"世界是什么.怎么样"的根本观点

Tiny框架设计理念

使用灵活,可以整个使用它,也可以只用它的一个或几个部分 Tiny框架的项目组织不是放在一个大包里面的,而是根据功能进行了细致的模块划分,这样,在使用的时候,可以更加灵活,可以只使用其中的一个公共库,也可以使用其中的一个小的框架,也可以使用它们中的更多,当然也可以整体使用. 学习成本低,上手容易 如果你是想对Tiny进行修改,那么你的学习时间是要长一些的,你要用到的东西越多,要学习的范围也越广:如果你是应用架构人员,那么主要集成中Tiny框架的配置及各模块的作用上:如果你是开发人员,实际上学习成本

Tiny实例:TINY框架官网制作过程详解

新增加war包下载地址,呵呵愿意体验的可以直接下载并发布到容器即可试用,也可以查看里面的内容. 由于只花了两天时间制作,一天时间搞页面,一天时间搞内容,所以还非常粗糙,还有许多需要完善的地方,欢迎同学们提出改进和完善意见,但是今天网站做的好不好不是重点,重点讲讲网站是怎么做出来的.当然了,不用问,必须用Tiny框架来做,所以今天就来讲一下如何利用Tiny框架来高速有效的进行网站开发. 网站模板选择 首先声明,本人是美工盲,前台界面盲,JS盲.所以,指望自己弄个漂亮的网站出来那是根本没有可能的.好

Tiny框架启动过程日志

一个系统的日志,可以看到许多东东. 下面是Tiny框架的Web应用启动与停止过程 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

Ariadne 2.7.6发布 Web框架和内容管理系统

Ariadne是一款采用PHP开发的Web应用框架和http://www.aliyun.com/zixun/aggregation/10094.html">内容管理系统.它可以让你轻松建立复杂的Web应用程序和网站,支持安全性,用户管理,模板化,数据检索和存储,高速缓存,和网站管理的功能.它存储在一个结构化的对象存储,可以通过一个广泛的文件系统的API访问内容. Ariadne 2.7.6版本增加了一个新的语法来突显模板编辑器,支持PINP模板.firePHP调试和reCAPTCHA模块.

Ariadne v2.7.5发布 Web应用框架和内容管理系统

Ariadne 是一个Web应用框架和一个内容管理系统,使用 PHP 开发.你可以使用它来创建复杂的Web网站,支持国际化.安全.用户管理.模板化.数据抓取和存储.缓存.网站管理等功能. Ariadne 2.7.5发行说明如下: New features: - Added get_content_type function to mod_mimemagic- Added upgrade script for newer myqsl database which adds defaults to

ie下打印iframe,frame框架页面内容

假设iframe的id为printFrame,则使用如下代码  代码如下 复制代码 window.frames['printFrame'].focus(); window.frames['printFrame'].print();