航行日志

在线用户管理设计

在线用户管理

伺服器端设计

采用SQLite内存资料库进行持久化在线用户资讯

User 数据结构

struct User
{
    String      Guid;        // Erp系统内Guid
    String      Code;        // 登录使用帐户
    String      Abbr;        // 用户简称 
    int         Id;          // 伺服器端连接ID
    String      IPAddress;   // 客户端IP地址
    Datetime    LoginTime;   // 登录时间
    Datetime    DropTimes;   // 未进行心跳次数                
}

UserList
内部使用定时器
每5秒检测,心跳次数>5次认为客户端断线。

KeepAlive
保持会话

IsLogin
判断用户是否已经登录

客户端设计

KeepAlive
定时60秒发送一次心跳包

用户登录系统后,产生TCP连接,发送登录讯息。