electron-api-gateway
ApiGateway 设计
1.项目说明
这是一个基于electron主进程的api管理框架。我们项目组对electron技术的使用较多,这个也算是经验的总结,经历过生产环境的考验。本项目的所有代码和文档都是我个人完成,只是将框架的核心思想提取出来实现并开源。
1.1 框架要解决的问题
首先说一下项目的组成,我们是一个以electron为核心的PC端项目,以安装包的形式发布版本。
1.1.1 项目现状
- 进程数量多:其中带UI进程窗口40个以上,还有一些无UI的进程。
- 进程实现的语言多:有electron渲染进程和主进程,node进程,C++进程。
- 进程之间通信方式多:进程并不是完全独立的,各个进程之间需要根据业务有通信交互,这些交互有些以IPC形式完成,如electron的渲染进程和主进程通过ipc通信;有些是通过本地开启的消息服务器通过订阅主题完成的,如C++进程通过内部的消息服务器与主进程通信。
1.1.2 问题
我们来看几个ipc通信场景,最复杂的是electron的渲染进程跟C++进程通信
- electron渲染进程跟C++进程通信
- electron渲染进程和主进程
- C++进程和主进程
- 主进程和node进程
- node进程和electron渲染进程
原有的设计是这样,每次一个进程发消息给另一个进程都是通过electron主进程做中转。然后每次由于新的业务,都需要新加一条通信通道。所以每次新加一个条通信通道至少需要改动三个项目的代码(消息发起进程=> 主进程=> 消息接收进程
electron-api-gateway相关推荐
- websockets_如何将WebSockets与AWS API Gateway和Lambda一起使用来构建实时应用程序
websockets by Janitha Tennakoon 通过詹妮莎·特纳库恩 如何将WebSockets与AWS API Gateway和Lambda一起使用来构建实时应用程序 (How to ...
- 如何从Amazon API Gateway将查询字符串或路由参数传递到AWS Lambda
本文翻译自:How to pass a querystring or route parameter to AWS Lambda from Amazon API Gateway for instanc ...
- Service Mesh 和 API Gateway 关系深度探讨
前言 关于 Service Mesh 和 API Gateway 之间的关系,这个问题过去两年间经常被问起,社区也有不少文章和资料给出解答.其中不乏 Christian Posta 这样的网红给出过深 ...
- 微服务实战(二):使用API Gateway
[编者的话]本系列的第一篇介绍了微服务架构模式.它讨论了采用微服务的优点和缺点,除了一些复杂的微服务,这种模式还是复杂应用的理想选择. 当你决定将应用作为一组微服务时,需要决定应用客户端如何与微服务交 ...
- aws创建html网页,AWS: 在AWS上创建一个网站,综合运用(Lambda + Api Gateway + Dynamodb + S3)...
简介 本文将创建一个微型网站,以达到综合运用AWS服务的目的: 1.Dynamodb:一种完全托管的NoSQL数据库服务 2.Lambda:实现具体的业务逻辑,基于python3编写,它会调用dyna ...
- API Gateway简介
API Gateway,服务网关Chris Richardson 微服务系列 使用API网关构建微服务http://blog.daocloud.io/microservices-2/「Chris Ri ...
- 谈谈微服务中的 API 网关(API Gateway)
前言 又是很久没写博客了,最近一段时间换了新工作,比较忙,所以没有抽出来太多的时间写给关注我的粉丝写一些干货了,就有人问我怎么最近没有更新博客了,在这里给大家抱歉. 那么,在本篇文章中,我们就一起来探 ...
- aws lambda使用_使用Lambda,Api Gateway和CloudFormation在AWS云上使用Java
aws lambda使用 在上一篇文章中,我们实现了基于Java的aws lambda函数,并使用CloudFront进行了部署. 由于我们已经设置了lambda函数,因此我们将使用AWS API G ...
- 使用Lambda,Api Gateway和CloudFormation在AWS云上使用Java
在上一篇文章中,我们实现了基于Java的aws lambda函数,并使用CloudFront进行了部署. 由于我们已经设置了lambda函数,因此我们将使用AWS API Gateway将其与http ...
- [云框架]KONG API Gateway v1.5 -框架说明、快速部署、插件开发
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 当前版本采用KONGv0.12.3 当我们决定对应用进行微服务改造时,应用客户端如何与微服务交互的问 ...
最新文章
- 使用 Struts2 校验器校验用户注册信息的例子
- QEMU KVM Libvirt手册(7): 硬件虚拟化
- opsforhash 过期时间_药品过期还能吃吗?本文带你秒懂药品有效期~
- gd-flags |= GD_FLG_RELOC; 问题遗留
- superset可视化-deck.gl Scatterplot与MapBox
- vue中用的swiper轮播图的用法及github的地址
- Linux C 算法分析初步
- 【Gamma】 Phylab 发布说明
- 复习Javascript专题(三):面向对象(对象的创建与继承,原型及原型链)
- Python练习题10道(含答案)
- 我的知识管理工具列表 zz
- 设计模式(2)-抽象工厂模式(Abstract Factory)与生成器模式(Builder)模式
- 逢看必会的三子棋小游戏:原来可以这么简单
- 通信协议之一线协议(1-Wire)解析
- PowerVR GPU - The Architecture Concepts
- 阿里云天池大数据长期赛:金融风控-贷款违约预测(含代码)
- 国税总局发票查验平台验证码识别方案,识别率达98%
- 固态硬盘属于计算机的什么设备,怎么区分电脑里面的c\d\e盘是机械硬盘还是固态硬盘...
- KKKVTAQELD|210229-94-0
- 数学分析:隐函数定理和反函数定理