云原生集成开发环境——TitanIDE
通过网页在任何地方更安全、更高效地编码2022-07-07
981
当前,以微服务、DevOps、容器、多云业务管理为代表的云原生技术已经广泛成熟应用,成为加速企业数字化业务高效创新、实现企业数字化转型的最佳技术支撑。而信创支持、国产化支持,是中国企业数字化转型不得不满足的基本要求。更有专家指出,在关乎企业生存的必选项“数字化转型”以及国家信创战略的共同冲击下,企业需要改变现有业务和IT的架构,更快速地应对挑战、响应变化,增强自身的竞争力。
乐鱼创新专业打造信创微服务开发支撑能力,助力中国企业打造信创微服务平台。
一、打造业务系统向信创环境一键切换的能力
信创是坚定之路,需正视他带来的若干挑战才能走好信创之路。坚持信创会主要带来以下挑战:
1、时间紧迫性带来的挑战:信创工作时间紧、任务重,原有的业务开发计划已经排得很满,如何让信创工作又好又快地开展,同时对原有业务项目建设推进影响最小?
2、业务适配新技术的挑战:信创建设必然引入新硬件、新软件,开发测试人员也需要学习他们吗?如何避免开发、维护信创、非信创多套代码、多个版本?
3、保障业务稳定性的挑战:信创建设引入的硬件、软件需要一个过程验证对何种业务有怎么样的支撑力度,非信创与信创如何共存和过渡?如何按需在非信创和信创环境间灵活调度业务?
4、信创技术多变性的挑战:大趋势下,随着时间推移,硬件、操作系统、数据库、中间件等各类新的信创组件将层出不穷的出现,如何建立起一个能够开放渐进、优胜劣汰、持续引入的能力?
其中,现有业务系统与各层次信创技术的适配性,例如在数据库层级,信创代表技术有达梦、阿里云等,而国产数据库一般承诺兼容ANSI SQL标准,但我们代码中可能使用了大量的MySQL/Oracle的特性,如存储过程等,适配国产数据库是一个开放渐进的大工程。再比如中间件层次,信创代表技术有东方通、宝兰德等,中间件涉及的范畴比较广,目前国产中间件还是以消息中间件,SOA中间件等为主,但预期未来会越来越多。程序需要与不同的中间件进行代码级别的调整适配、测试,工作量和长期影响较大。此外,还有操作系统、服务器硬件、芯片等多方面都需要将信创适配考虑进来。
信创之路面临重重挑战,我们要如何实现业务系统想信创环境切换?
行云采用“解耦合 + 自动化”建立起支撑信创工作的开发平台
代码是业务完整的、中立的体现。 行云计划支持实现代码与周边现存、未来之技术(信创、非信创)解除耦合。
1、自动化构建能力:把中立的业务代码,自动化的构建,加以适配到信创、非信创环境,灵活地在两者间根据需求调配,包括切换不同信创组件的各类场景,应做到对业务开发侧无影响,甚至是无感知。业务开发只对业务代码负责,剩下的事由平台自动处理。
2、操作系统抽象:通过容器技术隔离操作系统对业务的影响,打造适配业务需求的、精简的、优化化的基座镜像(Base Image Provisioning),无论操作系统是否信创、哪家信创,对业务无影响。
3、中间件和数据库抽象:通过DAPR技术实现接口抽象隔离,业务只对接抽象接口,后台对接具体的信创、非信创,或是哪家信创组件,在自动化构建和部署时决定。 当然,这涉及到业务代码的一次性调整,考虑到目前最紧迫的信创改造还是在硬件和操作系统,中间件和数据的解耦工作可以渐进式开展。
打造信创开发平台的收益
1、业务开发人员关注代码的业务实现,向信创环境的适配由平台自动化实现,在又快、又好地落地信创工作同时,原有的业务开发计划不但不受影响,反而因为有了开发平台的支撑让开发本身更聚焦于代码(而不是各类不同环境),还会让开发效率更高。
2、业务代码本身应该是“技术中立”的,开发人员聚焦于业务开发本身,无需学习甚至是关心最终交付后的信创相关技术,由平台而不是开发人员完成向不同的技术栈适配,测试人员用原有业务功能、性能指标加以测试,再转产。信创的技术实现由最有必要的、专业技术人员(运维侧)负责,这类人员也因为平台的存在而在技术组件替换、或是引入新技术时得心应手。
3、哪些业务先上信创、哪些后上,哪些业务需要在非信创和信创并行、平滑过渡,哪些业务可能信创环境暂时不能较好支撑,需要切换回非信创以待条件就绪再信创。为了保障业务,这些调度策略将会经常发生,再加之多数据中心的考量,有了平台帮助实现才能达成灵活高效、游刃有余。
4、信创产品在未来层出不穷,有了平台的支撑,可以以开发放渐进、张弛有度的方式引入新技术、淘汰落后技术达成最终全面信创、稳定高效的支撑业务发展的最终目标。
二、打造快速响应业务需求的跨系统编排能力
烟囱式系统开发面临着极大的挑战
烟囱式系统面临的挑战示例
行云信创微服务解决方案,借鉴“桥接模式”解决该问题的思路
设计模式之桥接(Bridge Pattern)定义:桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。
借鉴“桥接模式”解决该问题的思路
打造通用的跨系统、跨服务间编排能力
行云打造通用的跨系统、跨服务间的编排能力,以及相配套的微服务和API市场,即有解决现实问题的意义,又为技术演进的必然趋势做长远考虑,同时也是实现信创方案灵活性的必要补充。
打造通用的跨系统、跨服务间编排能力
三、打造关键资源高效复用线上安全开发能力
线下本地开发,存在挑战:
· GPU等稀缺设备竞争:人工智能等场景需要专有GPU设备的支持,传统方式下在本地开发好再上传到有GPU的服务器调试,不断反复、效率低下,在多用户需要使用GPU设备时难以协同。信创GPU出现后因为稀缺性问题更为突出。
· 敏感数据、系统对接:一些敏感的数据即便脱敏后,也难以完全放在本地PC、笔记本上人手一份地开发调试,一些需要关联的业务系统接口对办公区全面开放也不现实。
· 疫情下的远程开发:疫情发展难以预测,远程办公、远程开发场景下的接入和使用的便利性、代码和系统的安全性都需要考虑。
· 微服务和API调试:随着微服务和API使用的日趋增多,将不得不把内部、外部的服务和API都向办公区的PC、笔记本开放以便于开发调试,网络策略复杂且安全风险高。同时客户端在与不同版本API调试复杂度高、极不便利。
行云信创微服务应用开发,采用的是Web IDE线上开发模式,可以有效解决前述挑战,如下图所示,采用Web IDE的线上开发架构,完美应对这些挑战。
Web IDE的线上开发架构
Web IDE线上开发模式,为企业带来的收益:
1、GPU等硬件资源的使用更加方便和高效。敏感数据和关键系统无需过度向办公区开放,多用户场景下开发和调试这些设备和数据更加便利。
2、大大缩小了数据中心不必要向外暴露的攻击面,提高安全性。微服务和API的开发调试更加便利。
3、在内部员工或是外部供应商不能到场时,采用安全便捷的远程开发,保障项目进度。
4、与服务编排能力配合使用,开发一些胶水模块(如采用函数编程技术)更便利。
5、未来更是有机会在编码过程中引入AI技术,让程序员写代码更加高效率、更符合规范、更加高质量。
四、解决当下痛点又放眼未来的统筹建设思路
关于未来的统筹建设思路,银保监会指导文件带来的金融行业技术发展思路值得借鉴。《中国银保监会办公厅关于银行业保险业数字化转型的指导意见》银保监办发〔2022〕2号文件中,提到了以下四点建议:
1、自主研发:对关键平台、关键组件以及关键信息基础设施要形成自主研发能力,降低外部依赖、避免单一依赖。
2、研发平台:建立能够快速响应需求的敏捷研发运维体系,积极引入研发运维一体化工具,建设企业级一站式研发协同平台。
3、模块复用:主要业务系统实现平台化、模块化、服务化,加强企业架构设计,实现共性业务功能的标准化、模块化。
4、多活中心:优化数据中心布局,构建多中心、多活架构,提高基础设施资源弹性和持续供给能力。
行云开放渐进、统筹规划微服务开发能力,即解决眼下痛点,又面向未来发展。
乐鱼创新信创微服务开发平台
-----------------------