写在前面,窃以为衡量服务器的标准不仅仅只限于服务器的性能,更重要的是性价比。举个例子,最近dmzj的土豆田(服务器)一直在反复的刨地(维护升级),但如果按照阿里的服务器配置,明显的会有大材小用的感觉。因为dmzj的用户本来就不多,会造成大量的服务器资源,开发成本,硬件成本的浪费。说白了就是够用就行,合适的才是最好的。 服务器的性能指标有很多,我们先介绍一些基本概念,再来看看衡量服务器性能的正确姿... 作者:weixin_42201172 发表于 2019/04/17 17:43:49 原文链接 https://blog.csdn.net/weixin_42201172/article/details/89353450 阅读:27 继续阅读 >>


田正东 19/04/17 17:43:49
这里是基于epoll+线程池的高并发服务器github源码,相对算是比较稳定的版本了,界面可能有点丑陋,功能都可以使用!也可扩展,读者可自行修改功能或者学习参考! 文件说明和框架介绍 说明一下里面文件的作用吧! serverHttp文件存的是服务器端的资源文件!程序刚开始调用chdir函数将工作目录切换到该目录下! epfd.h头文件 用类封装epoll句柄的初始化动作! func.h... 作者:qq_41681241 发表于 2019/03/16 09:25:58 原文链接 https://blog.csdn.net/qq_41681241/article/details/88584729 阅读:53 继续阅读 >>


畅柯 19/03/16 09:25:58
在学习服务器开始时学长提出了一个有趣的问题 如何在不影响客户端与服务器的连通的情况下,更新服务器端的代码并且执行 感觉这个功能应该还是挺重要的,毕竟服务器如果频繁更新的话,每次更新时都让用户退出连接也太不友好了 我能想到的解决办法就是利用fork()函数 创建子进程重新执行server端代码,将server端与之连接的客户端套接字当做参数传递给子进程 然后结束父进程,子进程接收来自客户端... 作者:wobushimotou 发表于 2019/03/07 19:46:34 原文链接 https://blog.csdn.net/wobushimotou/article/details/88253618 阅读:78 继续阅读 >>


王恒 19/03/07 19:46:34
使用c++编写,基于epoll+线程池实现的小型web服务器。 具体实现: 启动服务器,在浏览器中发送地址 记录过程:一进来先注册socket事件完成三次握手,建立线程池 线程池内部开始运转,在构造函数中开始创建线程并调用类的工作函数使队列没有任务状态下的线程等待),主线程进行设置表单事件,进入轮播循环等待客户端连接,若是新连接,在表单中注册事件,若是已有连接,查看任务(当为有数据写事件入... 作者:kkkkde 发表于 2019/03/03 19:00:25 原文链接 https://blog.csdn.net/kkkkde/article/details/88091978 阅读:130 继续阅读 >>


胡锦雲 19/03/03 19:00:25
 I/O复用技术是重要的提高服务器工作效率和性能的手段,Linux下实现I/O复用的系统调用主要有select、poll和epoll。   首先我们来看一下select的函数原型和常用的宏: #include<sys/select.h> int select(int nfds, fd_set* readfds, fd_set* writefds, fd_set* exceptf... 作者:weixin_42201172 发表于 2019/02/27 01:10:21 原文链接 https://blog.csdn.net/weixin_42201172/article/details/87960330 阅读:18 继续阅读 >>


田正东 19/02/27 01:10:21
目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但处理时间却相对较短。 传统多线程方案中我们采用的服务器模型则是一旦接受到请求之后,即创建一个新的线程,由该线程执行任务。任务执行完毕后,线程退出,这就是是“即时创建,即时销毁”的策略。尽管与创建进程相比,创建线程的时间已经大大的缩短,但是如果提交给线程的任务是执... 作者:weixin_42201172 发表于 2019/02/27 00:54:16 原文链接 https://blog.csdn.net/weixin_42201172/article/details/87959718 阅读:24 继续阅读 >>


田正东 19/02/27 00:54:16
TCP建立连接(三次握手) 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建立了。最初两端的TCP进程都处于CLOSED关闭状态,A主动打开连接,而B被动打开连接。(A、B关闭状态CLOSED——B收听状态LISTEN——A同步已发送状态SYN-... 作者:weixin_42201172 发表于 2019/02/26 21:19:17 原文链接 https://blog.csdn.net/weixin_42201172/article/details/87948323 阅读:21 继续阅读 >>


田正东 19/02/26 21:19:17
服务器程序通常需要处理三类事件:I/O事件,信号及定时事件. 在此简单介绍一下两种事件处理模式 : Reactor和Procator 首先我们需要明白同步I/O模型通常用于实现Reactor模式,异步I/O模型通常用于实现Procator模式 Reactor模式 它要求主线程只负责监听文件描述符上有没有事件发生,立即通知工作线程 读写数据等操作均由工作线程来进行完成 工作流程为 主线程往... 作者:dream0130__ 发表于 2019/02/19 21:19:29 原文链接 https://blog.csdn.net/dream0130__/article/details/87734971 阅读:47 继续阅读 >>


吕海东 19/02/19 21:19:29
对于之前学过的无论是聊天室服务器,还是回射服务器都是在Linux环境下,写一个终端客户端,用户通过客户端和服务器通过定长的数据包或者Json键值包进行交互.而对于web服务器,服务器还是在终端运行,但是客户端成为了浏览器,用户或者爬虫程序通过浏览器和服务器交互数据,对于一些数据格式分析上,C/S两端也应该达成共识,HTTP是一个客户端和服务器端请求和应答的标准. HTTP协议 在讲述之前,我们... 作者:qq_41681241 发表于 2019/02/11 12:36:18 原文链接 https://blog.csdn.net/qq_41681241/article/details/86907477 阅读:143 继续阅读 >>


畅柯 19/02/11 12:36:18
基于CGI,HTTP小规模服务器的具体实现步骤(HTTP/1.0) 作者:kkkkde 发表于 2019/02/01 22:14:35 原文链接 https://blog.csdn.net/kkkkde/article/details/86745687 阅读:27 继续阅读 >>


胡锦雲 19/02/01 22:14:35