#grpc

/

      • github
        [13grpc] 15jboeuf closed pull request #933: A couple of fixes + a test for client side authentication of hostnames (06master...06bugscrub2) 02http://git.io/x61j
      • [13grpc] 15tbetbetbe pushed 2 new commits to 06master: 02http://git.io/xXsc
      • 13grpc/06master 141532923 15Jan Tattermusch: client side support for TLS
      • 13grpc/06master 1493adddc 15Tim Emiola: Merge pull request #929 from jtattermusch/csharp_tls...
      • aloiscochard
        Remosi: gotcha, thanks
      • github
        [13grpc-java] 15jcanizales opened pull request #170: Fixes javadoc errors (06master...06fixes-javadoc-installation-errors) 02http://git.io/xXr5
      • rickmak joined the channel
      • [13grpc] 15donnadionne opened pull request #940: Just a few more changes to include csharp into build and test (06master...06test-mod) 02http://git.io/xXDC
      • charan joined the channel
      • charan
        Anyone there ?
      • |Pixel|
        there's a few people, sure
      • what's up ?
      • charan
        great... I was just wondering if grpc can be used in conjunction with consul.io
      • |Pixel|
        somebody answered that a few hours ago actually :)
      • charan
        oh really. I waited for sometime and logged out ..
      • |Pixel|
        ah :D
      • so basically, yes, it is definitely possible to use grpc in conjunction with a service like consul.io, or any other
      • however, we haven't written anything for it yet
      • but there's nothing to prevent that from working
      • charan
        thats great . i should try it out then..
      • i was looking for some microservices frameworks for GO
      • |Pixel|
        if you manage to write some code to make that happen, well, contributions are welcome as github pull requests! :)
      • charan
        thanks..
      • github
        [13grpc] 15jtattermusch pushed 2 new commits to 06master: 02http://git.io/xXS2
      • 13grpc/06master 1438bf129 15Donna Dionne: Just a few more changes to include csharp into build and test
      • 13grpc/06master 14513b9e3 15Jan Tattermusch: Merge pull request #940 from donnadionne/test-mod...
      • murgatroid99 joined the channel
      • yee joined the channel
      • yee has quit
      • murgatroid99 has quit
      • luis404 joined the channel
      • luis404 has quit
      • ssbr_at_work joined the channel
      • blueCmd has quit
      • shoe joined the channel
      • shoe has quit
      • ashoemaker joined the channel
      • yee joined the channel
      • ashoemaker
        hello! since GRPC is embedded in HTTP/2, and it seems desirable to multiplex HTTP and RPC requests over one connection, are there plans to expose a simple HTTP interface that can share the channel?
      • pmotch has quit
      • github
        [13grpc] 15ctiller pushed 2 new commits to 06master: 02http://git.io/x1Wc
      • 13grpc/06master 14d30b005 15Nicolas "Pixel" Noble: Adding coverage report.
      • 13grpc/06master 141acbf43 15Craig Tiller: Merge pull request #925 from nicolasnoble/coveralls...
      • louiscryan joined the channel
      • louiscryan
        @ashoemaker it's certainly possible but I suspect it's only relevant for contrained environments such as mobile
      • and possibly embedded devices
      • got a use-case in mind?
      • ashoemaker
        @louiscryan absolutely, the intended use case is mobile
      • yee has quit
      • sync & mutations over the RPC channel, content upload/download over HTTP/2 (avoid boxing bytes in protobufs, enable upload/download progress)
      • johngunderman joined the channel
      • also resumable uploads
      • louiscryan
        so you don't have to use protobufs with grpc, it would happily take raw chunked byte-sequences as the messages for resumable upload/download
      • youre going to want chunking for that
      • boxing that in protobuf will cost you about 4 bytes per chunk IIRC
      • ashoemaker
        I'm less concerned w/ the framing overhead, my concern w/ boxing reduces to: a) avoiding an extra copy during deserialization (maybe proto3 is more efficient?); b) providing upload/download progress.
      • however, if we can build on streams of chunked byte-sequences, then we can define a simple upload/download protocol that gives us progress information and resumability
      • louiscryan has quit
      • louiscryan joined the channel
      • louiscryan
        for (b) C/C++ proto handles that pretty well, Java could use a little work IIRC
      • (b) duplex streaming is nice for progress & resumption as your service responds with chunk write ACKs
      • how were you handling progress indication over HTTP/1.1 ?
      • ashoemaker
        our current upload/download APIs indicate progress as bytes{Sent,Received} / bytesTotal
      • resumption is used only if the channel is disconnected, so I expect that we would need to restart the request after reconnecting
      • louiscryan
        so this is full restart with no partial resumption?
      • ashoemaker
        we want to resume from the last ACKed offset – I see, you're pointing out that the write ACKs tell us exactly what that offset it
      • louiscryan
        right
      • ashoemaker
        the partial resumption is optimistic of course, since the FE could have been restarted or we could be talking to a different FE if affinity is not preserved
      • louiscryan
        with HTTP/1.1 you have to send individual requests for each chunk to get ACKs
      • that too
      • so this is what we do for similar use-cases at google
      • ashoemaker
        in HTTP/1.1 we'd need the extra roundtrip to determine where to resume, so the incremental ACKs are definitely superior
      • ah, makes sense
      • louiscryan
        so all that said sharing the HTTP2 connection with a library that provides an HTTP/1.1 API should be doable
      • which language do you need?
      • ashoemaker
        are you thinking of mapping the GCS resumable upload API to GRPC?
      • C++ is ideal
      • our core library is shared between iOS and Android
      • and since our needs are so straightforward, we can layer upload/download over GRPC as-is if that works out nicely
      • louiscryan
        that would be easiest at the moment
      • ashoemaker
        makes sense, and as you pointed out the chunk write ACKs have a clear advantage over an HTTP/1.1 interface
      • louiscryan
        but we've definitely had ocnversations along these lines internally
      • e.g.
      • more specifically
      • in proto
      • rpc (stream WriteRequest) returns (stream WriteResponse)
      • blueCmd joined the channel
      • where the WriteRequest contains the byte sequence and it's offset into the underlying source
      • and WriteResponse indicates the last durably written offset
      • ashoemaker
        that's great
      • using proto would require at least one extra copy, right?
      • not that it's a bottleneck of course
      • thanks @louiscryan, this was quite helpful. good night!
      • pmotch joined the channel
      • louiscryan
        glad I could help,good night
      • ashoemaker has quit
      • louiscryan has quit
      • pmotch has quit
      • johngunderman has quit
      • github
        [13grpc-java] 15ejona86 closed pull request #162: Add some details for building on Windows. (06master...06windows-worky) 02http://git.io/x2VB
      • johngunderman joined the channel
      • johngunderman has quit
      • yee joined the channel
      • yee has quit
      • pmotch joined the channel
      • pmotch has quit
      • camo joined the channel
      • camo is now known as Guest70157
      • Guest70157 has quit
      • dgryski joined the channel
      • marga joined the channel
      • johngunderman joined the channel
      • johngunderman has quit
      • yml joined the channel
      • pmotch joined the channel
      • pmotch has quit
      • charan has quit
      • dr_ joined the channel
      • dr_ has left the channel
      • pmotch joined the channel
      • pmotch has quit
      • charan joined the channel
      • dcharan joined the channel
      • charan has quit
      • charan joined the channel
      • dcharan has quit
      • test_ joined the channel
      • charan has quit
      • test_ has quit
      • charan joined the channel
      • dcharan joined the channel
      • charan has quit
      • dcharan has quit
      • charan joined the channel
      • charan has quit
      • [13grpc] 15yang-g opened pull request #947: Remove include google/protobuf/message.h (06master...06imacros) 02http://git.io/xSmy
      • pmotch joined the channel
      • pmotch has quit
      • jwhiting joined the channel
      • jwhiting has quit
      • [13grpc] 15jtattermusch opened pull request #949: fix gce script for cloud to cloud C# client (06master...06csharp_fix_gce_scripts) 02http://git.io/xSpU
      • [13grpc] 15donnadionne pushed 2 new commits to 06master: 02http://git.io/xSjL
      • 13grpc/06master 14cfc7864 15Jan Tattermusch: fix gce script for cloud to cloud C# client
      • 13grpc/06master 140431246 15donnadionne: Merge pull request #949 from jtattermusch/csharp_fix_gce_scripts...
      • [13grpc] 15nicolasnoble pushed 2 new commits to 06master: 02http://git.io/x9JT
      • 13grpc/06master 14ee7ab3d 15Yang Gao: Remove include google/protobuf/message.h as it should be covered in config.h
      • 13grpc/06master 14cac60b5 15Nicolas Noble: Merge pull request #947 from yang-g/imacros...
      • pmotch joined the channel