Return-Path: X-Original-To: apmail-httpd-dev-archive@www.apache.org Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6B01B1858F for ; Fri, 4 Dec 2015 15:25:43 +0000 (UTC) Received: (qmail 1387 invoked by uid 500); 4 Dec 2015 15:25:43 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 1323 invoked by uid 500); 4 Dec 2015 15:25:42 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 1313 invoked by uid 99); 4 Dec 2015 15:25:42 -0000 Received: from Unknown (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Dec 2015 15:25:42 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 7636BC14F2 for ; Fri, 4 Dec 2015 15:25:42 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.001 X-Spam-Level: *** X-Spam-Status: No, score=3.001 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=3, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=rowe-clan-net.20150623.gappssmtp.com Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id n1NWW7--OmRi for ; Fri, 4 Dec 2015 15:25:29 +0000 (UTC) Received: from mail-ig0-f173.google.com (mail-ig0-f173.google.com [209.85.213.173]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id 88A3842AD4 for ; Fri, 4 Dec 2015 15:25:29 +0000 (UTC) Received: by igcmv3 with SMTP id mv3so37916855igc.0 for ; Fri, 04 Dec 2015 07:25:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rowe-clan-net.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=Ai7YC5ZK5Ba/SLcBhfkI0TBpnkbalaCmBwIhgEX0jUw=; b=OI8sSrBo1LB7Q9Xadp/T8i5IpkWTby8n+sGTjjhJ6BMqZyH7Spzgqd1rgfbwAan0IK Wimfg4BcmPE9ByWIwkRsKZUkCgaKz6YQB5BEW+G9YpzEGv8PW390hfiId9OQRp/j17db oClOqsNwTeRhRbHI0eGXdFHipLoKEjjcmNrwzDQGchDF2BKZaExedi8mF13a0M2rxUXp UpCHIjwMuwvWm9DD23MN1kHB6TrJqrqBGTQw6X2RkkalfNQMJeD/s30wC0odEUnjGOMM PjQQih1Zdnrl+MqzMkKN0iVcrOjXs7qn8iH/HH5p5xQMPuAwclvhOLOmnWtuYrb8R4G4 A61Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=Ai7YC5ZK5Ba/SLcBhfkI0TBpnkbalaCmBwIhgEX0jUw=; b=I4z6BljKh6SwuVE/4UtK7O4DVl4ORZSBgf7/zwMctlZ73iWZyk17PG+FN5ao+umcli 007rYdG8sQC0xjMYb6iAkB4mp4Fv/q0ouw6VDU34LRrzKT4waRi1EEjCFUYbj+z0oDti eOgkrOHmblUSE/eI3EEoryybhCgO+fuw19WrhewAWekhHHBPH7b3/DbBIQX6vWEEKL7p 4hYSjFjxVOSXwFciT7CqXIQq50KsPpJSGeRTEeEzWB9Tf99EoO8d+2nRbrFCvmzMDo02 oHdghbsu4Y8X44hNp+1sdNkejJ4wv7397xJzaufP/HRkHGYmZ9ntGgMmtB9KYt88T42b Gh+w== X-Gm-Message-State: ALoCoQkIKY4TaDdHqkXgWQf8rcFBA2zpgs2pdf//QyBpxD2vAPLTTs1B6vr+VHel53p6b5E80v2Bc+jHgQLOCO6zI72iiwiE3vrdttWSlkDq2z9eW1HyK40= MIME-Version: 1.0 X-Received: by 10.50.142.7 with SMTP id rs7mr4755765igb.35.1449242729103; Fri, 04 Dec 2015 07:25:29 -0800 (PST) Received: by 10.107.62.136 with HTTP; Fri, 4 Dec 2015 07:25:28 -0800 (PST) Received: by 10.107.62.136 with HTTP; Fri, 4 Dec 2015 07:25:28 -0800 (PST) In-Reply-To: <23420A92-4983-40B9-86FD-7B0681983601@jaguNET.com> References: <288293CD-6D82-42E0-BFC9-9DC25F969ED6@jaguNET.com> <77E6470A-4FAD-4DAD-BE9E-E11F54388E2C@jaguNET.com> <23420A92-4983-40B9-86FD-7B0681983601@jaguNET.com> Date: Fri, 4 Dec 2015 09:25:28 -0600 Message-ID: Subject: Re: reverse proxy wishlist From: William A Rowe Jr To: httpd Content-Type: multipart/alternative; boundary=001a11c2eb5a0fea190526141e56 --001a11c2eb5a0fea190526141e56 Content-Type: text/plain; charset=UTF-8 My observation was that that the mapped pages for 2-6 fundamental socache, lbmethod or slotmem providers are the same as for a single module due to page alignment - load any two and you are already wasting kernel resources and memory. I agree that any user agent or content facing modules should remain distinct - only load those you use and trust. These core feature sets, when used, only face the conf file or in the case of lbmethod, the admin console. So they should be safe to load in parallel, when leveraged for a given module. They should even be safe to compile static, if the user likes. On Dec 4, 2015 07:33, "Jim Jagielski" wrote: > I thought the idea of providers and submodules were so > that, for example, if someone only used byrequests, for > example, they only needed to build and load that specific > submodule and nothing else... Not seeing what issue exactly > you're trying to address. > > > On Dec 3, 2015, at 6:25 PM, William A Rowe Jr > wrote: > > > > On Thu, Dec 3, 2015 at 3:40 PM, Jim Jagielski wrote: > > > > > On Dec 3, 2015, at 11:09 AM, William A Rowe Jr > wrote: > > > > > > My personal wish list is that we eliminate module bloat by coalescing > > > alternative "standard" implementations into a single module again in > > > 2.next, and not just limited to lbmethod, but also the core socache > > > and slotmem providers. Most stock/core implementations shouldn't > > > change if a user wants to plug in 'yet another' option, but there is > really > > > no excuse for us to map so many ldobjects and text pages into the > > > memory map of a given process, when the actual program text page > > > of each is a few hundred opcodes, max. > > > > > > > Not following you there... what do you mean? You mention the > > lbmethods; do you mean instead of having each method be its > > own module, making them all one? > > > > Not specific to lbmethods but yes, one mod_lbmethod_core.so provider > > of the basic set of 3-4 methods that right now eat up a lot of 64kb > process > > page mappings for no particular benefit. The builder could even decide > these > > are compiled-in to the base httpd. We don't dismiss the loadable > approach, > > we simply decide this subset is effectively baked, and then use the > loadable > > lbmethod to extend yet another experimental/dynamic/evolving method, from > > the ASF or third parties. > > > > > > --001a11c2eb5a0fea190526141e56 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

My observation was that that the mapped pages for 2-6 fundam= ental socache, lbmethod or slotmem providers are the same as for a single m= odule due to page alignment - load any two and you are already wasting kern= el resources and memory.

I agree that any user agent or content facing modules should= remain distinct - only load those you use and trust.=C2=A0 These core feat= ure sets, when used, only face the conf file or in the case of lbmethod, th= e admin console.=C2=A0 So they should be safe to load in parallel, when lev= eraged for a given module.=C2=A0 They should even be safe to compile static= , if the user likes.

On Dec 4, 2015 07:33, "Jim Jagielski" = <jim@jagunet.com> wrote:
I thought the idea of pro= viders and submodules were so
that, for example, if someone only used byrequests, for
example, they only needed to build and load that specific
submodule and nothing else... Not seeing what issue exactly
you're trying to address.

> On Dec 3, 2015, at 6:25 PM, William A Rowe Jr <wrowe@rowe-clan.net> wrote:
>
> On Thu, Dec 3, 2015 at 3:40 PM, Jim Jagielski <jim@jagunet.com> wrote:
>
> > On Dec 3, 2015, at 11:09 AM, William A Rowe Jr <wrowe@rowe-clan.net> wrote:
> >
> > My personal wish list is that we eliminate module bloat by coales= cing
> > alternative "standard" implementations into a single mo= dule again in
> > 2.next, and not just limited to lbmethod, but also the core socac= he
> > and slotmem providers. Most stock/core implementations shouldn= 9;t
> > change if a user wants to plug in 'yet another' option, b= ut there is really
> > no excuse for us to map so many ldobjects and text pages into the=
> > memory map of a given process, when the actual program text page<= br> > > of each is a few hundred opcodes, max.
> >
>
> Not following you there... what do you mean? You mention the
> lbmethods; do you mean instead of having each method be its
> own module, making them all one?
>
> Not specific to lbmethods but yes, one mod_lbmethod_core.so provider > of the basic set of 3-4 methods that right now eat up a lot of 64kb pr= ocess
> page mappings for no particular benefit.=C2=A0 The builder could even = decide these
> are compiled-in to the base httpd.=C2=A0 We don't dismiss the load= able approach,
> we simply decide this subset is effectively baked, and then use the lo= adable
> lbmethod to extend yet another experimental/dynamic/evolving method, f= rom
> the ASF or third parties.
>
>

--001a11c2eb5a0fea190526141e56--