- 学完C语言做不出东西?不存在的,咱们做一个最“隐私”的聊天器,就俩人,你和我。咱们聊天的信息你知我知没别人知。我们直接开始写代码,只要你会基础的C语言,不要担心看不懂,不懂的我帮你刨根问底,把根都挖出来嚼烂,绝对懂。 一、一个聊天软件的基础模型是怎么样的?你是个新手的话你可能就会问,什么是模型?!听不懂,我在骗你学习。放心,我现在就告诉你什么是基础“模型”。我们可以简单的理解“模型”指这个聊... 学完C语言做不出东西?不存在的,咱们做一个最“隐私”的聊天器,就俩人,你和我。咱们聊天的信息你知我知没别人知。我们直接开始写代码,只要你会基础的C语言,不要担心看不懂,不懂的我帮你刨根问底,把根都挖出来嚼烂,绝对懂。 一、一个聊天软件的基础模型是怎么样的?你是个新手的话你可能就会问,什么是模型?!听不懂,我在骗你学习。放心,我现在就告诉你什么是基础“模型”。我们可以简单的理解“模型”指这个聊...
- 在 Windows 操作系统中,原生提供了强大的网络编程支持,允许开发者使用 Socket API 进行网络通信,通过 Socket API,开发者可以创建、连接、发送和接收数据,实现网络通信。本文将深入探讨如何通过调用原生网络 API 实现同步远程通信,并介绍了一个交互式 Socket 类的封装,提升了编写交互式服务器的便利性。 1. 交互式套接字类为了更好地利用原生网络 API,我们引入... 在 Windows 操作系统中,原生提供了强大的网络编程支持,允许开发者使用 Socket API 进行网络通信,通过 Socket API,开发者可以创建、连接、发送和接收数据,实现网络通信。本文将深入探讨如何通过调用原生网络 API 实现同步远程通信,并介绍了一个交互式 Socket 类的封装,提升了编写交互式服务器的便利性。 1. 交互式套接字类为了更好地利用原生网络 API,我们引入...
- 原生套接字抓包的实现原理依赖于Windows系统中提供的ioctlsocket函数,该函数可将指定的网卡设置为混杂模式,网卡混杂模式(Promiscuous Mode)是常用于计算机网络抓包的一种模式,也称为监听模式。在混杂模式下,网卡可以收到经过主机的所有数据包,而非只接收它所对应的MAC地址的数据包。一般情况下,网卡会根据MAC地址过滤数据包,只有MAC地址与网卡所对应的设备的通信数据包... 原生套接字抓包的实现原理依赖于Windows系统中提供的ioctlsocket函数,该函数可将指定的网卡设置为混杂模式,网卡混杂模式(Promiscuous Mode)是常用于计算机网络抓包的一种模式,也称为监听模式。在混杂模式下,网卡可以收到经过主机的所有数据包,而非只接收它所对应的MAC地址的数据包。一般情况下,网卡会根据MAC地址过滤数据包,只有MAC地址与网卡所对应的设备的通信数据包...
- 任何一个成熟的软件都会具有可扩展性,可扩展性是现代软件的一个重要特征,因为它使软件更易于维护和适应变化的需求,x64dbg也不例外其可通过开发插件的方式扩展其自身功能,x64dbg提供了多种插件接口,包括脚本插件、DLL插件、Python插件和.NET插件等。此外,x64dbg还支持用户自定义命令和快捷键。这使得用户可以自由地扩展和自定义软件的功能,从而更好地适应开发需求。我们以C/C++语... 任何一个成熟的软件都会具有可扩展性,可扩展性是现代软件的一个重要特征,因为它使软件更易于维护和适应变化的需求,x64dbg也不例外其可通过开发插件的方式扩展其自身功能,x64dbg提供了多种插件接口,包括脚本插件、DLL插件、Python插件和.NET插件等。此外,x64dbg还支持用户自定义命令和快捷键。这使得用户可以自由地扩展和自定义软件的功能,从而更好地适应开发需求。我们以C/C++语...
- 这篇文章将带你深入探索io_uring用户态接口的神奇之处,它是一项引人注目的技术,能够显著提升IO操作的性能。我们将介绍io_uring的工作原理,并解释它为什么在性能方面与传统接口相比具有明显优势。你将了解到io_uring的异步特性是如何实现的,以及它如何减少了对内核的系统调用次数。我们还将探讨io_uring在实际应用中的潜力和使用场景,以及如何利用它来优化你的应用程序。 这篇文章将带你深入探索io_uring用户态接口的神奇之处,它是一项引人注目的技术,能够显著提升IO操作的性能。我们将介绍io_uring的工作原理,并解释它为什么在性能方面与传统接口相比具有明显优势。你将了解到io_uring的异步特性是如何实现的,以及它如何减少了对内核的系统调用次数。我们还将探讨io_uring在实际应用中的潜力和使用场景,以及如何利用它来优化你的应用程序。
- 当涉及构建快速响应的I/O密集型应用时,io_uring技术展现出了其卓越的潜力。本文摘要将深入探讨如何充分利用io_uring的特性来优化应用程序性能。通过异步I/O操作和高效事件处理,io_uring为开发人员提供了一种强大工具,能够显著减少I/O等待时间并实现更高的吞吐量。 当涉及构建快速响应的I/O密集型应用时,io_uring技术展现出了其卓越的潜力。本文摘要将深入探讨如何充分利用io_uring的特性来优化应用程序性能。通过异步I/O操作和高效事件处理,io_uring为开发人员提供了一种强大工具,能够显著减少I/O等待时间并实现更高的吞吐量。
- 本文深入探讨了如何利用Linux用户态协议栈与DPDK构建高性能应用的方法和技巧。在现代网络编程中,性能是至关重要的,特别是在需要处理大量并发连接的场景下。传统的内核态网络栈在面对高负载时可能会遇到性能瓶颈,而本文介绍了如何借助用户态协议栈和DPDK来突破这些限制。从零开始搭建一个基于用户态协议栈和DPDK的网络应用并不是一件容易的事情,但本文将通过实际示例和步骤指导读者完成这一过程。 本文深入探讨了如何利用Linux用户态协议栈与DPDK构建高性能应用的方法和技巧。在现代网络编程中,性能是至关重要的,特别是在需要处理大量并发连接的场景下。传统的内核态网络栈在面对高负载时可能会遇到性能瓶颈,而本文介绍了如何借助用户态协议栈和DPDK来突破这些限制。从零开始搭建一个基于用户态协议栈和DPDK的网络应用并不是一件容易的事情,但本文将通过实际示例和步骤指导读者完成这一过程。
- 本文深入剖析了Linux网络设计中网络IO的重要角色。网络IO在Linux系统中扮演着关键的角色,负责管理和协调数据在网络中的传输。我们将探讨网络IO的基本概念、作用和实现原理。首先介绍了Linux网络IO的核心组件,如套接字、文件描述符和缓冲区,以及它们在网络通信中的作用。然后详细解释了常见的网络IO模型,包括阻塞IO、非阻塞IO、多路复用IO和异步IO,并比较它们的特点和适用场景。 本文深入剖析了Linux网络设计中网络IO的重要角色。网络IO在Linux系统中扮演着关键的角色,负责管理和协调数据在网络中的传输。我们将探讨网络IO的基本概念、作用和实现原理。首先介绍了Linux网络IO的核心组件,如套接字、文件描述符和缓冲区,以及它们在网络通信中的作用。然后详细解释了常见的网络IO模型,包括阻塞IO、非阻塞IO、多路复用IO和异步IO,并比较它们的特点和适用场景。
- 本篇文章为BIO与阻塞IO的续篇,详细介绍了select、poll以及epoll等多路复用组件的使用方法以及底层原理。尤其详细分析了epoll的源码,做到一篇文章完全搞懂I/O多路复用模型 本篇文章为BIO与阻塞IO的续篇,详细介绍了select、poll以及epoll等多路复用组件的使用方法以及底层原理。尤其详细分析了epoll的源码,做到一篇文章完全搞懂I/O多路复用模型
- 《深入架构 第十四篇》 《深入架构 第十四篇》
- 使用Scoket TCP和Protobuf通信协议实现多人在线。 使用Scoket TCP和Protobuf通信协议实现多人在线。
- socket套接字把协议应用到我们程序上,发送一些数据,这个时候就需要socketsocket是对tcp/ip 协议的一个封装socket不是协议socket是一套调用的借口规范(API)socket分为UDP编程,TCP编程,2种传输层应用层+表示层+会话层socket调用TCPsocket调用UDPTCPUDP应用层程序IP协议`网络链路层 应用层=(应用层+表示层+会话层) pyth... socket套接字把协议应用到我们程序上,发送一些数据,这个时候就需要socketsocket是对tcp/ip 协议的一个封装socket不是协议socket是一套调用的借口规范(API)socket分为UDP编程,TCP编程,2种传输层应用层+表示层+会话层socket调用TCPsocket调用UDPTCPUDP应用层程序IP协议`网络链路层 应用层=(应用层+表示层+会话层) pyth...
- 五种IO模型 阻塞IO 非阻塞IO 信号驱动 多路转接 异步IO 同步和异步通信 I/O多路转接之select 简单的select服务器 总结 五种IO模型 阻塞IO 非阻塞IO 信号驱动 多路转接 异步IO 同步和异步通信 I/O多路转接之select 简单的select服务器 总结
- 网络编程基础 一、网络的相关概念 1.网络通信 2.网络网络编程的目的:直接或间接地通过网络协议与其他计算机实现数据交换进行通讯要想实现网络编程,需要关注两个问题:1.如何准确定位网络上的一台或多台主机,定位主机上的特定应用2.找到主机以后怎么进行可靠高效的数据传输 3 .IP地址IP地址就是网络上定位的一台主机,端口号就是定位这台主机是哪一个应用在进行通信,端口号用来区分一台主机上面的不... 网络编程基础 一、网络的相关概念 1.网络通信 2.网络网络编程的目的:直接或间接地通过网络协议与其他计算机实现数据交换进行通讯要想实现网络编程,需要关注两个问题:1.如何准确定位网络上的一台或多台主机,定位主机上的特定应用2.找到主机以后怎么进行可靠高效的数据传输 3 .IP地址IP地址就是网络上定位的一台主机,端口号就是定位这台主机是哪一个应用在进行通信,端口号用来区分一台主机上面的不...
- 一.UDP通信程序 1. UDP发送数据【应用】Java中的UDP通信UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发送,接收数据的对象,因此对于基于UDP协议的通信双方而言,没有所谓的客户端和服务器的概念Java提供了DatagramSocket类作为基于UDP协议的Socket构造方法方法名说明DatagramSocket()创建... 一.UDP通信程序 1. UDP发送数据【应用】Java中的UDP通信UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发送,接收数据的对象,因此对于基于UDP协议的通信双方而言,没有所谓的客户端和服务器的概念Java提供了DatagramSocket类作为基于UDP协议的Socket构造方法方法名说明DatagramSocket()创建...
上滑加载中
推荐直播
-
揭秘高可靠高性能的亿级物联网平台发展历程
2024/03/27 周三 16:30-18:00
阿钟 华为云IoT DTSE技术布道师
对话华为20年资深测试老兵,从手工测试到自动化测试,到实现测试服务化的成长过程,揭秘亿级物联网平台高可靠性、高性能的发展历程。
回顾中
热门标签