tcpdaemon 更新至 v1.2.1 , TCP 通讯服务端平台库

    xiaoxiao2023-09-12  173

    1.2.1 2017-06-04 calvin

    * 修正了服务模型IOMP的多进程没有轮流切换主侦听问题

    1.2.0 2017-06-03 calvin

    * 重整了代码,有少许接口与老版本不兼容 * 新增服务模型IOMP,支持Linux环境

    0.快速开始

    老师交给小明一个开发任务,实现一个TCP网络迭代并发服务器,用于回射任何接收到的通讯数据。小明很懒,他在开源中国项目库里搜到了开源库tcpdaemon来帮助他快速完成任务。首先他安装好tcpdaemon,然后写了一个C程序文件

    test_callback_echo.c $ vi test_callback_echo.c #include "tcpdaemon.h" _WINDLL_FUNC int tcpmain( struct TcpdaemonServerEnvirment *p_env , int sock , void *p_addr ) { char buffer[ 4096 ] ; long len ; len = recv( sock , buffer , sizeof(buffer) , 0 ) ; if( len <= 0 ) return len; len = send( sock , buffer , len , 0 ) ; if( len < 0 ) return len; return 0; }

    他编译链接成动态库test_callback_echo.so,最后用tcpdaemon直接挂接执行

    $ tcpdaemon -m IF -l 0:9527 -s test_callback_echo.so -c 10 --tcp-nodelay --logfile $HOME/log/test_callback_echo.log

    OK,总共花了五分钟,圆满完成老师作业。老师说这个太简单了,小明你给我改成像Apache经典的Leader-Follow服务端模型,小明说没问题,他把启动命令参数-m IF改成了-m LF,再次执行,完成老师要求,总共花了五秒钟。老师问你怎么这么快就改好了,小明说全靠开源项目tcpdaemon帮了大忙啊 ^_^

    1.概述

    tcpdaemon是一个TCP通讯服务端平台/库,它封装了众多常见服务端进程/线程管理和TCP连接管理模型(Forking、Leader-Follow、IO-Multiplex、WindowsThreads Leader-Follow),使用者只需加入TCP通讯数据收发和应用逻辑代码就能快速构建出完整的TCP应用服务器。

    ...

    文章转载自 开源中国社区 [http://www.oschina.net]

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)