背景
houyi后羿
由于公司总会更名,为了避免公司名称变更对平台代码的影响。
除去平台中对公司相关的工程名称,包路径,类名,属性名等。
使用平台的代号来替代对工程原公司名称。
代号由来
平台代号为 ——— 后羿
代号名称来自于传说故事《后羿射日》。传说远古的时候,大地出现了严重的旱灾。炎热烤焦了森林,烘干了大地,晒干了禾苗草木。原来,帝俊与羲和生了10个孩子都是太阳,他们住在东方海外,海水中有棵大树叫扶桑。10个太阳睡在枝条的底下,轮流跑出来在天空执勤,照耀大地。但有时,他们一齐出来给人类带来了灾难。为了拯救人类,后羿张弓搭箭,向那9个太阳射去。只见天空出现爆裂的火球,坠下一个个三脚的乌鸦。最后,天上只留下一个太阳。
公司的系统开发还偏向于传统”烟囱式”的开发模式。每开发一个新的系统,都会新开一个”炉灶”。
比如:移动官网、小程序、公众号或是OA、ERP、CRM......
再广义一点就是技术栈,比如:传统的企业级应用技术栈,面向服务的技术栈,微服务技术栈。
纵观互联网及金融行业的未来5至10年技术栈驱势,都是以微服务技术栈为主。
而微服务技术栈,最关键的问题是要解决在服务分散的情况下如何治理的问题。
而服务治理相关的技术是业务无关的。而从公司现在的系统建设方式来说都是站在纵向出发(业务角度)采购与开发,就向一个一个烟囱一样。
这种方式会存在一些问题:
- 1.技术栈差异大,很难运维。
- 2.技术栈相似,基础设施重复建设且使用效率不高。
平台取名为后羿,表达了我们想要打破原有纵向模式,从横向(技术角度)出发进行系统建设的美好愿景。
技术概要
- 平台基于微服务架构设计,该架构成熟应用于各大一线互联网公司;并且同业对标的类似平台也是基于该技术架构实现的;
- 平台由网关接入、运营监控、服务中心三大子系统组成。各子系统均可采用分布式部署进行性能线性扩展。系统采用JAVA语言开发实现,系统中所使用到的技术及业务组件均采用在互联网及金融行业中广泛采用的技术组件。这些组件有着成熟、稳定、安全、开源、高性能、高可用、高扩展、高伸缩性的特点。
技术特点
- 前后端分离的微服务架构
- 基于Spring Boot 2.0.X、Spring Cloud Finchley和Spring Cloud Alibaba
- 深度定制Spring Security真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案
- 面向互联网设计,同时适合B端和C端用户
- 支持CI/CD多环境部署
- 提供应用管理,方便第三方系统接入
- 引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易
- 注重代码规范,严格控制包依赖,每个工程基本都是最小依赖
网友评论