Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:102095 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 84032 invoked from network); 8 May 2018 13:14:42 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 May 2018 13:14:42 -0000 Authentication-Results: pb1.pair.com smtp.mail=rowan.collins@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=rowan.collins@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.48 as permitted sender) X-PHP-List-Original-Sender: rowan.collins@gmail.com X-Host-Fingerprint: 74.125.82.48 mail-wm0-f48.google.com Received: from [74.125.82.48] ([74.125.82.48:39866] helo=mail-wm0-f48.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id FA/A8-24581-1C2A1FA5 for ; Tue, 08 May 2018 09:14:41 -0400 Received: by mail-wm0-f48.google.com with SMTP id f8-v6so21499410wmc.4 for ; Tue, 08 May 2018 06:14:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:user-agent:in-reply-to:references:mime-version :content-transfer-encoding:subject:to:from:message-id; bh=qoeLNDTVpTeNERF8B46Q7xI5ipZZ1wzHRlVY5ksD1FE=; b=q60T+MYfmlDXLXdn24WKvlmyRp/L/pnhuMWdmvzWokDAs8+xlku+5JrAYfopDnLPtI XN6Kb5XVGAL1VcX1kXDwi2uuF212X9GVqKr1gaPnvxEGV/748ZqUSjVA1qd9VJ1YDVhw 8pFHO0HN2g+HqnVB2ABvBlhqraZfTx7KV4TvZaVHK8F1Dwg1+1xAOGzEBa0q06SW9vmG j1yH1SPXmfplhzNmplv6Vf64K0ROZHPi+tkZQix2tOcHnGLQEm42dssm+1ABoAmNEzOq YYsn9phTIK+0EQ/BgHqN8ofMviSSd3VIPDNwD+OxuiisDNCf48ihjQEMoZqvDXGKXdyz NhPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:user-agent:in-reply-to:references :mime-version:content-transfer-encoding:subject:to:from:message-id; bh=qoeLNDTVpTeNERF8B46Q7xI5ipZZ1wzHRlVY5ksD1FE=; b=c7Fw3I2CFL4kWzRkF4siwPwTQCcxf6w+zpzv05zzG57f3fR8MIgS7aWghSEid0jvvg rvjgwYT/FCYRxdvFlwO4VbAPni2WNsnBvojD1LZMBYssIrFuMvBvNHuo8M2/iX5BZxyc Gzx0cOM6y+5IKm1oxIK0Aed4laLFQOKK9fN5HInCs+d3SytK83Q5vi0aAt8f2lQZhqvh BtvYm/YrqE5+E9M0XJYXQ+KKurW0EgO5vZqsiRc5t9Wz5b5aeczyJU/L/WKyzbQ7Q3Th yL/YRwx88SzI7owcAHfhoDH5NRt9ObHBY/qOGcZDwM2IH0LmTBzYnJRy9CR2UkT+aWDo RfZQ== X-Gm-Message-State: ALKqPweAEQlCQuwRshmIc3KIHTuBTOU6O7FRPD6h1SJgkjdddJ+88Inh tCKomzcdm7KPpWXkPYgH906IUWBT X-Google-Smtp-Source: AB8JxZrtXXHDgInjc3K3FttU09ScAfagpnKDUK9C1Xyqbf5pPxveKH1gfhNJbcaQDf5CBNAKqcp3OA== X-Received: by 2002:a1c:f108:: with SMTP id p8-v6mr3639164wmh.84.1525785278271; Tue, 08 May 2018 06:14:38 -0700 (PDT) Received: from [10.58.126.95] (188.29.164.174.threembb.co.uk. [188.29.164.174]) by smtp.gmail.com with ESMTPSA id d9-v6sm17185072wrn.71.2018.05.08.06.14.37 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 08 May 2018 06:14:37 -0700 (PDT) Date: Tue, 08 May 2018 14:14:33 +0100 User-Agent: K-9 Mail for Android In-Reply-To: References: <76EBF900-3BE8-4B60-9422-880A9754FCC4@lvht.net> <40579916-f96b-f34b-0a17-7397d12f0d63@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable To: internals@lists.php.net Message-ID: <937F83D9-C942-40D2-80A1-37ED8ABFDC2A@gmail.com> Subject: Re: [PHP-DEV] Re: [RFC] Fiber support (again) From: rowan.collins@gmail.com (Rowan Collins) On 7 May 2018 22:02:06 BST, "S=2EA=2EN" wrote= : >Fiber and all async functions, without event-loop - useless=2E >Need new PHP Application Server=2E >Best variant `libuv` in core PHP for event-loop and async I/O, and >implementing as async PHP SAPI as `Nginx Unit` module These are all good ideas, but I don't think any of them are logical "must = haves"=2E - Async functions might be useful in all sorts of contexts outside of a gl= obal event loop=2E For instance, handling non-blocking I/O=2E - An event loop doesn't necessarily imply a built-in Application Server, e= =2Eg=2E a worker for a message queue or task broker=2E - A full Application Server implies important decisions about the language= itself, like how to represent requests and responses, how global and stati= c scopes work, etc=2E These need to be designed in the abstract, and an int= erface like Python's WSGI defined, before worrying about implementation det= ails=2E - Once we've standardised the userland, the internal Async SAPI interface = can be implemented, and an Nginx Node might well be one of the implementati= ons, but that's not something we need to think about yet=2E Regards, --=20 Rowan Collins [IMSoP]