GWIsoft 2016-09-07 05:34 采纳率: 100%
浏览 2195
已采纳

一个JAVA业务开发工程师的烦恼(业务系统平台化)

请问一下,同一个功能,不同客户有微小的需求不同,导致一个系统一个客户,或者同个系统里面为了区分不同客户if else一大堆,维护工作量非常大,怎么样优雅从业务平台架构去设计这个系统,
实现一个业务平台可根据不同业务需求做二次开发,公共业务出现差异化时,可扩展差异部分,实现完美平台化,请大家帮忙头脑风暴一下,或者是否有现成的系统已实现我的困扰。谢谢

目前我想到的有:
1、模块可插拔,把一个功能拆分成各个小模块,二次开发小模块可以替换,通过配置实现不同客户的需求,从技术上可以用java的spi机制。
2、实现小模板块拼装成大模块,但如果模块之间数据的流转,配置设计很复杂,A模块的输出要成为B模块的输入,配置没有好的方案,同一业务各小模块修改数据库同一条数据时,为了提高性能怎么保证只操作一次数据库。

  • 写回答

7条回答

  • henry-hacker 2016-09-08 03:33
    关注

    图片说明

    更新了下,你看看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘