
基于Http的LiteHub服务器实现
文章平均质量分 90
记录项目开发过程中遇到的难点
~山有木兮
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LiteHub之文件下载与视频播放
{对于pump函数的理解,结合箭头函数和promise。原创 2025-07-10 10:40:28 · 311 阅读 · 0 评论 -
LiteHub之数据库连接池
在实际应用中,由于创建和销毁系统资源(如连接、内存块、线程等)的成本往往远高于使用资源的成本,因此通常会引入资源池的概念来提高系统性能。MysqlUtil类的实现比较简单,提供了对数据库的简单接口,隐藏了底层连接池的复杂性。MysqlUtil作为一个便捷的工具类,简化了调用接口,让业务层可以更轻松的使用连接池进行增删改查的工作。在实际应用中,由于创建和销毁系统资源(如连接、内存块、线程等)的成本往往远高于使用资源的成本,因此通常会引入资源池的概念来提高系统性能。通过参数绑定后,完整的sql语句就是。原创 2025-07-09 11:09:21 · 1006 阅读 · 0 评论 -
LiteHub中间件之gzip算法
它的基本原理是:对于要压缩的文件,首先使用LZ77算法的一个变种进行压缩,对得到的结果再使用哈夫曼编码(根据情况,使用静态哈弗曼编码或动态哈夫曼编码)的方法进行压缩。由于只查找匹配长度大于3的字符串,为提高算法速度,在查找匹配字符串时,使用了哈希链结构搜索算法,其中哈希算法将3字节压缩到2字节,虽然哈希链结构存在搜索到错误结果的可能,但还是大幅提高了搜索速度。编码器在编码时,会一直在搜索区中搜索,直到找到最大匹配字符串,并输出(o, l ),其中o是偏移值, l是匹配长度。然后窗口滑动l,继续开始编码。原创 2025-07-05 11:49:26 · 883 阅读 · 0 评论 -
LiteHub中间件之限流实现
令牌桶是一个存放固定容量令牌的桶,按照固定速率往桶里添加令牌,填满了就丢弃令牌,请求是否被处理要看桶中令牌是否足够,当令牌数减为零时则拒绝新的请求。在流量低峰的时候,令牌桶会出现堆积,因此当出现瞬时高峰的时候,有足够多的令牌可以获取,令牌桶允许一定程度突发流量,只要有令牌就可以处理,支持一次拿多个令牌。因此,令牌桶算法在处理突发流量时表现更优。漏桶算法可以粗略的认为就是注水漏水过程,往桶中以任意速率流入水,以一定速率流出水,当水超过桶容量(capacity)则丢弃,因为桶容量是不变的,保证了整体的速率。原创 2025-07-04 10:43:48 · 1039 阅读 · 0 评论 -
LiteHub之会话管理
服务器为每个用户浏览器创建一个会话对象(session对象),一个浏览器只能产生一个session当新建一个窗口访问服务器时,还是原来的那个session。session中默认保存的是当前用户的信息。因此,在需要保存其他用户数据时,我们可以自己给session添加属性。session(会话)可以看为是一种标识,通过带session的请求,可以让服务器知道是谁在请求数据。原创 2025-06-26 13:07:17 · 963 阅读 · 0 评论 -
LiteHub之HTTP请求与响应报文分析
这一篇文章是基于项目LITEHUB分析的关于HTTP的请求和响应篇章,后续将仔细分析这个项目所涉及到的知识点。上图是使用wireshark抓包分析的HTTP刷新网页的请求以及返回的响应报文格式。原创 2025-06-25 13:31:07 · 691 阅读 · 0 评论 -
LiteHub中间件之跨域访问CORS
按照 W3C 的 CORS 规范,只有完全满足「安全要求」的跨域请求,浏览器才会把它直接当成简单请求,直接发送给服务端,不需要先发 OPTIONS。:这个字段是一个逗号 , 分隔的字符串,指定浏览器 CORS 请求会额外发送的头信息字段,上面示例是 X-Custom-Header。对于这类请求,浏览器会在正式通信前额外发送一次HTTP查询请求(即预检请求),这个过程叫做预检。这里的响应指的是正常处理客户端发来的请求后,在最终的响应头中添加CORS的相关信息。,表示这个请求是用来询问的。原创 2025-07-03 15:43:49 · 1104 阅读 · 0 评论 -
LiteHub环境配置
本文是一个Linux环境下搭建Web服务器的完整配置指南。原创 2025-05-28 14:11:23 · 457 阅读 · 0 评论