- 博客(75)
- 资源 (1)
- 收藏
- 关注
转载 【前沿视角】[英] Direct Sockets: Filling the remaining gap between WebSocket, WebRTC and WebTransport
本文共计16323字,预计阅读时间12分钟
2023-11-26 12:48:56
214
原创 【脚本语言】Shell Script - 终端打印指令
终端是交互式工具,在终端中打印文本是绝大多数脚本中的基本任务。本文共计1559字,预计阅读时间6分钟
2023-07-08 16:00:17
2799
原创 【TCP/IP】利用I/O复用技术实现并发服务器 - epoll
在需要频繁调用select函数的场景下,select函数要求必须向其传递监视对象(套接字),那么这样时间、空间都会产生巨大耗费,epoll函数可以更好地解决这类问题
2023-07-01 20:08:34
460
原创 【调试经验】Python - ‘unicodeescape‘ codec can‘t decode bytes in position : truncated \uxxxx escape
报错记录:'unicodeescape' codec can't decode bytes in position : truncated \uxxxx escape
2023-06-27 22:50:19
1678
原创 【TCP/IP】多播 - 定义、原理及编程实现 (TTL、多播组、多播消息)
多播是一种介于单播和广播通信之间的技术方式,可以将发送者所需要发送的数据包分别发送给分散在不同子网中的一组接收者。
2023-06-24 22:21:46
5808
1
原创 【命令参数】SVN - 环境配置及常用命令参数
SVN是一款基于C/S架构的版本控制系统,能够实现对产品项目的版本托管以及对源码库的高效管理。而掌握SVN中的一些命令参数,一定程度上可以使日常效率得到进一步提升。
2023-06-20 22:57:09
3607
原创 【命令参数】MSBuild - 环境配置及常用命令参数
对各类程序的命令参数的掌握是软件工程师必修课之一,它是通往自动化、高效化开发测试的必经之路。对于MSBuild,我们可以借助它以一种轻量级的形式去完成对于项目又或解决方案的生成,而避开使用繁大的IDE进行编译。
2023-06-19 20:31:31
3395
原创 【TCP/IP】利用I/O复用技术实现并发服务器 - select函数
由服务器创建多个进程来实现并发的做法有时会带来一些问题,比如:内存上的开销、CPU的大量占用等,这些因素会消耗掉服务器端有限的计算资源、进而影响程序之间的执行效率。那么,有没有方法可以在不创建额外进程的条件下实现并发呢?当然有,那就是I/O复用技术。
2023-06-15 01:25:09
1330
转载 【杂谈】HTTP和RPC的区别
RPC(即Remote Procedure Call,远程过程调用)和HTTP(HyperText Transfer Protocol,超文本传输协议),两者前者是一种方法,后者则是一种协议。两者都常用于实现服务,在这个层面最本质的区别是RPC服务主要工作在TCP协议之上(也可以在HTTP协议),而HTTP服务工作在HTTP协议之上。
2023-06-13 13:17:04
299
原创 【TCP/IP】多进程服务器的实现(进阶) - 用I/O分割优化回声客户端
之前实现的回声客户端按照先向服务器端发送数据,直到服务器端收到回声数据后,再传输下一批数据。很大程度会影响端与端之间的数据交换效率(存在一个等待周期)。那么有什么办法可以解决这个问题呢?
2023-06-12 23:27:19
144
原创 【TCP/IP】多进程服务器的实现(进阶) - 多进程服务器模型及代码实现
经过前面的铺垫,我们已经具备实现并发服务器的基础了,接下来让我们尝试将之前的单任务回声服务器改装成多任务并发模式
2023-06-12 21:32:30
2794
1
转载 【杂谈】什么是数据编织——数据编织的概念及其设计意义
GartnerForrester提出了Big Data Fabric的概念,Big Data Fabric的最佳之处在于它能够通过利用动态集成、分布式和多云架构、图形引擎、分布式和持久内存等方面的能力来快速交付应用,其专注于自动化流程集成、转换、准备、管理、安全、治理和编排,以快速启用分析和洞察力,实现业务成功
2023-06-11 01:25:49
1897
原创 【TCP/IP】多进程服务器的实现(进阶) - 信号处理及signal、sigaction函数
信号这个概念大家应该不陌生,诸如汽车的鸣笛、闹钟的响铃等,这些都是信号,用以告诉人们某件事情的发生。而在编程中,同样有这个概念。我们常用信号来对接收到的某些数据或者指令做出与之对应的响应处理。
2023-06-11 00:48:25
1297
1
原创 【TCP/IP】多进程服务器的实现(进阶) - 僵尸进程及wait、waitpid函数
进程管理在网络编程中十分重要,如果未处理好,将会导致出现“僵尸进程”,进而影响服务器端对进程的管控。
2023-06-09 02:21:14
744
原创 【TCP/IP】多进程服务器的实现(进阶) - 进程的概念及fork函数
进程(Process)是计算机中程序关于某数据集合上的一次运行活动,是系统进行资源分配的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。
2023-06-08 21:58:15
1008
原创 【TCP/IP】IP地址与域名之间的转换 - gethostbyname 和 gethostbyaddr函数
域名系统是互联网的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网
2023-06-07 00:54:29
3685
2
转载 【Qt】Qt 多线程编程之敲开 QThread 类的大门
“移动到新线程”是一个很形象的描述,作为入门的认知是可以的,但是它的本质是改变线程亲和性(也叫关联性)。》所述,线程“与进程内的其他线程一起共享这片地址空间,基本上就可以利用进程所拥有的资源而无需调用新的资源”,这里所指的资源之一就是堆栈空间。》中的「1.3 线程的生命周期」所述,线程的状态有很多种,而往往我们只关心一个线程是运行中还是已经结束。
2023-06-06 00:26:45
1956
原创 【TCP/IP】基于UDP的服务器端/客户端实现 III - UDP传输特性、连接与未连接UDP套接字的转化
TCP传输的数据不存在数据边界,其表明的意义是“数据传输过程中调用的I/O函数次数对整个流程没有影响(调用多少次对结果不会产生影响)”。那么,在UDP中又是如何呢?
2023-06-05 00:23:15
333
原创 【TCP/IP】基于UDP的服务器端/客户端实现 II - 实践与实现
对于UDP程序而言,若调用sendto函数时发现尚未分配地址信息,那么在首次调用sendto函数时会给相应的套接字自动分配IP和端口,并且此时分配的地址一直保留到程序结束为止。Q: TCP客户端套接字在调用connect函数时会自动分配IP地址和端口号,那么UDP的客户端是在何时分配IP和端口号的呢?
2023-06-02 13:30:56
308
原创 【TCP/IP】基于UDP的服务器端/客户端实现 I - 特点、应用场景、I/O函数
UDP在结构上比TCP更简洁,同时UDP不会发送类似ACK的应答消息,也不会像SEQ那样给数据包分配序号,因此UDP的性能有时会比TCP高出很多,但随之而来的是UDP的可靠性降低(不及TCP)。
2023-06-01 22:54:36
559
转载 【TCP/IP】详解TCP连接的“三次握手”与“四次挥手” - 下
对于"三次握手"我们耳熟能详,因为其相对简单。但是,我们却不常听见“四次挥手”,就算听过也未必能详细地说明白它的具体过程。
2023-06-01 00:34:17
350
原创 【TCP/IP】基于TCP的服务器端/客户端 III - 对于回声客户端缺陷的解决
基于TCP的服务器端/客户端 III - 对于回声客户端缺陷的解决
2023-05-29 23:59:15
258
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人