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 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题