现有商城开发重构
image.png
从架构图中可以看到ofbiz的所有app都构建在framework之上。framework的核心就是ServiceEngine(服务引擎)、EntityEngine(实体引擎)。实体引擎对于数据库的种类支持都非常健全。
权限方面,ofbiz采用的是角色+安全组的授权模型。
OFBiz几乎实现了所有的J2EE核心设计模式,各个模块之间的耦合比较松散,用户能够比较容易的根据自己的需要进行拆卸,非常灵活。
根据 官方文档 指导,在本地 部署运行 了ofbiz。
查阅了相关文档,默认支持soap的webservice服务,没有开放的restful api文档。
官网地址
github
demo站QOR是首个使用Go语言开发的电商系统、CMS的SDK。它是一组用Go编写的库,用于抽象业务应用程序,内容管理系统(CMS)和电子商务系统(EC)所需的通用功能。
Go语言本身具有的特点是:速度快、高性能、灵活、开发快速、安全等,这些都是得到开发者的广泛认可的。QOR使用Go语言开发,能够将该语言的各方面优势也应用到产品中去。
Admin模块可以快速生成一个漂亮、可跨平台运行、可配置的管理后台。
Publish模块设置了预演和正式两种服务器环境,可以在正式发布之前预览此次更新的内容。
Internationalization(i18n)国际化翻译工具。
Localization(l10n)本地化智能管理业务对象。
Transition模块能够体现业务流程和执行业务规则。
MediaLibrary模块支持上传文件至云端,支持图像自定义处理。
技术团队对Go语言无经验,会导致自定义开发过程中风险不可控。
暂无
Play Framwork是一个轻快的REST风格的框架。
Play 1.x 使用Java开发,只支持Java项目,只维护不更新。
Play 2.x 使用Scala和Java开发,同时支持Java和Scala项目。
Play 框架自动编译 Java 源代码,然后直接热加载到 JVM 中而不需要重启服务器。编辑代码后,框架自动重新加载,然后直接就看到修改后的结果。
简单易上手, 没有JSP里面繁杂的内置对象和指令, 全部功能都通过方法调用完毕。 支持反向路由。
绑定一个 URI 模式到 Java 调用只需要在route中定义一行代码。
Java 持久化接口( Java Persistence API )是一个简洁的 Java 版的 ORM 框架,不需要任何配置,Play 会自动启动 JPA 实体管理器,并在代码发生修改时自动地同步。
我之前使用过Play 1.x,虽然支持JPA 持久化,但是不支持方言。
Play2.x是否有优化还需要再查阅资料。
不支持方言就会导致对数据库的操作很不灵活。
Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架。
完整的微服务解决方案。
约定优于配置,基于注解,没有配置文件。
轻量级组件,Spring Cloud 整合的组件大多比较轻量级。
开发简便,Spring Cloud 对各个组件进行了大量的封装,从而简化了开发。
开发灵活,Spring Cloud 的组件都是解耦的,开发人员可以灵活按需选择组件。
项目结构复杂,每一个组件或者每一个服务都需要创建一个项目。
部署门槛高,项目部署需要配合 Docker 等容器技术进行集群部署。
由于时间有限,Oscar和spring cloud、boot没有写完整。
但是根据这些天的初步调研,更倾向于使用微服务框架重构现有商城。
play轻且灵活,spring cloud更重一点。