C++服务器方向

文章介绍了服务器的基础知识,包括数据结构、操作系统和网络等课程,探讨了服务器的通用技术如并发编程和分布式计算。在服务器架构方面,提到了三层架构和无状态服务,以及分布式架构的各种模式。对于IO模型,对比了Windows的六种模型与Linux的五种模型。最后,讨论了并发模型在提升程序性能中的作用,列举了几种并发模型及其相关框架。
摘要由CSDN通过智能技术生成

方向介绍

基础课程

服务器包括数据结构与算法、操作系统原理、计算机网络、数据库原理等基础课程。

通用技术

服务器涉及网络编程、并发编程、并行计算、分布式计算和数据库设计等通用技术。

服务器架构

服务器架构多种多样,由简单到复杂,不同架构之间有一定关联和演变规律。
服务器由单个或者多个服务组成。根据架构设计,可以分为有状态和无状态两种服务。

三层架构

三层架构是服务基础架构,三层分别是网络层、逻辑层、持久层,而无状态服务没有持久层。

分布式架构

分布式架构与单体架构相反,涉及代理、路由、负载均衡等功能模块。
从横向扩展划分,分布式架构包含主主模式、主从模式、主备模式、哨兵模式、集群模式等。
从设计风格划分,分布式架构包含面向服务架构(SOA)、面向消息架构(MOA)、微服务架构、无服务架构、服务网格、超融合架构等。

IO模型

Windows

Windows有六种IO模型,分别是阻塞模型、选择模型、异步选择模型、事件选择模型、重叠模型(Overlapped)、完成端口模型(Completion Port, IOCP)。后五种模型API如下表所示:

  • 选择模型:select
  • 异步选择模型:WSAAsyncSelect
  • 事件选择模型:WSACreateEvent、WSAEventSelect、WSAWaitForMultipleEvents
  • 重叠模型:WSARecv、WSAWaitForMultipleEvents、WSAResetEvent、WSAGetOverlappedResult
  • 完成端口模型:WSASocket、WSAAccept、WSARecv、CreateIoCompletionPort、GetQueuedCompletionStatus

Linux

Linux有五种IO模型,分别是阻塞式IO、非阻塞式IO、多路复用IO、信号驱动IO、异步IO。已知多路复用IO有select、poll和epoll。

并发模型

高性能程序需要提高程序负载能力,即提高程序并发量。因此出现不同的并发/并行计算模型,简称为并发模型。已知并发模型和对应框架如下表所示:

模型框架
Actorskynet
CSPlibgo
Reactorlibevent
Proactorasio
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值