一直在找一个能双向通讯的C#库 学识浅薄没有找到

于是封装一个预计BUG奇多的轮子

他是基于SuperSocket开发的

这样的

它跟传统的 架构不一样

它的最小架构

或者

客户端即是服务端

比如一个远程调用的过程

A(Client)=>B(Forwarding Request Server)=>C(Server) 

完成后

C(Server) =>B(Forwarding Request Server)=>A(Client)

或者

A(Client and Server)=>B(Forwarding Request Server)=>C(Client and Server)=>B(Forwarding Request Server) =>D(Client and Server)=>B(Forwarding Request Server)=>A(Client and Server)

目前它还是需要AP的 

Forwarding Request Server 只负责做记录并转发这个请求给对的人 不做任何的任务处理

目前它已经完成初步的开发

使用也很简单

FQServer

Client And Server

在客户端注册了ITest服务表明这个客户端可以处理ITest类下的服务,同时它又在下面调用ITest类的函数 ,有种不一样的感觉吧?

FQServer 注册的IFRPCServer则是ITest类的类库名称 表明IFRPCServer 的请求都会被转发到名字叫EchoServer 的端口上的客户端  

东西不多 问题不少

性能也是一般般 

做这个的目的也是为了快速开发 不要在通讯上浪费太多时间

请追求性能的大佬不要在我这浪费时间喷我,不值得。

FRPC 双向socket通讯 转发请求类轮子的更多相关文章

  1. 【PHPsocket编程专题(实战篇③)】构建基于socket的HTTP请求类

    该代码是两年前写的,现在看起来有点渣了,仅仅是提供一个思路,现在做一些Api开发的时候官方会有一些SDK,这些SDK其实原理都是通过socket来通讯的,其实我个人主张用curl更方便,当然前提是你的 ...

  2. 基于Socket通讯(C#)和WebSocket协议(net)编写的两种聊天功能(文末附源码下载地址)

    今天我们来盘一盘Socket通讯和WebSocket协议在即时通讯的小应用——聊天. 理论大家估计都知道得差不多了,小编也通过查阅各种资料对理论知识进行了充电,发现好多demo似懂非懂,拷贝回来又运行 ...

  3. 试解析Tomcat运行原理(一)--- socket通讯

    关于这篇文章也确实筹划了很久,今天决定开篇写第一篇,说起tomcat首先很容易联想到IIS,因为我最开始使用的就是.net技术,我第一次使用asp写学生成绩管理系统后,很茫然如何让别人都能看到或者说使 ...

  4. java socket通讯(一) 入门示例

    一.入门 要想学习socket通讯,首先得知道tcp/ip和udp连接,具体可参考浅谈TCP/IP 和 UDP的区别 二.示例 首先新建了一个java工程,包括两个部分,客户端SocketClient ...

  5. .Net中的Socket通讯

    .NetFrameWork为Socket通讯提供了System.Net.Socket命名空间,在这个命名空间里面有以下几个常用的重要类分别是: ·Socket类 这个低层的类用于管理连接,WebReq ...

  6. Protobuf实现Android Socket通讯开发教程

    本节为您介绍Protobuf实现Android Socket通讯开发教程,因此,我们需要先了理一下protobuf 是什么? Protocol buffers是一种编码方法构造的一种有效而可扩展的格式 ...

  7. 试解析Tomcat运行原理(一)--- socket通讯(转)

    关于这篇文章也确实筹划了很久,今天决定开篇写第一篇,说起tomcat首先很容易联想到IIS,因为我最开始使用的就是.net技术,我第一次使用asp写学生成绩管理系统后,很茫然如何让别人都能看到或者说使 ...

  8. .net 平台下, Socket通讯协议中间件设计思路(附源码)

    .net 平台下,实现通讯处理有很多方法(见下表),各有利弊: 序号 实现方式 特点 1 WCF 优点:封装好,方便.缺点:难学,不跨平台 2 RocketMQ,SuperSocket等中间件 优点: ...

  9. TCP建立与断开连接、socket通讯模板

    在传输层,有一个重点是TCP传输时建立连接的三次"握手"和四次"挥手",因为socket工作于应用层和传输层之间,故而涉及到建立连接和关闭连接的过程,以下笔记可 ...

随机推荐

  1. golang gin框架 使用swagger生成api文档

    github地址:https://github.com/swaggo/gin-swagger 1.下载swag $ go get -u github.com/swaggo/swag/cmd/swag ...

  2. Mysql查询某个月的每一天的数据

    需求:查询最近三个月的每一天的业绩总和 因为最近三个月每个月的天数是不一样,所以不能用这篇文章:Mysql查询最近30天的数据(每天的业绩总和数据) 介绍的用固定多少天去查数据.需要一个新方法. 一. ...

  3. Python深入:修改Python搜索路径

    当Python执行import语句时,它会在一些路径中搜索Python模块和扩展模块.可以通过sys.path查看这些路径,比如: >>> import sys >>&g ...

  4. 【小程序案例】支付宝小程序-MQTT模器,IoT设备通过WSS接入阿里云IoT物联网平台

    支付宝小程序-MQTT模拟器通过WSS接入阿里云IoT物联网平台 小程序效果: 1. 准备工作 1.1 注册阿里云账号 开通阿里云账号,并通过支付宝实名认证 https://www.aliyun.co ...

  5. iptables智能DNS

    1. echo 1 > /proc/sys/net/ipv4/ip_forward 2. 在NAT服务器上添加以下规则: 在PREROUTING链中添加目的地址转换规则: iptables -t ...

  6. windows上安装redis并安装php5.6的redis扩展

    http://www.884358.com/php-redis/ 1.安装redis Redis 没有官方的Windows版本,但是微软开源技术团队(Microsoft Open Tech group ...

  7. css超出盒子隐藏

    效果如图1-1. 效果图1-1 css代码: white-space: nowrap;overflow: hidden; text-overflow: ellipsis; display: inlin ...

  8. 2019-1-29-win10-uwp-使用-Microsoft.Graph-发送邮件

    title author date CreateTime categories win10 uwp 使用 Microsoft.Graph 发送邮件 lindexi 2019-01-29 16:36:3 ...

  9. java三大循环结构

    用于处理需要重复执行的操作: 根据判断条件的成立与否,决定程序段落的执行次数,而这个程序段落我们称为循环体: while:事先不需要知道循环执行多少次: do  while:同上,只是至少要执行一次( ...

  10. Spring激活profile的方式

    Spring中激活profile的方法:设置spring.profiles.active和spring.profiles.default这两个属性 设置激活profile属性的地方(优先级由高到底) ...