
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
WebSocket是一种基于TCP的长连接协议,允许服务器主动向客户端推送消息,解决了传统HTTP协议轮询效率低的问题。本文介绍了WebSocket的工作原理、报文格式,以及使用websocketpp库搭建WebSocket服务器的方法。websocketpp是一个支持WebSocket和HTTP协议的C++库,主要特性包括事件驱动接口、跨平台支持和线程安全。文章详细讲解了websocketpp的

图是由顶点集合及顶点间的关系组成的一种数据结构。关于图的一些基本概念我们要清楚。图的创建有两种方法,一种是邻接矩阵,一种是邻接表。我们都有实现。图的遍历有BFS,DFS。构造最小生成树的方法:Kruskal算法和Prim算法。这两个算法都采用了逐步求解的贪心策略。Kruskal算法是在全局找最优解,Prim算法局部找最优解。最短路径分为单源最短路径和多源最短路径,单源最短路径有Dijkstra算法

这一模块主要提供建立索引,以及收到用户的发起的http请求通过Get方法提交的搜索关键字,然后对关键字进行分词,先在倒排索引中查找到对应关键字的文档ID,然后在正排索引中根据文档ID,找到多个相关文档内容,拼接返回给用户。这里使用到了Josn库,Jsoncpp 库用于实现 json 格式的序列化和反序列化。安装Json库上面代码还有一个问题!如果你有一个文档是 :今天晚上吃米饭。分词:今天/晚饭/

内查找适合用于数据量相对不是很大,能够一次性存放在内存中,进行数据查找的场景。如果数据量很大,比如有100G数据,无法一次放进内存中,那就只能放在磁盘上了,如果放在磁盘上,有需要搜索某些数据,那么如何处理呢?那么我们可以考虑将存放关键字及其映射的数据的地址放到一个内存中的搜索树的节点中,找数据时比较关键字,找到关键字也就找到这个数据在磁盘的地址,然后去这个地址去磁盘访问数据。

什么是文件,文件指针,文件操作函数等等
本篇文章主要是介绍http协议,首先从宏观角度认识http协议请求和响应的结构,http协议请求和响应如何拿到完整的报文呢?序列化和反序列化怎么做?我们以写代码的方式具体认识http协议的基本工作流程加深对它的理解,代码写完我们在看http协议的报头、状态码、方法等等才更容易一些,然后我们在学习长连接,和session会话保持,最后我们在介绍两个学习http的工具。

这篇文章是整个网络通信的最后一层数据链路层,我们主要学习MAC帧,虽然IP具有将数据跨网络送到目标主机的能力,但是在跨网络送之前是如何解决同一个局域网内送到下一跳路由器呢?我们要了解局域网通信的原理,以及通信的细节问题。还要站在上帝视角我们知道下一跳路由器的MAC地址,但是在网络中一台主机是如何知道路由器的MAC地址呢?所以这需要一个过程,从而引出ARP协议。学完这些我们把之前学到的所有协议结合起

webbench测试原理是,创建指定数量的进程,在每个进程中不断创建套接字向服务器发送请求,并通过管道最终将每个进程的结果返回给主进程进行数据统计。假设现在12345描述符就绪了, 在处理1的时候花费了30s处理完,超时了,导致2345描述符因为长时间没有刷新活跃度。给服务器发送一个数据,告诉服务器要发送1024字节的数据,但是实际发送的数据不足1024,查看服务器处理结果。超时连接测试1:创建一

这个模块是一个HTTP请求接收的上下文模块,主要是为了防支在一次接收的数据中,不是一个完整的HTTP请求,则解析过程并未完成,无法进行完整的请求处理,需要在下次接收到新数据后继续根据上下文进行解析,最终得到一个HttpRequest请求信息对象,因此在请求数据的接收以及解析部分需要一个上下文来进行控制接收和处理节奏。当服务器收到了一个请求,就在请求路由表中,查找有没有对应请求的处理函数,如果有,则

仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器这个项目是通过咱们实现的高并发服务器组件,可以简洁快速的完成一个高性能的服务器搭建。并且,通过组件内提供的不同应用层协议支持,也可以快速完成一个高性能应用服务器的搭建。在这里,要明确的是咱们要实现的是一个高并发服务器组件,因此当前的项目中并不包含实际的业务内容。








