costin      02/05/14 10:07:08

  Modified:    jk/native2/include jk_worker.h
  Log:
  Few changes:
  
  - removed the statistics, too dangerous in a MT env.
  
  - remove the config stuff, it's now implemented in a generic way in jkconfig.
  
  - remove the init/destroy methods - that duplicate the init/destroy in bean.
  It is much cleaner to use the same lifecycle API for all components.
  ( it's mostly cosmetic, the behavior is the same ).
  
  - Added a 'hwBalanceErr' to support Bernd's use case - if set we check
  only local workers for requests without a session, and if all are down
  we return the given error code ( to be used by a front balancer )
  
  Revision  Changes    Path
  1.20      +12 -36    jakarta-tomcat-connectors/jk/native2/include/jk_worker.h
  
  Index: jk_worker.h
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/include/jk_worker.h,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- jk_worker.h       9 May 2002 20:58:13 -0000       1.19
  +++ jk_worker.h       14 May 2002 17:07:08 -0000      1.20
  @@ -58,7 +58,7 @@
   /***************************************************************************
    * Description: Workers controller header file                             *
    * Author:      Gal Shachor <[EMAIL PROTECTED]>                           * 
  - * Version:     $Revision: 1.19 $                                           *
  + * Version:     $Revision: 1.20 $                                           *
    ***************************************************************************/
   
   #ifndef JK_WORKER_H
  @@ -135,10 +135,6 @@
       
       struct jk_workerEnv *workerEnv;
       
  -    /** Pool for worker specific informations. XXX to be removed, is duplicated
  -    */
  -    struct jk_pool *pool;
  -
       /* 
        * A 'this' pointer which is used by the subclasses of this class to
        * point to data/functions which are specific to a given protocol 
  @@ -172,15 +168,6 @@
        */
       char *route;
   
  -    /* Number of requests served by this worker and the number of errors */
  -    int reqCnt;
  -    int errCnt;
  -
  -    /* Total time ( for average - divide by reqCnt ) and maxTime */
  -    /* XXX Not used curently. XXX Mutex for mt access  */
  -    long time;
  -    long maxTime;
  -    
       /** lb groups in which this worker belongs */
       struct jk_map *groups;
   
  @@ -206,15 +193,6 @@
        */
       int level;
       
  -    /* -------------------- Information for reconfiguration -------------------- */
  -    
  -    /* Only one thread can update the config
  -     */
  -    JK_CRIT_SEC cs;
  -    /* 'Version' or generation. Used to update the workers dynamically
  -       at runtime */
  -    int     ver;
  -
       /* -------------------- Information specific to the lb worker 
-------------------- */
   
       /** Load balanced workers. Maps name->worker, used at config time.
  @@ -223,23 +201,21 @@
        */
       struct jk_map *lbWorkerMap;
   
  +    /** Support for some hardware load-balancing schemes.
  +        If this is set, jk2 will only forward new requests to local
  +        workers ( level=0 ). All other workers will get requests
  +        with a session id.
  +
  +        The value of this field will be used as a status code if
  +        all local workers are down. This way the front load-balancers
  +        will know this server shouldn't be used for new requests.
  +    */
  +    int hwBalanceErr;
  +    
       int workerCnt[JK_LB_LEVELS];
       jk_worker_t *workerTables[JK_LB_LEVELS][JK_LB_MAX_WORKERS];
       
       /* -------------------- Methods supported by all workers -------------------- */
  -    /*
  -     * Do whatever initialization needs to be done to start this worker up.
  -     * Configuration options are passed in via the props parameter.  
  -     *
  -     * You can skip this by setting it to NULL.
  -     */
  -    int (JK_METHOD *init)(struct jk_env *env, jk_worker_t *_this);
  -
  -    /*
  -     * Shutdown this worker. XXX Some cleanup must be made by default
  -     * by workerEnv, so we don't need to duplicate the code.
  -     */
  -    int (JK_METHOD *destroy)(struct jk_env *env, jk_worker_t *_thisP );
   
       /*
        * Forward a request to the servlet engine.  The request is described
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to