GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - hpplinux/ServerMode: 基于IO密集型的高性能的服务器程序模型的实现

BranchesTags
Open more actions menu

Latest commit

 

History

4 Commits
4 Commits

Folders and files

NameName
Last commit message
Last commit date
Commondef.h
Commondef.h
 
 
Connection.cpp
Connection.cpp
 
 
Connection.h
Connection.h
 
 
EventLoopThread.cpp
EventLoopThread.cpp
 
 
EventLoopThread.h
EventLoopThread.h
 
 
LoginTask.cpp
LoginTask.cpp
 
 
LoginTask.h
LoginTask.h
 
 
Message.cpp
Message.cpp
 
 
Message.h
Message.h
 
 
README.md
README.md
 
 
Serve.cpp
Serve.cpp
 
 
Server.h
Server.h
 
 
TaskData.h
TaskData.h
 
 
TaskFactory.cpp
TaskFactory.cpp
 
 
TaskFactory.h
TaskFactory.h
 
 
main.cpp
main.cpp
 
 

Repository files navigation

功能简介

基于libev的IO密集型服务程序的实现。 主线程 + 事件监听线程池 + 任务处理线程池 +其他的线程(日志等) 主线程用来一个事件循环监听新连接的到来。一旦连接成功就分发到事件监听线程池里。每个事件监听线程维护一个事件循环,用来监听客户端的请求,一旦客户端有请求到达就将请求信息封装成任务的形式交给任务处理线程池来处理。

项目中用到了CommonSDK这个库,这个基础库的也是自己封装的。里面大部分的功能都是基于boost封装的。都是一些常用的功能: https://github.com/fm123456/CommonSDK

使用

本模型具有很高的扩展性,在实际使用中我们只需要定义自己的TaskData(任务数据)和具体处理数据的task对象,重写execute方法就可以嵌入到该模型中。

About

基于IO密集型的高性能的服务器程序模型的实现

Resources

Readme
Activity

Stars

2 stars

Watchers

1 watching

Forks

2 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.