IBSM基础数据平台
技术实现
springboot、redis、mybatis、(springcloud 待加入)
背景目的
虽然目前开源java各种管理系统种类繁多,总体概括为(免费版功能不全、打着开源却干着各种使用条件限制的龌龊事[商业各种收费或者要留水印、签名、不得改动源码等]、系统环境配置复杂、集成了一堆臃肿功能、二次开发难度大、页面尴尬、等。这个不是针对所有,是个别
) ,所以在这种背景下,促使了ibsm基础数据平台的产生。
特点
功能简洁(包含大部分系统拥有的基础功能,用户[预留上级用户功能]、角色、菜单、权限、数据字典、操作日志查看)。
前后台升级替换方便(前后台完全分离,前端代码地址)。
接口安全性高(接口层权限控制)、适用性广(crm、cms、app应用、营销系统、oa等)。
对其他系统侵入性小(sdk集成,可替换性高、代码改动量为完全忽略)。
环境部署简单(CI、CD引入或者引入Docker容器编排等)。
水平扩展性良好(第一种方式,升级为SpringCloud、将RPC数据交互更新为http[实现较为简单];第二种方式,引入SpringCloud+consul或者eureka集成跨系统数据交互依旧使用RPC[非常简单];第三种方式,引入zk或者consul构建如dubbo模式的服务注册与发现应用[实现相对复杂点])。
其他系统集成只需要加入sdk,及可纳入基础数据平台管理,省去开发基础数据模块业务代码工作量及时间:
com.hm.core
ibsm-manage-sdk
3.0.0
com.hm.core
ibsm-manage-service
3.0.0
docker 容器启动配置
docker run -p 9001:27017 --restart=always --name=mongo-server -v $PWD/db:/data/db -d docker.io/mongo
docker run -it -d -p 10000:10000 --name=manager --link=redis:master.redis.com manager:4.0.0
docker run -p 9001:8080 -p 50000:50000 --name=jenkins docker.io/jenkins
docker run -d -p 9000:8081 --name=nexus docker.io/sonatype/nexus
docker run -it -d --restart=always -p 9000:6379 --name=redis 861cc310cd91