基于 GraphQL 的 BFF 实践】的更多相关文章

随着软件工程的发展,系统架构越来越复杂,分层越来越多,分工也越来越细化.我们知道,互联网是离用户最近的行业,前端页面可以说无时无刻不在变化.前端本质上还是用户交互和数据展示,页面的高频变化意味着对数据需求的高频变化.在绝大多数场景中,页面数据都来自于服务端,因此对页面变化的感知势必会传递到服务端,而服务端是要做业务能力沉淀的,需要逐步完善领域模型,沉淀商业逻辑,所以就产生了一个矛盾,一个领域能力沉淀和高频数据变化的矛盾. 为了解决这个矛盾,在业界不断的探索实践中,逐渐在架构层面演化出一个 BFF…
好未来数据中台 Node.js BFF实践系列文章列表: 基础篇 实战篇(TODO) 进阶篇(TODO) 好未来数据中台的Node.js中间层从7月份开始讨论可行性,截止到9月已经支持了4个平台,其中3个平台生产环境稳定,另1个在测试阶段近期上线. 我4月份刚加入数据中台,原本的想法是半年内不做大刀阔斧的改变,优先完善团队现有的基建设施,比如组件库.charts库.工具.规范等.Node.js中间层的立项完全是一个意外. 某次中台周例会上讨论到前后端协作效率问题,我一时嘴贱提到Node.js中间…
prime 是一个开源的基于graphql 的cms,类似的已经又好多了,strapi 就是一个(graphql 是通过插件扩展的) graphcms 是一款不错的,但是是收费的,prime 是基于ts 开发的 包含以下特性 多语言 访问控制 草案预览 自定义字段 计划发布 说明 项目刚出来,但是文档还是挺全的,我们可以通过heroku 快速的部署一个测试系统 一个部署好的测试系统 https://prime-rong.herokuapp.com 参考资料 https://github.com/…
grandstack是一个基于graphql&&react&& apollo&& neo4j 的全栈开发工具. 有篇关于graphql 的5个常见问题的文章,由此引出了grandstack的开发工具 https://blog.grandstack.io/five-common-graphql-problems-and-how-neo4j-graphql-aims-to-solve-them-e9a8999c8d43 5个graphql 已知的问题 Schem…
特性 GraphQL database 启动便捷的数据迁移数据演变 Flexible auth 基于jwt 的认证 Realtime API 基于graphql 的Subscriptions Highly scalable architecture 使用事件驱动,异步的开发模式 Highly scalable architecture 适配主流的前端开发框架 react vue ng 参考架构 参考资料 https://github.com/prismagraphql/graphcool-fra…
最近项目用到了graphql,学习了一些并在公司做了一个小分享,希望对你有帮助 一.介绍 Graphql是一种面向数据的API查询语言 Graphql给前端提供一种强力的查询工具,我们可以根据自己定义(需要)的格式去拿数据,它有自己的一套类型(schema)系统,schema 是 type.interface.enum 和 union 的集合,用来构建你的 API 数据模型; 类型系统在客户端和服务端之间提供了强类型的条约:我们想要什么,它就会准确给你返回什么,无冗余: 二.对比API 优缺点对…
首先根据准备工作中的操作导入大学模式,打开数据库连接后进入到 MySQL 的交互界面,再使用命令 use db-book; 切换到 db-book 数据库. 单关系查询 SQL 查询的基本结构由三个子句构成,select,from 和 where,查询的输入是 from 子句中列出的关系,在这些关系上进行 where 和 select 子句指定的运算,然后产生一个关系作为结果,即 SQL 查询的结果是一个关系,这点很重要. 先考虑一个简单的查询,找出所有教师的名字,教师的名字可以在 instru…
最近在折腾的 web 端的可视化项目,由于相关业务的需要,用到了 Mapbox 这一地图开发的神器.在此先奉上一个基于mapbox-gl实现的demo(来源:uber的deck.gl项目): 下面我们从这个项目一步步来介绍 Mapbox 的前端 GIS 引擎 Mapbox GL JS. 一.简单了解 首先,Mapbox 在地图领域是一家很 Newbee 的公司.已为 Foursquare.Pinterest.Evernote.金融时报.天气频道.优步科技 等公司的网站提供了订制在线地图服务. 自…
jx是云原生CICD,devops的一个最佳实践之一,目前在快速的发展成熟中.最近调研了JX,这里为第2篇,使用已经安装好的jx来实践CICD,旨在让大家了解基于jx的DevOps是如何运转的,感兴趣的可以继续关注,下一篇介绍如何安装. 先上图: 一.windows 搭建开发环境(可选) 1. 安装kubectl 使用Chocolatey来安装,因此install Chocolatey: 安装Chocolatey windows + X ,选择power shell 管理员模式,输入: Set-…
笔者所在的技术团队负责了数十个项目的开发和维护工作,每个项目都至少有dev.qa.hidden.product四个环境,数百台机器,在各个系统之间疲于奔命,解决各种琐碎的问题,如何从这些琐碎的事情中解放出来?devops成了我们不二的选择. 文章是基于目前的环境和团队规模做的devops实践总结,方案简单易懂,容易落地且效果显著. 实现方法 先来看下流程图: 工程师本地开发,开发完成后提交代码到代码仓库,[自动]触发jenkins进行持续集成与部署,部署完成会收到结果邮件.项目运行过程中可通过日…