今天看了下yugabyte 的更新 ,ysql 基本可以生产可用,刚好测试了下与hasura graphql-engine的集成,发现很不错,可以直接运行 环境准备 docker-compose version: '2' services: graphql-engine: image: hasura/graphql-engine:v1.0.0-beta.6 ports: - "8080:8080" environment: HASURA_GRAPHQL_DATABASE_URL: po…
  hasura graphql 的安装可以参考相关项目 创建函数 数据表创建 CREATE TABLE sql_function_table ( id SERIAL PRIMARY KEY, input text NOT NULL, output text ); 创建函数以及触发器 CREATE FUNCTION test_func() RETURNS trigger AS $emp_stamp$ BEGIN NEW.output := UPPER(NEW.input); RETURN NEW…
不像大部分的graphql 引擎,使用标准的graphql 规范的处理模型,Hasura graphql 不存在resolver 的概念(实际上是有的,只是转换为了sql语法) 以下是Hasura graphql 引擎的内幕 表的处理 假设有一张表 profile(id,name) 需要暴露为graphql api ,以下是Hasura 的处理方式 根据表生成一个graphql 类型(type) 根据表生成聚合函数的graphql 类型 同时还会生成关系聚合函数的数据类型 生成查询参数 wher…
torodb 可以方便的将mongo 数据实时同步到pg,hasura graphql 可以方便的将pg 数据暴露为graphql api,集成在一起真的很方便 环境准备 docker-compose 文件 version: '2' services: graphql-engine: image: hasura/graphql-engine:v1.0.0-alpha27 ports: - "8080:8080" command: > /bin/sh -c " graph…
hasura graphql server 是一个很不错的graphql 引擎,当前版本已经支持event triiger 了 使用此功能我们可以方便的集成webhook功能,实现灵活,稳定,快捷的消息驱动的应用 webhook 使用benthos ,简单例子参考 https://www.cnblogs.com/rongfengliang/p/9569811.html 一张参考图 环境搭建 使用docker-compose docker-compose 文件 version: '3.6' ser…
hasura 使用一个基于pg数据库的graphql引擎,他的设计比postgrpahql 有好多方便的地方,同时使用也比较简单 安装 docker && docker-compose curl -L https://cli.hasura.io/install.sh | bash hasura init --directory my-project cd my-project/install-scripts docker-compose up -d 生成结果 ├── config.yaml…
hasura graphql server 社区基于gatsby-source-graphql 开发了gatsby-postgres-graphql 插件, 可以快速的开发丰富的网站 基本使用 安装hasura graphql server 我使用的Heroku 已经部署好了 https://rongfengliang.herokuapp.com/ 说明:后边可能会删了,测试的话,最好的自己搭建 添加表结构以及数据(hasura server) gastby 集成测试 package.json…
  subscriptions graphql 的一项实时数据推送的功能,还是很方便的,自己在直接使用subscriptions-transport-ws npm 包 的时候运行一直有错误(主要是依赖的apollo版本),还好hasura graphql 默认提供了一个开发模版,还是比较方便的 模版clone git clone https://github.com/hasura/nodejs-graphql-subscriptions-boilerplate.git 基本代码集成 使用模版(g…
hasura graphql 生产的使用是推荐使用webhook 进行角色访问控制的,官方同时提供了一个nodejs 的简单demo 代码 git clone https://github.com/hasura/sample-auth-webhook 代码说明 项目结构 api 格式说明 auth0 auth0/auth0Handler.js var express = require('express'); var auth0Router = express.Router(); var req…
edgedb 是基于pg 上的对象关系数据库,已经写过使用docker 运行的demo,为了探索内部的原理,做了一下尝试,开启pg 访问 后边会进一步的学习 环境准备 为了测试,使用yum 安装 安装 sudo tee <<'EOF' /etc/yum.repos.d/edgedb.repo [edgedb] name=edgedb baseurl=https://packages.edgedb.com/rpm/el$releasever/ enabled=1 gpgcheck=1 gpgke…