• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

kriswep/graphql-microservices: Showcasing a graphql microservice setup

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

kriswep/graphql-microservices

开源软件地址(OpenSource Url):

https://github.com/kriswep/graphql-microservices

开源编程语言(OpenSource Language):

JavaScript 84.0%

开源软件介绍(OpenSource Introduction):

GRAPHQL-MICROSERVICES

This project showcases, how one could set up a graphql server using a (mildy simplified) microservice architecture.

CircleCI

Powered by Apollo Server 2, using Apollo Federation to expose a single, 'monolithic' API and many more

Start in docker - via docker compose

sudo docker-compose up -d

Scale single services, eg the post-service, which has an identifier field for demo purposes build in

sudo docker-compose up -d --scale post=2

remove: sudo docker-compose down

Open the example API-Playground on http://localhost:3000 and issue GraphQL request.

It is composed of the separated user and post services, stitched together.

Start in docker env - manually

setup a new docker network initially.

sudo docker network create --driver bridge my-service

service-post

Build and run service-post container.

cd ./service-post
sudo docker build -t my-service/service-post .
sudo docker run -d \
--network=my-service \
--net-alias service-post \
my-service/service-post

You could start multiple services as well to get easy round robin load balancing. We added a hash field to our post service to identify the handling process.

service-user

Build and run service-user container.

cd ./service-user
sudo docker build -t my-service/service-user .
sudo docker run -d \
--network=my-service \
--net-alias service-user \
my-service/service-user

service-gateway

Build and run service-gateway container.

cd ./service-gateway
sudo docker build -t my-service/service-gateway .
sudo docker run -d \
--network=my-service \
-p 3000:3000 \
--net-alias service-gateway \
-e POST_URL='http://service-post:3010/graphql' \
-e USER_URL='http://service-user:3020/graphql' \
my-service/service-gateway

Sidenote: If you need to stop and remove all services do sthg like

sudo docker stop $(sudo docker ps -a -q)
sudo docker rm $(sudo docker ps -a -q)

Attention: This stops and removes all your running docker images




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap