首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://my.oschina.net/u/5359019/blog/5334529

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

基于 GraphQL 平台化 BFF 构建及微服务治理

01 什么是BFF Backend For Frontend,即服务于前端的后端。 面对越来越复杂的多端应用的需求,后端提供的 RESTful 接口形式难以应对多变的页面需求,这时候需要一层专门的 BFF 层来弥合这部分差异。 例如同样一个商品详情页,在 App 端上和 PC 端上,两者的展示样式就有很多的不同。以往前后端分离的方式可能有几种做法。 后端提供完全独立的 RESTful API,然后由前端来进行聚合。前端需要负责处理多个数据源的聚合和前后数据依赖关系,并且由于经过了多次的外网请求对页面性能、原生 App 的兼容性上都很不友好。 由网关层来进行聚合处理。这种方式不太容易灵活的定制一些聚合或者页面逻辑的处理。 后端把数据聚合处理后,提供一个 API 给到前端。这样后端的微服务之间会存在横向的调用,而这是后端微服务架构里一般需要极力避免的做法。 针对这样的场景,现在一般会引入 BFF 这一中间层,让前端应用直接和 BFF 通信,BFF 再和后端 API 进行通信,获取数据并且处理完以后返回给前端。这样就能比较好的满足前后端各自的需求。其实从本质上来说是前端面向页面场景和后端面向...

Greenplum保证数据隔离的“秘密武器”:快照

数据库系统需要保证ACID特性,其中的I特指隔离性(Isolation),而多版本控制协议(MVCC)和快照(Snapshot)是实现隔离性的重要手段。 多版本控制协议相关内容在之前的相关文章中已经进行了介绍,本文中将会对Greenplum中快照相关的知识进行简要介绍,欢迎大家留言交流。 本文中涉及到的代码版本是Greenplum 6X的稳定分支(greenplum-db/gpdb at 6X_STABLE (github.com)),其他分支上(如master,5X等)的代码逻辑会有所差异,请读者留意。 01 快照基础 为了实现多版本控制,Greenplum中的堆数据元组(Heap Tuple)的元组头部分存储了这个元组的生命周期(通过事务id标识),它们分别是: xmin,创建这个元组的事务id(txid) xmax,删除这个元组的事务id (准确说还有命令号cid和各种标记等等,本文中省略掉了对它们的介绍) 对于增删改操作,对它们的操作如下: insert, set xmin=txid_current,set xmax=0 delete, set xmax=txid_curren...

相关文章

发表评论

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。