`

通信框架

 
阅读更多

1、长连接还是短连接?

选择长连接,原因:更节约资源,多个消息复用同一个链路。

2、BIO还是NIO?

BIO通信模型最大的问题是系统缺乏弹性伸缩能力,服务端线程个数和客户端个数并发访问数呈现1:1比例,线程膨胀后,系统性能急剧下降,系统发生堆栈溢出,创建新线程失败,造成进程僵死等现象。

多路复用技术:把多个IO的阻塞复用到同一个select的阻塞上,从而使得系统在单线程的情况下可以同时处理多个客户端请求,节省了系统资源。

 

3、通信框架不与具体协议绑定,在通信框架之上,有私有协议栈和公有协议栈。

Binary Protocol Text Protocol Web Services Restfull HTTP
          Private Protocol              Public Protocol
                               Transport Facade API
Base Long Connect Framework Base Short Connect Framework
                                               Netty

 

4、通信框架服务端的职责

提供上层API,用户初始化服务端实例,设置服务端通信参数,包括服务端的IO线程池、监听地址、TCP相关参数、接收和发送缓冲区大小;

提供可扩展的编解码插件;

提供拦截面,用于私有协议栈开发;

 

分享到:
评论

相关推荐

    c++Socket通信框架

    C++ Socket通信框架是网络编程中的重要组成部分,它允许程序通过网络进行数据交换。在Windows平台上,使用C++实现Socket通信通常涉及到Windows Socket API(也称为Winsock)。本框架“HP-Socket”专为Windows环境...

    Python SocketServer通信框架项目实例

    Python SocketServer通信框架是Python标准库中的一个模块,它提供了基于TCP/IP协议的服务器端编程基础框架,可以方便地创建自定义的服务。本项目实例基于SocketServer,实现了长连接和多线程通信,同时处理了通信...

    Mina通信框架应用示例

    《Mina通信框架应用详解》 Mina通信框架,全称为Apache MINA,是一个高度可扩展的、基于Java的网络应用程序开发框架。MINA的名字来源于多语言(Multi-purpose Infrastructure for Network Applications),它提供了...

    Unity 一套消息通信框架

    在游戏开发中,Unity引擎是广泛应用的工具,而一套高效的消息通信框架对于多模块协作至关重要。本套框架专注于实现不同组件之间简洁、高效的消息传递,从而促进代码的解耦和可维护性。以下是对这套消息通信框架的...

    数据通信框架

    数据通信框架是软件开发中一个重要的组成部分,尤其是在分布式系统、网络应用和实时数据交换场景下。C#语言凭借其强大的面向对象特性和丰富的类库,成为构建数据通信框架的热门选择。本文将深入探讨C#数据通信框架的...

    IOCP网络通信框架

    **IOCP网络通信框架** IOCP(I/O完成端口,Input/Output Completion Port)是Windows操作系统中一种高效的网络通信模型,尤其适用于处理大量并发连接。这个框架利用了Windows的异步I/O机制,能够有效地处理高并发...

    H5和Android通信框架

    本篇将深入探讨“H5和Android通信框架”,帮助你理解如何构建一个高效、稳定的交互环境。 H5与Android交互的主要目标是实现功能的扩展性和灵活性。H5页面可以提供丰富的用户界面,而Android原生代码则可以处理复杂...

    Netty4+ProtoBuf通信框架

    Netty4+ProtoBuf通信框架是一种高效的网络应用框架,它结合了Netty的高性能和Google的Protocol Buffers(ProtoBuf)的数据序列化能力,用于构建可伸缩、高并发的网络应用程序。在这个项目中,客户端和服务端之间的...

    HP-Socket网络通信框架开发指南5.0版

    HP-Socket网络通信框架是一套通用的高性能通信框架,专为处理TCP、UDP和HTTP通信设计,适用于Windows和Linux平台。此框架包含服务端组件、客户端组件和Agent组件,支持多种编程语言接口,如C/C++、C#、Delphi、...

    unity c#实现简单前后端socket通信框架

    博客:https://blog.csdn.net/u014261855/article/details/109583060 unity c#实现简单前后端socket通信框架 .net dll工程,封装三个工具: 1.服务器 2.客户端 3.通用byte流客户端

    HP-Socket 网络通信框架开发指南

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、 客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通 信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等...

    轻量级网络通信框架nSocket.zip

    nSocket是基于java NIO.1和NIO.2开发的轻量级网络通信框架,该框架为用户提供异步非阻塞的网络编程接口。目前更新到0.1版本,实现了基本的连通性和简要的通信,在0.2版本中将增加filter chain的功能。nSocket与mina...

    .net 稳定 高效 易用 可同步 TCP 通信框架

    .net 稳定 高效 易用 可同步 TCP 通信框架 使用平台: WinXP,WIN7,WIN8,WINCE,WINPHONE。 使用.net 2.0 框架。 主要功能介绍: 1、可以代替 Oracle,Mysql客户端 在不安装Oracle,MySql客户端的情况下访问, ...

    Ice通信框架简介;Ice通信框架简介

    Ice通信框架简介;Ice通信框架简介;Ice通信框架简介

    JAVA TCP和UDP Socket通信框架

    本框架涵盖了这两种通信模式,为开发者提供了便捷的客户端和服务器实现。 TCP Socket通信主要依赖于`java.net.Socket`和`java.net.ServerSocket`类。`ServerSocket`在指定端口监听连接请求,当客户端发起连接时,会...

    基于C++语言实现一个RPC分布式网络通信框架项目,使用CMake在Linux平台上构建编译环境

    本项目旨在基于C++语言实现一个RPC分布式网络通信框架项目,使用CMake在Linux平台上构建编译环境。它可以将任何单体架构系统的本地方法调用重构为基于TCP网络的RPC远程方法调用。该框架实现了同一台机器的不同进程...

    NIO通信框架

    NIO通信框架 网络 通信 类 收集的资料 java 可以使用

    Golang 帧同步通信框架

    1.处理粘包断包 2.同时支持TCPSocket和WebSocket共连 在线测试地址: http://www.ixy1688.com/TestMMO/ https://github.com/MosKevinJia/MMOTcpServer 交流群:283560109

    PLC通信框架,上位机专用

    PLC(可编程逻辑控制器)通信框架是一种专为与各种不同类型的PLC设备进行交互而设计的软件架构。这个框架的出现,极大地简化了上位机(通常指的是控制中心或工业计算机)与PLC之间的通信过程,使得开发者无需关注...

    基于C#的TouchSocket网络通信框架设计源码

    TouchSocket是一个整合性的网络通信框架,支持.Net(包括C#、VB.Net、F#)平台。它包含多种通信模块,如TCP、UDP、SSL、NamedPipe、HTTP、WebSocket、RPC、JSONRPC、WebAPI、XMLRPC、Modbus等,并提供了高效的数据...

Global site tag (gtag.js) - Google Analytics