本文主要是介绍智能一代云平台(四十三):技术选型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
【前言】
最近在整理智能一代云平台的相关资料,发现一年前我们进行三周的技术选型的讨论以及最终方案的确认;自己有幸能从头到尾全程参与,对个人的技术体系有很大影响;在此整理一下;
【技术研究及方案确认】
一、研究技术体系:
Dubbo、SpringCloud、EJB
二、技术调研:
1、技术方案选型考虑因素:
2、分三个组分别对三个技术体系进行相关的学习,并实现相同的Demo;
3、针对三个技术小组成果进行讨论并决定最终的技术方案。
三、技术讨论会结论:
1、对系统改造:
(1)采用 dubbo后端技术架构方案实施项目改进;
(2)将考试、评教、选课、课程表和其他与学生相关的模块抽离成服务,将现有的服务颗粒缩减到15个左右;
(3)在主版本稳定后再进行迭代,可以在小范围使用其他技术体系;
(4)项目改进分为两个阶段:
①第一阶段使用确定的技术方案改进项目;
②第二阶段根据业务发展情况适时向微服务架构演进;
2、技术选型确认关键原因:
(1)采用Dubbo体系的原因
①Dubbo对当前分布式系统所需要的服务注册和发现等功能提供的比其他技术体系完善好用;而这也是项目当前所需要的;
②Dubbo开发效率高,学习成本低;
③能够很方便的迁移到Spring Cloud体系下;
④ 能够得到更多技术团队支持;
(2)不采用JAVA EE(EJB)体系的原因
①学习成本高,绝大部分资料需要英文能力,需要更大的耐心;
②开发效率明显低于Spring技术体系;
③当前JAVAEE版本对微服务不支持;
(3)不采用Spring cloud体系的原因
①Spring cloud相关组件和服务还不够完善,我们需要承担相关技术风险。应考虑将更多精力放到业务开发上;
②Spring cloud在分布式和注册中心上并没有dubbo好用和全面;
③以当前项目的发展Spring cloud提供的17个组件暂时不需要,项目一步到微服务有一定困难,从业务和用户量上看也没有迫切需要;
【总结】
1、技术体系的确定要根据所做的项目业务,更加适合业务的技术体系可以事半功倍。
2、大家有什么其他的见解,欢迎在评论中留言。
这篇关于智能一代云平台(四十三):技术选型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!