how do I make grpc return a stream? are you referring to google rpc grpc
library that is recommended by Golang folks to be used instead of net/rpc
lib which is a frozen package? Interesting ... I didn't know they had
streams....

On Sun, Nov 4, 2018 at 12:20 PM Ian Denhardt <i...@zenhack.net> wrote:

> What is the functionality that you're not seeing re: how to do file
> downloads over net/rpc?
>
> The thing that pops to my mind as likely important is the ability to
> stream data, which you indeed cannot do with net/rpc.
>
> If you need that I might suggest using a different rpc system that has
> the expressivity you need. e.g. with grpc you could have a method that
> returns a stream. Cap'n Proto is capable of capturing this kind of thing
> as well.
>
> Quoting Ricky (2018-11-04 14:22:11)
> >    I am sorry I wasn't very forthcoming in the beginning - to clarify -
> by
> >    rpc I meant using go net/rpc package. Where I can simply Register
> >    methods/services that can be called remotely as if they were
> >    functions/methods locally available. This lends to a cleaner syntax
> and
> >    more robust code in general from which I have built very clean
> >    distributed systems in past.
> >    I do not use net/rpc currently - instead I have a worker running a tcp
> >    server which understands handshakes (control flow) and I currently
> move
> >    files using io copy. All this because I only have access to a single
> >    TCP port on machine where the worker agent is hosted. The worker is a
> >    tcp server that does io.Copy to give file to calling�  master.
> >    This flow is a bit crummy in my opinion, there's many chances of
> errors
> >    being missed perhaps, I have to do timeout handling, acking etc which
> >    net/rpc automatically takes care off plus go rpc package provides many
> >    primitives which I have used in past to just do all of this kind of
> >    control flow Master calling workers to do a work a but if work a fails
> >    or errors out, the system has a cleaner way of tracking and telling me
> >    (via error and replies) - I wanted to use that kind of robust ness.
> >    I suspect this kind of thing cannot be done with via go net/rpc
> >    package... but wanted to ask upfront.... also if I were to use scp,
> >    sftp etc can I leverage this to be done with single port (different
> >    port than usual scp sftp ports) - this port restriction is due to
> >    security and many other reasons ....�
> >
> >    On Sun, Nov 4, 2018 at 1:09 AM Amnon Baron Cohen <[1]
> amno...@gmail.com>
> >    wrote:
> >
> >    And don't forget the bit-torrent class of solutions.
> >    On Friday, 2 November 2018 16:56:17 UTC, Tom Mitchell wrote:
> >
> >    Moving files is a solved, non trivial problem ....
> >    Have you looked at tools like scp (ssh), rsync, kermit, ftp, sftp,
> tftp
> >    and network filesystems (nfs and samba)?
> >    Even git and http.�  Error recover, host name lookup, compression,
> >    restart, safe abort, transport encryption, authentication, buffering.
> >    [2]https://en.wikipedia.org/wiki/Sorcerer%27s_Apprentice_Syndrome
> >    [3]
> https://stackoverflow.com/questions/68335/how-to-copy-a-file-to-a-re
> >    mote-server-in-python-using-scp-or-ssh
> >
> >    On Thu, Nov 1, 2018 at 11:24 PM Tamás Gulácsi <tgula...@gmail.com>
> >    wrote:
> >
> >    2018. november 2., péntek 6:21:47 UTC+1 id�pontban Anirudh Vyas a
> >    következ�t �rta:
> >
> >    Hello there -�
> >    I am looking for example/help for using rpc to do file downloads - I
> am
> >    not sure if this is possible, or recommended or if there is a
> >    better/cleaner way. I like the robust nature of RPCs and have written
> a
> >    few good, performant distributed systems in them - was
> hoping/wondering
> >    if I could use RPC to do downloads - I currently use combination of
> >    io.Copy and a TCP server to do this.
> >
> >    What kind of RPC ? RPC is just "Remote Procedure Call".
> >    If s `send(data []byte)` won't be enough (size restrictions), you can
> >    copy the io interfaces:
> >    CreateFile(name, perms...) (fileHandle)
> >    WriteFile(fileHandle, chunk)
> >    CloseFile(fileHandle)
> >
> >      --
> >      You received this message because you are subscribed to the Google
> >      Groups "golang-nuts" group.
> >      To unsubscribe from this group and stop receiving emails from it,
> >      send an email to golang-nuts...@googlegroups.com.
> >      For more options, visit [4]https://groups.google.com/d/optout.
> >
> >      --
> >
> >    �  � T o m �  � M i t c h e l l
> >
> >      --
> >      You received this message because you are subscribed to the Google
> >      Groups "golang-nuts" group.
> >      To unsubscribe from this group and stop receiving emails from it,
> >      send an email to [5]golang-nuts+unsubscr...@googlegroups.com.
> >      For more options, visit [6]https://groups.google.com/d/optout.
> >
> >    --
> >
> >    Vyas, Anirudh
> >    Computer Science and Math Autodidact
> >    E-Mail: [7]ricky...@gmail.com
> >    Mobile: � (US): 650-727-2636
> >
> >    --
> >    You received this message because you are subscribed to the Google
> >    Groups "golang-nuts" group.
> >    To unsubscribe from this group and stop receiving emails from it, send
> >    an email to [8]golang-nuts+unsubscr...@googlegroups.com.
> >    For more options, visit [9]https://groups.google.com/d/optout.
> >
> > Verweise
> >
> >    1. mailto:amno...@gmail.com
> >    2. https://en.wikipedia.org/wiki/Sorcerer%27s_Apprentice_Syndrome
> >    3.
> https://stackoverflow.com/questions/68335/how-to-copy-a-file-to-a-remote-server-in-python-using-scp-or-ssh
> >    4. https://groups.google.com/d/optout
> >    5. mailto:golang-nuts+unsubscr...@googlegroups.com
> >    6. https://groups.google.com/d/optout
> >    7. mailto:ricky...@gmail.com
> >    8. mailto:golang-nuts+unsubscr...@googlegroups.com
> >    9. https://groups.google.com/d/optout
>


-- 
*Vyas, Anirudh*
*Computer Science and Math Autodidact*
*E-Mail: ricky...@gmail.com <ricky...@gmail.com>*
*Mobile:  (US): 650-727-2636*

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to