• 后台运行进程(background job)


          在一些日常业务中,总有一些长时间处理的任务,系统运行这些任务需要一晚甚至一个周末。

          这就需要后台运行单元(background work process)来完成,而且其是不会发生超时(time out) 错误的。 

    进程(job)有下面几种类型:

          时间驱动(Time-driven  job):按照用户预先设定的有时间启动进程。

          事件驱动(Event-Driven job):在一个事件或另一个进程后,该进程启动。

          周期型(periodic  job) :在每时或每天,定时执行的进程。

          删除型(deleting  job): 为删除系统中盈余的数据的进程,可能会执行较长时间,需要在后台进行。 

    进程的属性:

    Job name:进程的名最长为32字符。

    Job count:为了去该进程在系统中的唯一性。比如周期性进程的名都是一样的,

                     Job name+Job count就能确定其的唯一性。

    Step:在该进程内中定义的程序数量。

    Start data:启动的时间点有:立即(immediatlly),指定时间(data/time),

                          时间(event)…等等。

    Job owner:产生该进程的用户。

    Job class:该进程在系统中的执行等级。

    Client:决定该进程在哪个Client中执行,有些系统进程必须在Client000中执行。

    Target sever:决定该进程在那个服务器中执行,这有助于合理的分配系统资源

    进程状态:

    Planned:进程已经被定义,但是还没有开始。

    Release:进程已经开始,但是进程中定义的程序还没有被执行。

    Ready: 进程已经开始,所有程序开始的条件(启动时间)也已满足,等候系统分配运行资源

                  (运行所需的后台进程处理单元<BTC-WP>)。

    Active:   进程开始,而且定义的每一个程序(STEP)都被按序执行。

    Finished: 进程顺利完成。

    Cancelled:因为错误,进程没有正常完成。 

    各个进程的关系:

    Planned   <>  Release  > Ready -> Active -->  finished or Cancelled

     执行后台进程的方法:

       事务执行命令(transaction code):

               SM36,SM37, SA38

      ABAP 程序:

               SAP系统程序或客户自定义的程序。

    外部程序或工具:

             外部工具(第三方)通过BAPI-XBP接口,从外部定义执行后台进程。 

    后台进程相关的系统表:

    TBTCO:   存放后台进程所有的信息和状态。

    TBTCP:存放后台进程中定义程序的信息。

    TBTCS:    时间驱动进程相关的信息。

    BTCEVTJOB:事件驱动进程相关的信息。 

    后台进程的日志(joblog):

    日志存放在文件系统(其是TemSe子系统)中,列如:/usr/sap/<sid>/sys/global/001joblg…

    一般的问题处理:

    问题1:  后台进程没有启动。

    原因1:系统没有足够的资源。可以用T-cd:Sm51,Rz04,SM66,Sm37确认。

    原因2:进程调度(Scheduler)没有运行。T-cd:Sm61确认。

    原因3:无法生产日志,用Sm21确认系统日志,和ST11确认developer trace。

                       可能是有TemSe不整合或有OS文件的访问问题。 

    原因4:TCTCO,TCTCP…等一系列表之间的不整合;用SM65->Goto->Additional test->

                    选择:Perform TemSe check

                                 Consistency check DB Table

                                    Remove inconsistencies

                    ->执行

    问题2:后台进程在执行的过程中,发生互锁。

    原因1:确认应用程序的逻辑,一般情况下这个问题都是有应用程序本身导致的。

    原因2:数据库的原因,但是这样的情况较少。

    原因3:两个周期进程,间隔时间太短,以至于第一个还没有执行完,第二个已开始执行。

    建议·: 根据note-16083中的说明,设定标准进程,以减少系统负担和数据盈余。

  • 相关阅读:
    URAL 1998 The old Padawan 二分
    URAL 1997 Those are not the droids you're looking for 二分图最大匹配
    URAL 1995 Illegal spices 贪心构造
    URAL 1993 This cheeseburger you don't need 模拟题
    URAL 1992 CVS
    URAL 1991 The battle near the swamp 水题
    Codeforces Beta Round #92 (Div. 1 Only) A. Prime Permutation 暴力
    Codeforces Beta Round #7 D. Palindrome Degree hash
    Codeforces Beta Round #7 C. Line Exgcd
    Codeforces Beta Round #7 B. Memory Manager 模拟题
  • 原文地址:https://www.cnblogs.com/ruingy/p/3676023.html
Copyright © 2020-2023  润新知