# Future of Dgraph clients, e.g: dgo, in regards to GraphQL Dgraph

**URL:** <https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074>\
**Category:** Dgraph\
**Created:** [March 4, 2020, 1:30pm UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074 "2020-03-04T13:30:25Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![wildan2711](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/wildan2711/32/1320_2.png) [@wildan2711](https://discuss.dgraph.io/u/wildan2711)\
**Post date:** [March 4, 2020, 1:30pm UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074/1 "2020-03-04T13:30:26Z")

</div>

What is the future of Dgraph clients which are using grpc in regards to GraphQL Dgraph in v2?

For example, one problem is that, if we created a schema using GraphQL with the `/admin/schema` , we will have schema’s that are prefixed with their types. Thus it is handled differently, as they return different JSON fields, whether if we are querying using the dgo client and the /graphql endpoint.

There is also the `@id` directive to handle uniqeness in GraphQL Dgraph, and which I suspect there will be more features built on top of the GraphQL endpoint, causing feature disparity between GraphQL ± and GraphQL.

What is the recommended architecture if we are using GraphQL dgraph to a backend service?

---

<div class="post-metadata">

**Author:** ![MichelDiz](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/micheldiz/32/11873_2.png) [@MichelDiz](https://discuss.dgraph.io/u/MichelDiz)\
**Post date:** [March 4, 2020, 4:10pm UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074/2 "2020-03-04T16:10:29Z")

</div>

They will continue to do what they already do.

> [@wildan2711](#):
>
> What is the recommended architecture if we are using GraphQL dgraph to a backend service?

If you are using GraphQL, stick to it and use `GraphQL+-` for special or internal cases (like querying through Ratel).

> [@wildan2711](#):
>
> There is also the `@id` directive to handle uniqeness in GraphQL Dgraph, and which I suspect there will be more features built on top of the GraphQL endpoint, causing feature disparity between `GraphQL +-` and GraphQL.

In fact, what is being done is to create ways for GraphQL to support functions that it does not support natively, which exists only in `GraphQL+-`. I believe that many of the functions that exist in `GraphQL+-` will never be part of GraphQL Specs. And everything that GraphQL Specs adds later will be easily supported in Dgraph.

Cheers.

---

<div class="post-metadata">

**Author:** ![wildan2711](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/wildan2711/32/1320_2.png) [@wildan2711](https://discuss.dgraph.io/u/wildan2711)\
**Post date:** [March 4, 2020, 5:11pm UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074/3 "2020-03-04T17:11:55Z")

</div>

Hmm okay…

One of the advantages of using a grpc connection was that we had one persistent connection that we could reuse in our backend service as opposed to creating a new HTTP connection every time with the current GraphQL solution. But I’m not sure if this drastically decreases performance anyway.

I’m currently looking to support the [Dgman](https://github.com/dolan-in/dgman) library to support GraphQL schema, which means we can’t base the implementation on dgo anymore.

Thanks @MichelDiz.

---

<div class="post-metadata">

**Author:** ![MichelDiz](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/micheldiz/32/11873_2.png) [@MichelDiz](https://discuss.dgraph.io/u/MichelDiz)\
**Post date:** [March 4, 2020, 5:39pm UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074/4 "2020-03-04T17:39:17Z")

</div>

@michaelcompton what do you think about this? could Dgraph’s GraphQL support GRPC somehow?

---

<div class="post-metadata">

**Author:** ![michaelcompton](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/michaelcompton/32/1774_2.png) [@michaelcompton](https://discuss.dgraph.io/u/michaelcompton)\
**Post date:** [March 5, 2020, 2:00am UTC](https://discuss.dgraph.io/t/future-of-dgraph-clients-e-g-dgo-in-regards-to-graphql-dgraph/6074/5 "2020-03-05T02:00:23Z")

</div>

There’s no technical reason why we can’t serve GraphQL over gRPC.

We’ve thrown the idea around a few times, but have no current plan to implement it.

If it’s something you really want, then please add a GitHub issue for it with a description of why and we’ll best be able to track the idea from there.
