大数跨境
0
0

这是一个技术帖,也是个硬广!

这是一个技术帖,也是个硬广! 朗新Family
2020-04-26
1
导读:网关团队F6,邀你了解Janus API。

起初神创造天地。

地是空虚混沌。渊面黑暗。神的灵运行在水面上。

神说,要有光,就有了光。

             ——《圣经·旧约·创世纪》



伴随着云计算的滚滚浪潮,架构师在进行系统架构的时候,自觉或不自觉地采用微服务架构。服务解耦了,内聚更强,变更更便捷,仿佛一切都变得美好。系统所追求的“高内聚,低耦合”设计理想,就这么轻松实现了。


美好的时光总是那么短暂,随着业务的发展变化,服务越分越多,服务间的协同越来越复杂,原本清晰的系统架构变得混沌,于是Janus来了,像黎明的那道光,越过黑暗。




Janus API网关团队


Janus API网关由技术研发中心-网关产品团队(JanusTeam)研发,团队成立于2018年,经过2年的发展,现有6名成员,是一个年轻、朝气、充满激情与拼搏精神的技术团队,致力于打造一款专业的API网关产品。


爆照网关团队F6




F6解密网关两大作用


相信许多同事都了解网关的概念,或者使用过类似的产品。网关作为内部服务面向客户端的唯一入口,两大典型的作用你知道么?F6和大家说道说道:



内外解耦:对客户端屏蔽内部服务的实现细节,如技术框架、接口结构、服务状态等;


切面控制:让内部服务专注于业务逻辑,由网关集中处理横向的策略性关注点,如路由、安全、限流、日志、监控等。





Janus API网关应用场景与性能


据F6介绍,针对使用场景的不同和功能特性的差异,Janus API网关可分为两种类型:



企业开发平台:使用场景侧重于提供服务的开放管理。

微服务网关:使用场景侧重提升开发和运维效率。



为了验证网关对后端服务的影响,专业又严谨的F6们做了相关测试。



原服务情况:后端API响应时间平均100ms,直接访问后端时TPS为1400。

服务器配置:网关部署在2CPU、8G内存配置的普通PC服务器

加网关变化:加上API网关后,服务响应时间增加10ms,TPS为1320


 结 论 

Janus API网关相比无网关时只会增加请求调用10ms以下,基本做到不损耗性能,对原有后端服务的性能影响是微不足道的。同时API网关基于横向扩展的架构,可以在面临压力的时候通过横向扩展来支持高并发访问。




 硬核成功实践案例 


案例一:95598工单互备项目


项目改造前:某省公司95598客服工单功能作为营销业务应用系统模块运行,共用数据库。受制于营销业务应用系统的各类计划停机检修、营销业务应用系统自身的大量业务负载等因素,在与国网客户服务中心南、北分中心进行工单对接时,存在接单不可靠的影响。



项目改造后:网关作为客服工单备用模块,可在营销主用模块无法使用时,将负载均衡流量切换至网关继续线上承接客服工单,并且使用网关缓存组件将工单数据缓存,使用网关日志组件对工单派发进行监控,对异常工单进行告警,使用网关日志检索功能实现工单详细数据查询。


当营销业务应用恢复后,使用网关异步回写组件,将网关缓存的工单数据回写到营销95598,实现主备模块间工单数据同步。


案例二:海关旅客通关项目



H2018旅客通关系统需要对接海关内部第三方多个系统接口,涉及互联网和海关局域网两个网络环境,目前在海关互联网侧和局域网侧分别部署Janus API网关,通过Janus API网关管理第三方多个系统的API接口,并监控海关互联网、局域网同H2018旅客通关系统进行交互的第三方系统接口,确保系统对接正常运转、问题快速定位和处理。目前了解到Janus API网关在海关信息中心稳定运行一年多,管理海关内部多个第三方系统的100+ API接口。



案例三:电力微应用支撑平台



某省电力微应用支撑平台一个多厂商参与建设的项目,前期存在多厂商开发框架不一致,客户又要求实现不同厂家、不同应用统一管理,各应用数据与应用成果共享融合等问题。


针对以上现状,采用与SG-UAP技术体系保持兼容,通过应用安全网关与4A服务打通,使所有业务服务(包括第三方服务)都能注册到4A权限管理服务;通过应用安全网关接管应用级别的认证、权限控制、服务鉴权;各平台应用通过提供REST服务,支持外部第三方厂家调用;通过集成网关SDK包,实现第三方服务的集成。






F6强力打Call研发新进展


微服务是目前流行的一种新兴的软件架构风格,在微服务体系结构中,可以将应用分解为多个更小颗粒度的服务,各个服务可以由不同的团队并行独立开发、部署。


当一个系统采用了微服务架构后,原有的业务可能并没有发生变化,但是系统已经被拆分成了很多新的微服务,相对于传统架构,微服务架构下更需要通过各微服务之间的协作来实现一个完整的业务流程,这种协作就是服务编排。而编排涉及到RPC、分布式事务、调用链分析、监控等,需要有完善的编排框架来支撑。


Janus API网关服务编排平台基于JSON DSL流程定义,通过可视化的拖、拉、拽对已有服务进行编排组合,实现顺序、分支、并行等控制模型,形成新的服务。并实现分布式事务、调用链分析、故障转移、断点续跑等高级能力。


以上案例只是网关众多功能中的部分,小伙伴们看了是否对网关有兴趣呢?欢迎大家与Janus API网关产品团队探讨,QQ群号:838439077,感谢大家支持!



你“家”的项目有用到Janus API网关产品吗?欢迎留言和我们说说使用前后的感受,或者直接和网关团队交流,让我们的网关产品帮助更多的应用达到更好的性能、更高的可用性。


如果在看的你也想秀一下你所在团队和产品或项目,欢迎来稿family@longshine。



【声明】内容源于网络
0
0
朗新Family
朗新企业文化、学习发展、内部沟通官方公众平台
内容 1141
粉丝 0
朗新Family 朗新企业文化、学习发展、内部沟通官方公众平台
总阅读1.3k
粉丝0
内容1.1k