腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
高性能服务器开发
专栏作者
举报
344
文章
519214
阅读量
213
订阅数
订阅专栏
申请加入专栏
全部文章(344)
编程算法(73)
linux(64)
c++(38)
windows(34)
其他(31)
java(29)
数据库(28)
api(24)
socket编程(23)
云数据库 Redis(22)
sql(22)
开源(20)
网络安全(20)
https(19)
架构设计(19)
缓存(18)
数据结构(17)
游戏(14)
react(13)
http(13)
tcp/ip(13)
云数据库 SQL Server(11)
网站(11)
ide(9)
nginx(9)
腾讯云测试服务(9)
系统架构(9)
node.js(8)
git(7)
云服务器(6)
单片机(6)
容器(6)
分布式(6)
压力测试(6)
hashmap(6)
微信(6)
安全(6)
go(5)
android(5)
github(5)
unix(5)
存储(5)
微服务(5)
c 语言(4)
javascript(4)
汇编语言(4)
打包(4)
spring(4)
大数据(4)
facebook(4)
python(3)
jvm(3)
二叉树(3)
rabbitmq(3)
kafka(3)
任务调度(3)
es(3)
负载均衡(2)
区块链(2)
自动驾驶(2)
html(2)
nosql(2)
windows server(2)
负载均衡缓存(2)
apache(2)
容器镜像服务(2)
文件存储(2)
访问管理(2)
人工智能(2)
jdk(2)
ssh(2)
dns(2)
flash(2)
rpc(2)
udp(2)
nat(2)
腾讯云开发者社区(2)
php(1)
lua(1)
bash(1)
servlet(1)
jquery ui(1)
css(1)
jquery(1)
json(1)
qt(1)
oracle(1)
memcached(1)
mvc(1)
svn(1)
tomcat(1)
全文检索(1)
bash 指令(1)
深度学习(1)
云数据库 MongoDB(1)
NAT 网关(1)
VPN 连接(1)
消息队列 CMQ 版(1)
API 网关(1)
SSL 证书(1)
mongodb(1)
图像处理(1)
日志数据(1)
电商(1)
渲染(1)
智慧零售(1)
webpack(1)
kubernetes(1)
运维(1)
黑客(1)
shell(1)
hadoop(1)
erp(1)
mybatis(1)
面向对象编程(1)
jdbc(1)
决策树(1)
zookeeper(1)
自动化测试(1)
aop(1)
dubbo(1)
kernel(1)
gcc(1)
小程序(1)
数据分析(1)
数据处理(1)
物联网(1)
云计算(1)
网站渗透测试(1)
ipv6(1)
rust(1)
性能测试(1)
验证码(1)
Elasticsearch Service(1)
即时通信 IM(1)
测试服务(1)
bit(1)
bug(1)
com(1)
copy(1)
count(1)
cpu(1)
google(1)
input(1)
instagram(1)
io(1)
key(1)
line(1)
medium(1)
null(1)
output(1)
select(1)
title(1)
uber(1)
vmware(1)
whatsapp(1)
youtube(1)
操作系统(1)
程序员(1)
创业(1)
公众号(1)
计算机(1)
进程(1)
面试(1)
内存(1)
腾讯(1)
统计(1)
搜索文章
搜索
搜索
关闭
网络编程到底要怎么学?
api
tcp/ip
http
linux
socket编程
你需要掌握基础的如三次握手和四次挥手的过程以及各个状态值,我建议使用 tcpdump 命令实际抓下包就一目了然了,然后就是网络分层,各层的用途,重点熟悉下 TCP/IP 层相关的知识,还有就是 TCP/UDP 的区别,TCP 的滑动窗口机制、拥塞控制算法、TCP 的保序、重传、确认机制。
范蠡
2023-01-10
1K
0
女朋友问:这些年你看过哪些网络编程书籍?
tcp/ip
linux
windows
c++
socket编程
最近有点忙,今天就写一篇摸鱼文章吧。 之前写过一篇《网络编程到底要怎么学?》的文章,今天就和大家聊一聊我这些年读过的网络编程书籍(这里不包括纯讲计算机理论的书籍),我会结合自身阅读感受和对实践的帮助来谈一谈我的读后感。 一、Socket 编程类书籍 1. 尹圣雨的《TCP/IP 网络编程》 如果你从来未接触过网络编程,或者想找一本网络编程入门书籍,那么我建议你选择尹圣雨的《TCP/IP 网络编程》,作者韩国人。这本书的特点是: 针对零基础读者,讲解了什么是网络编程(Socket 编程); 详细地介绍 Soc
范蠡
2022-08-26
952
0
女朋友要去面试 C++,我建议她这么做
编程算法
数据结构
c++
http
socket编程
大家好,我是张小方。 事情是这样的,有一位学医的小同学有个学计算机的女朋友,她投递了大厂 C++ 研发实习岗位,准备去参加 C++ 面试了,找到小方求助如何准备,于是有了这篇文章。 小方作为《C++服务器开发精髓》一书作者,资深 C++ 面试官,这次就来和大家聊一聊 C++ 研发实习生面试如何准备以及面试会被问到哪些问题。 1. 自我介绍的技巧 面试的开场通常是面试官让面试者做一下自我介绍。这个自我介绍比较有讲究,但是大多数同学的自我介绍都平平无奇,基本上是,我叫 XXX,毕业于 XXX 院校 XXX
范蠡
2022-08-26
787
0
使用epoll时需要将socket设为非阻塞吗?
socket编程
linux
c++
一、结论 提出这个问题说明对网络编程的一些基础原理未搞明白,先说下结论: 一个 socket 是否设置为阻塞模式,只会影响到 connect/accept/send/recv 等四个 socket API 函数,不会影响到 select/poll/epoll_wait 函数,后三个函数的超时或者阻塞时间是由其函数自身参数控制的。 二、原理分析 下面详细的解释,为了方便解释,在这之前我们先明确几个基础概念: connfd:创建 socket,主动发起连接的一端(客户端),该端调用 connect 函数主动发起
范蠡
2022-04-21
2.2K
0
QUIC 协议在蚂蚁金服落地
udp
http
socket编程
HTTP3协议最牛逼的地方在于,将传输层的 TCP 替换成 UDP,而且还在 UDP 之上实现了可靠传输的 QUIC 协议。
范蠡
2021-12-08
798
0
Linux 的 epoll 使用 LT + 非阻塞 IO 和 ET + 非阻塞 IO 有效率上的区别吗?
socket编程
linux
综合 select 和 poll 的一些优缺点,Linux 从内核 2.6 版本开始引入了更高效的 epoll 模型,本文我们来详细介绍 epoll 模型。
范蠡
2021-06-17
2.2K
0
图解 | 深入揭秘 epoll 是如何实现 IO 多路复用的!
linux
socket编程
编程算法
进程在 Linux 上是一个开销不小的家伙,先不说创建,光是上下文切换一次就得几个微秒。所以为了高效地对海量用户提供服务,必须要让一个进程能同时处理很多个 tcp 连接才行。现在假设一个进程保持了 10000 条连接,那么如何发现哪条连接上有数据可读了、哪条连接可写了 ?
范蠡
2021-04-08
1.6K
0
什么是微内核架构设计?
架构设计
微服务
socket编程
rpc
导读:作为一名Java程序员,相信同学们都听说过微内核架构设计,也有自己的理解。那么微内核是如何被提出来的?微内核在操作系统内核的设计中又有什么作用?本文从插件化(Plug-in)架构的角度来诠释微内核架构设计,通过微内核架构和微服务架构的对比,分享其对微服务设计的参考意义。
范蠡
2021-01-03
1.3K
0
彻底理解 IO多路复用
linux
自动驾驶
socket编程
压力测试
https://github.com/caijinlin/learning-pratice/tree/master/linux/io
范蠡
2020-08-18
1.2K
0
epoll LT 模式和 ET 模式详解(文末赠书)
socket编程
linux
与 poll 的事件宏相比,epoll 新增了一个事件宏 EPOLLET,这就是所谓的边缘触发模式(Edge Trigger,ET),而默认的模式我们称为 水平触发模式(Level Trigger,LT)。这两种模式的区别在于:
范蠡
2020-06-01
10K
0
服务器开发中网络数据分析与故障排查经验谈
socket编程
安全
linux
tcp/ip
为了能更好的排查网络通信问题,我们需要熟悉操作系统提供的以下网络接口函数,列表如下:
范蠡
2020-03-20
1.1K
0
为什么 go 语言这么“快”?
编程算法
go
socket编程
本文经公众号:腾讯技术工程(ID:Tencent_TEG)授权转载,如需转载请联系出处。
范蠡
2020-03-05
1.6K
0
高性能网络通信组件应该如何设计?
socket编程
javascript
node.js
api
linux
一个服务程序如果要对外服务,就要与外部程序进行通信,这些外部进程往往是位于不同机器上的不同进程(所谓的客户端),一般通信方式就是我们所说的网络通信,即所谓的 socket 通信。因此网络通信组件是一个服务器端程序的基础组件,设计的好坏,直接影响到其对外服务的能力。不同的业务在网络通信框架的一些细节上可能略有不同,但有大多数设计原理都是通用的,本节来讨论这些通用的原理和其设计细节。
范蠡
2019-11-15
866
0
谈谈网络通信服务器的结构应该如何设计
linux
socket编程
虽然你在线程池的用途上有些混乱,epoll 和 线程池没多大关系,但是这个问题其实蛮不错的,所以详细说一下希望给有需要的读者解决部分疑惑。
范蠡
2019-11-06
1.1K
0
C++网络库都干了什么?
socket编程
数据结构
缓存
linux
编程算法
虽然市面上已经有很多成熟的网络库,但是编写一个自己的网络库依然让我获益匪浅,这篇文章主要包含:
范蠡
2019-10-11
2.1K
0
C++ 高性能服务器网络框架设计细节
socket编程
api
linux
javascript
node.js
这篇文章我们将介绍服务器的开发,并从多个方面探究如何开发一款高性能高并发的服务器程序。需要注意的是一般大型服务器,其复杂程度在于其业务,而不是在于其代码工程的基本框架。大型服务器一般有多个服务组成,可能会支持 CDN,或者支持所谓的“分布式”等,这篇文章不会介绍这些东西,因为不管结构多么复杂的服务器,都是由单个服务器组成的。所以这篇文章的侧重点是讨论单个服务程序的结构,而且这里的结构指的也是单个服务器的网络通信层结构,如果你能真正地理解了我所说的,那么在这个基础的结构上面开展任何业务都是可以的,也可以将这种结构扩展成复杂的多个服务器组,例如“分布式”服务。文中的代码示例虽然是以 C++ 为例,但同样适合Java(我本人也是Java开发者),原理都是一样的,只不过Java可能在基本的操作系统网络通信API的基础上用虚拟机包裹了一层接口而已(Java甚至可能基于一些常用的网络通信框架思想提供了一些现成的 API,例如 NIO )。有鉴于此,这篇文章不讨论那些大而空、泛泛而谈的技术术语,而是讲的是实实在在的能指导读者在实际工作中实践的编码方案或优化已有编码的方法。另外这里讨论的技术同时涉及 Windows 和 Linux 两个平台。
范蠡
2019-09-08
1.6K
0
C++ 如何进阶?如何准备 C++ 面试?
windows
api
linux
socket编程
编程算法
在大多数开发或者准开发人员的认识中,C/C++ 是一门非常难的编程语言,很多人知道它的强大,但因为认为“难”造成的恐惧让很多人放弃。
范蠡
2019-09-03
2.1K
0
心跳包机制设计详解
socket编程
情形一:一个客户端连接服务器以后,如果长期没有和服务器有数据来往,可能会被防火墙程序关闭连接,有时候我们并不想要被关闭连接。例如,对于一个即时通讯软件,如果服务器没有消息时,我们确实不会和服务器有任何数据交换,但是如果连接被关闭了,有新消息来时,我们再也没法收到了,这就违背了“即时通讯”的设计要求。
范蠡
2019-08-09
6.8K
0
网络通信基础重难点解析 08 :connect 函数在阻塞和非阻塞模式下的行为
socket编程
linux
windows
在 socket 是阻塞模式下 connect 函数会一直到有明确的结果才会返回(或连接成功或连接失败),如果服务器地址“较远”,连接速度比较慢,connect 函数在连接过程中可能会导致程序阻塞在 connect 函数处好一会儿(如两三秒之久),虽然这一般也不会对依赖于网络通信的程序造成什么影响,但在实际项目中,我们一般倾向使用所谓的异步的 connect 技术,或者叫非阻塞的 connect。这个流程一般有如下步骤:
范蠡
2019-04-29
1.5K
0
网络通信基础重难点解析 12 :Linux epoll 模型
socket编程
linux
综合 select 和 poll 的一些优缺点,Linux 从内核 2.6 版本开始引入了更高效的 epoll 模型,本节我们来详细介绍 epoll 模型。
范蠡
2019-04-29
1.4K
0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
立即发文
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档