FAQ > 金融建模 > 建模问题 > 平台使用

Q:任务管理说明    

  • A:任务管理主要是对登录的账号、执行的在线任务或委托执行的任务进行查看或者终止任务等操作。
    1、怎么进入任务管理窗口:左上角点击“帮助”-》“任务管理”,即进入任务管理窗口。
     

        任务管理器窗口可以分为信息窗口和命令窗口,用户在命令窗口输入查询命令并回车,即可在信息窗口中查看相关信息。
     

    2、命令说明:
    1)?:命令查询,在命令输入框中输入?可查询到所有的命令关键字
     

    2)info:本账号登录的基本信息以及执行函数信息
     
    信息列说明:
    客户端登录信息:
    CLIENTID:客户端ID
    ADDR:用户计算机IP
    PORT:客户端登录的端口
    RECV(M):收到的数据大小
    SEND(M):发送的数据大小
    MINS:客户端登录时间长度(分钟)
    USERNAME:登录的账号名
    PSENDS:发送队列的包数
    PSEND(M):队列的数据量(兆)
    OLTASK:在线执行个数/可在线执行个数
    BGTASK:后台委托执行个数/可委托执行个数
    SUBTASK:已订阅个数/可订阅个数
    #RESERVED网格时,留给其他任务可使用的个数(可在线执行的个数-使用网格个数)

    执行的函数信息:
    APPID:运行的程序ID
    FLAG:运行状态 ,RUN(运行)或WAIT(排队等待执行)、CNCL(取消执行)
    TYPE:函数执行方式, ONLINE(在线执行)或 BACK(委托执行)
    USER:用户账户
    RECV(min):提交函数时间(分钟)
    EXEC(min):执行函数时间(分钟)
    FUNCNAME:函数名称
    CBITS:客户端位数
    BITS:服务器执行位数
    SERVICENAME:服务器版本
    APPSERVER:执行该函数的运算器信息
    注意,flag列的CNCL(取消执行)一般出现在以下两种情况:
    1)程序返回结果集很大,在取消的时候,正在返回,而这个结果集需要压缩打包,打包是需要时间的,这个时候无法被打断,需要等待这个结束之后才可以被取消成功;
    2)如果用户调用一个二进制函数,该函数运行时间很长,这期间也无法取消,必需等待该函数调用结束后才可以被取消成功
    除了这两种情况,其他情况下取消正在执行的函数,用info或oa命令查询出来的flag列,是已经没有这个进程的信息,即没有CNCL的记录,因为已经取消成功。而上面两种情况,取消时还需等待。

    3)ou:查看登录该账号的用户信息
     
        信息列的说明,请查看命令 2)info 中对各列的解释。
        2 user(s) online:说明有两个客户端登录。
    实例分析01:
        目前该账户有2人同时登录,地址分别为58.61.246.243和58.61.246.237,执行的端口分别为58842和53476。其中一个登录时长(mins列)为2分钟,一个登录时长为241分钟。执行函数时发送的数据大小(SEND(M)列)分别为0.5M和0.4M。该账号(USERNAME列)可并发在线执行的个数为100个,现在在线执行的个数为2个;可委托执行的个数为10个,现在委托执行的个数为1个。

    实例分析02:

    2 user(s) online:说明有两个登录连接的是当前服务器。
    1 extended user(s) online:说明有1个登陆连接的是其它服务器。
    说明:天软官方服务器目前有两个服务器机群供用户使用,一个是深圳服务器(即我们默认的.Net服务平台),另一个是武汉服务器。
    当执行ou命令的服务器是深圳服务器时,则user(s) online显示的是深圳服务器上本账号登陆的数量,而 extended user(s) online则显示的是武汉服务器登陆的数量,反之亦然。
    其中,扩展联机服务器上的登陆信息信息较为简单,只有 ADDR,PORT,及EXSERVER(扩展服务器),MINS USWRNAME等字段。
    也就是说,比如kick功能就无法对扩展服务器上的登陆账号进行踢除操作,此时若需要踢除扩展服务器上的进程或登陆则需要登陆相应的服务器后进行操作即可。

    4)oa:查询当前在线执行和委托执行的所有函数
     
        信息列的说明,请查看命令 2)info 中对各列的解释。
        3 online task(s):说明该账号目前在线执行的任务有3个。
        1 background task(s):说明该账号目前委托执行的任务有1个。
        0 Subscription(s):说明当前订阅的任务数为0个
    实例分析:
        目前该账号在线执行的函数有3个,函数名(FUNCNAME列)分别是sumtrade、function67和test2;对应的APPID分别是1032732026、103183933和103181993。
        这3个函数均是在64位客户端上提交执行,并且在64位服务器下执行,执行的时间分别是0分钟、16分钟和17分钟。其中函数sumtrade在新功能测试版服务器下执行,该服务器的内部IP是192.168.101.44,后面的是运算器信息。而函数function67和test2是在正式版服务器下执行,执行服务IP分别是192.168.101.43和192.168.101.9。
        该账号还有1个委托执行的函数,其函数名为function83,委托执行时间为16分钟,执行的服务器是正式版的,其IP为192.168.101.13。
        
    5)kick:剔除指定用户或指定程序
        kick 命令后需指定用户ID(clientid列)、用户名称(username列)或进程服务ID
        实例1:剔除指定客户端ID (一个登录对应一个客户端ID)
         
    实例分析:
        kick 2775020 是将客户端ID为2775020的用户剔除。用户在该客户端ID下在线执行的所有进程断开,委托执行的进程仍然继续执行。
        该客户端将与服务器断开连接,并提示如下:
      

        实例2:剔除指定用户名称。

    实例分析:
        kick 后跟用户账户名称,将剔除所有登录的同名账户,该账户下在线运行的程序将终止,委托运行的程序继续运行。
        注意,终止客户端或终止账号后,客户端还会重新登录。

    6)kill:终止运行的程序,并将终止信息发送给用户。
        kill 命令后需指定进程ID(APPID列)。
     
    实例分析:
        用户可用命令info查询目前的用户信息及运行信息,查看函数名称等找到需终止的进程ID。比如kill 109295236,成功终止后将提示1 tasks killed。再用命令info查询目前用户及运行状况,可看到109295236已终止。
        被kill的用户将收到如下提示: