Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The short answer is "yes"...</p> <p>The protocol buffers spec itself doesn't provide an RPC stack, but some have been added outside the spec.</p> <p>Firstly, <a href="http://code.google.com/p/protobuf-net/" rel="noreferrer">protobuf-net</a> has hooks for WCF, allowing you to mark operations on your service contract as <a href="http://code.google.com/p/protobuf-net/source/browse/trunk/protobuf-net/ServiceModel/ProtoBehaviorAttribute.cs" rel="noreferrer"><code>ProtoBehavior</code></a>. This then swaps the regular <code>DataContractSerializer</code> to use protobuf-net serialization. However, there are some caveats:</p> <ul> <li>your data-members must have explicit Order (e.g. <code>[ProtoMember(Order = 1)]</code>), since it uses these numbers as the field identifiers (protocol buffers uses numeric fields)</li> <li>it works best with assembly/class sharing (of the service contract etc), since this custom behavior is not exposed on "mex"</li> </ul> <p>When used with the basic http transport, this is also compatible with MTOM (if enabled) for maximum througput. Performance of non-trivial messages is largely proportional to their size; you can get an idea of protobuf-net's sizes <a href="http://code.google.com/p/protobuf-net/wiki/Performance" rel="noreferrer">here</a>.</p> <p>Alternatively, I'm also working on a bespoke RPC stack. The <a href="http://code.google.com/p/protobuf-net/downloads/list" rel="noreferrer">current build</a> has a working stack over http, but I also plan to enable it on raw TCP/IP when I get chance. I haven't had chance to write it up yet, but I can provide examples on request. Note that to use it most conveniently, you'll want the 3.5 "extensions" dll, too.</p> <p>Any questions, add a comment or e-mail me (see my profile).</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload