本文转摘自公众号文章: GraphQL实践
随着业务的增长,页面涉及的业务线越来越多, 为了实现一个需求, 需要调用多个接口组合数据, 然后绑定到 UI 组件上. 每个接口返回的数据会有很多字段是不会使用的, 浪费了网络流量. 为了解决该问题, 我们小组引入了 GraphQL 作为 BFF 层, 利用 GraphQL 服务减少网络请求次数, 以及数据裁减能力减少网络响应数据量.
下面简单介绍一下我们组的 GraphQL Node 服务端项目的搭建过程.
本文转摘自公众号文章: GraphQL实践
随着业务的增长,页面涉及的业务线越来越多, 为了实现一个需求, 需要调用多个接口组合数据, 然后绑定到 UI 组件上. 每个接口返回的数据会有很多字段是不会使用的, 浪费了网络流量. 为了解决该问题, 我们小组引入了 GraphQL 作为 BFF 层, 利用 GraphQL 服务减少网络请求次数, 以及数据裁减能力减少网络响应数据量.
下面简单介绍一下我们组的 GraphQL Node 服务端项目的搭建过程.
为什么try catch能捕捉await后promise错误? 和执行栈有关系吗?
为什么try catch 中promise的错误catch不了。 await后就可以catch了?
普通函数不能try catch promise,因为其throw error时的执行栈,和try catch它的函数无关了。
而async await能像generate一样在控制执行流,触发时,函数执行栈恢复到 try catch它时的函数执行栈,所以能try catch。
在Vue中,将父组件的所有属性透传给子组件.
async/await异步模型是否优于stackful coroutine模型?
这里说的coroutine是stackful的,可以对比js的async/await和fibjs,还有c#的async/await对比go的goroutine。
async/await的优点是不需要为每个coroutine分配单独的栈内存,只需要一个闭包保存状态,避免了内存浪费;在调度上也更加灵活,可以让用户手动调度;另外在实现上也不需要改动虚拟机,只要在语言层面加上generator的支持就可以实现。那么是不是可以认为async/await是一个更好的异步方案呢?
原文 - How to Ignore and Disable TypeScript Rules
在TypeScript文件中禁用规则:
算法逻辑来自 两个矩形的相交面积,怎么求算法效率相对较高? - ying xiong的回答 - 知乎
假设矩形的边都平行于坐标轴,分别表示为(left1,top1,right1,bottom1)
, (left2,top2,right2,bottom2)
,则相交部分必定也是矩形,算 长 x 宽 就可以.
使用命令行查看系统硬件信息, 文章摘自Check Ubuntu Hardware Info.
Dockerfile
指定 entrypoint
脚本后, 运行提示一下错误:
docker 默认会创建一个 socket(/var/run/docker.sock) 供 docker daemon 链接使用, 这个socket一般必须是root账号才能链接. docker daemon 同时支持开发一个tcp端口号供外部使用, 开放步骤如下:
使用 IDEA 打开一个新的maven项目, 偶尔会遇到所有Java类都标红, 提示 Cannot resolve symbol xxx, 遇到类似错误, 可尝试参考以下步骤解决:
使用 SSH 登录 Ubuntu 20.04 LTS 系统, 终端显示 There is 1 zombie process(有一个僵尸进程)