#define DEFAULT_SCOREBOARD "logs/apache_runtime_status"
#endif
-/* for proxy_worker_stat */
-#include "../modules/proxy/mod_proxy.h"
-
/* Scoreboard info on a process is, for now, kept very brief ---
* just status value and pid (the latter so that the caretaker process
* can properly update the scoreboard when a process dies). We may want
};
/* stuff which is lb specific */
-typedef proxy_worker_stat lb_score;
+typedef struct lb_score lb_score;
+struct lb_score {
+ /* TODO: make a real stuct from this */
+ unsigned char data[1024];
+};
/* Scoreboard is now in 'local' memory, since it isn't updated once created,
* even in forked architectures. Child created-processes (non-fork) will
#define MAX(x,y) ((x) >= (y) ? (x) : (y))
#endif
-/* Global balancer counter */
-static int lb_workers_limit = 0;
-
-/**
- * Calculate number of maximum number of workers in scoreboard.
- * @return number of workers to allocate in the scoreboard
- */
-static int ap_proxy_lb_workers(void)
-{
- /*
- * Since we can't resize the scoreboard when reconfiguring, we
- * have to impose a limit on the number of workers, we are
- * able to reconfigure to.
- */
- if (!lb_workers_limit)
- lb_workers_limit = proxy_lb_workers + PROXY_DYNAMIC_BALANCER_LIMIT;
- return lb_workers_limit;
-}
-
-
/*
* A Web proxy module. Stages:
*
* If this limit is reached you must stop and restart the server.
*/
#define PROXY_DYNAMIC_BALANCER_LIMIT 16
+/**
+ * Calculate number of maximum number of workers in scoreboard.
+ * @return number of workers to allocate in the scoreboard
+ */
+int ap_proxy_lb_workers(void);
/* For proxy_util */
extern module PROXY_DECLARE_DATA proxy_module;
/* Global balancer counter */
int PROXY_DECLARE_DATA proxy_lb_workers = 0;
+static int lb_workers_limit = 0;
static int proxy_match_ipaddr(struct dirconn_entry *This, request_rec *r);
static int proxy_match_domainname(struct dirconn_entry *This, request_rec *r);
return OK;
}
+int ap_proxy_lb_workers(void)
+{
+ /*
+ * Since we can't resize the scoreboard when reconfiguring, we
+ * have to impose a limit on the number of workers, we are
+ * able to reconfigure to.
+ */
+ if (!lb_workers_limit)
+ lb_workers_limit = proxy_lb_workers + PROXY_DYNAMIC_BALANCER_LIMIT;
+ return lb_workers_limit;
+}
+
PROXY_DECLARE(void) ap_proxy_backend_broke(request_rec *r,
apr_bucket_brigade *brigade)
{