Giter Club home page Giter Club logo

Comments (7)

linxGnu avatar linxGnu commented on June 28, 2024 1

I agree with you @minwoox 👍

Beside that, we need to add metric support, maybe via: https://github.com/armon/go-metrics. I will make a PR after new year holiday 🤔

from centraldogma-go.

minwoox avatar minwoox commented on June 28, 2024

Found that there's a way that the client can use h2c. So I think I can just replace to use HTTP/2 client. :)

from centraldogma-go.

linxGnu avatar linxGnu commented on June 28, 2024

@minwoox I really love your idea of creating new api (more New* methods) for additional HTTP/2 (with/without TLS) via h2c. The library is stable and easy to use: https://godoc.org/golang.org/x/net/http2#Transport

And it's also convenient if we let user pass his created-initialized client:

func New(client *http.Client)

So with HTTP/2 support like your suggestion, user has various way to initialize central dogma client. He could choose HTTP/1, HTTP/2 or passing their own http.Client 👍

from centraldogma-go.

minwoox avatar minwoox commented on June 28, 2024

func New(client *http.Client)

We definitely need this, I will add it, thank you!

As for the HTTP/1 and HTTP/2, I was going to leave the HTTP/1 client.
But it turns out that Golang supports h2c as well, so we can do both cleartext and encrypted communication using HTTP/2.
Because of that, I couldn't find a reason to keep the HTTP/1 client. Central Dogma server supports HTTP/2 and a user uses this client only to communicate with the server. So I want to completely remove it.
Please let me know if we have to keep it or not.

from centraldogma-go.

trustin avatar trustin commented on June 28, 2024

OK to support HTTP/2 only IMO, although it'd be nice to have HTTP/1 support.

from centraldogma-go.

minwoox avatar minwoox commented on June 28, 2024

I will make a PR after new year holiday 🤔

Great. I'm looking forward to it. 👍

from centraldogma-go.

trustin avatar trustin commented on June 28, 2024

Fixed via #20

from centraldogma-go.

Related Issues (13)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.