框架特性

总体想法

  • 综合、全面
  • 自动化
  • 不做代码生成
  • 3层架构

灵活的部署

  • 已测试过可在Windows, OS X, Linux上的Java中运行
  • 多实例管理(分离的容器或虚拟机中的应用服务器,分离的数据库)
  • 数据库
    • 默认使用嵌入式的H2数据库
    • 自带适用于H2、Derby、PostgreSQL、MySQL、HSQL、Oracle、DB2和SQL Server的配置
    • 只需要修改配置就能支持其他数据库
  • 其他数据源
    • 通过插件插入NoSQL和其他数据源
    • OrientDB图形和文档数据库支持OOTB(默认以嵌入式方式运行)
  • 应用服务器
    • 使用嵌入式的Bitronix BTM或Atomikos TransactionsEssentials的JTA和连接池
    • JTA工厂接口插入其他事务管理器,不需要一个全量的J2EE容器
    • JTA事务管理器支持,XA-aware连接池 , from 应用服务器 through JNDI
    • 可执行的WAR文件可用于命令行数据加载,使用嵌入式的Winstone servlet容器
    • 同一个WAR文件能放入像Tomcat或Jetty的servlet容器,或是像JBoss、Weblogic这样的应用服务器
  • 自定义部署(嵌入式等)
    • 使用提供的MoquiServlet,或基于示例编写你自己的,或者采用非webapp servlet的方式部署
    • 所有都运行自一个ExecutionContextFactory实例,所以很容易在自定义的应用中包含,或通过OSGi、Spring等部署
    • 使用MoquiInit.properties文件或系统属性(java -D参数)指定运行时目录路径和配置文件位置
  • 项目构建
    • 用Gradle构建、测试和部署
    • 目录结构与Maven/Gradle等事实标准一致
    • 方便起见,部署和WAR工具也在Ant build文件中

集群支持

  • 各种接口以插入分布式系统工具
  • 默认实现使用Hazelcast(在moqui-hazelcast工具组件中),为了协调所有集群,使用单个配置,这样更易于安全地自发现及加入集群。
  • 分布式实体(数据库)缓存失效
  • 分布式后台(background)服务执行
  • 分布式的通知主题
  • 分布式的缓存(JCache)
  • Web(Servlet)会话复制

默认运行时

results matching ""

    No results matching ""