Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:118430 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 98012 invoked from network); 14 Aug 2022 12:05:10 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 14 Aug 2022 12:05:10 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 53E00180380 for ; Sun, 14 Aug 2022 07:07:56 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_05,NICE_REPLY_A, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS8560 212.227.0.0/16 X-Spam-Virus: No X-Envelope-From: Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.17.10]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sun, 14 Aug 2022 07:07:55 -0700 (PDT) Received: from [192.168.178.22] ([85.212.202.122]) by mrelayeu.kundenserver.de (mreue107 [213.165.67.113]) with ESMTPSA (Nemesis) id 1MQuLB-1o2hHq2j2t-00O25s for ; Sun, 14 Aug 2022 16:07:53 +0200 Message-ID: Date: Sun, 14 Aug 2022 16:07:53 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 Content-Language: en-US To: PHP Internals List References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:oIJKLpnRXT1ScPr7hTEo2g4kyvqXip/K+ShBwX+h43jQyeIKQnC Ycoqcajwy9pPPV9mlR7oXTKZJz/7f7p48pelOJKxhxyueb7mPK0zzfectNC4D704FcVaeRW k5MAv5ZtIku48BVvxEPipKuFyPq3a5sfRnX1TrcQ0CFhMCr9XI5spy+bvGsdfmdKYJb0lbk n98GDT+qPZuVmJy0WwfAg== X-UI-Out-Filterresults: notjunk:1;V03:K0:YXcmh8k4yVc=:XJSsvDR4qMeYRGfeoUPHfb ZTHcEN+OZmXoFlJ6owkvMMAwIZQWDVRgz2agvqX5U2+fB2hNg03u4Xr9D+5gTL7Mok7YEI/mi OPlO6CUFPAEDiA5dRDkNxBWSOxFx77O2h2ZfGCMqw0peNpROSC3a+4Cy6Cy8HocVyTwBqdT0t EXG98rjeqrrYpRWyeTBwK6GIkRxIk6/jnvKs5SOzSOGFXtT1OHXi29MOB+/Flc5N+TfhbFYrd V+aa3Zd2Cyxh/9dTpCiC+RNcjMSclck5MALOBwpCFRlv73kEZdddjBuFDr9zISNuuU8lgIk/+ a7S4cHAcc21qhI8VIZWcZfXrsZ9wV0ClY+SF281h3Q/AVY3SCkovO+u8xw8DxU/oGhhont4VB /JsI0hL8+Oql8xqUaxwnY8QXpF0KIY3AKh/6AjjaWI77Jd+24KftWuj10SayabimJtAskD/Zd 3CuzCam/4NEhMVyNVtFxZs2EENzH2Yf02gilraDLl9qeDLPFD55vY28veSRpuiR3DkAJihBZx qh2Wjw2AWJgnFR3asDfXxBvR7AuTQkgx/xbBeeXy+wjlMXmrbdHdcTdZBVueWQdO8bZg6ZGl7 h8THI6Mg03FYbrJwFqVl7SUn4Y9CljRXnddldPX3WhEPvdxHz2Gu2Mj5N7ZrGXFlguLdFfQ1p 4VBmX413p/hkLfWvVcGTQOFMFwhNOZx8sbqr2NLPu1tuqvm2QnxWnkJZx91M6nlWENNlGVHjc rdK+m3hLWrojlmfCdNYyBeUiFefwXYH1TypzgxiHc23l1R1FEuqKCf12n5I= Subject: Re: [PHP-DEV] Executing PHP SAPI/runtime from Golang/Rust From: thomas@nunninger.info (Thomas Nunninger) Hey, Am 14.08.22 um 14:29 schrieb Paul Dragoonis: > Hey, > > So one thing that keeps me up at night (for a while now) is resisting the > urge not to venture down a rabbithole of writing code which is loading the > PHP runtime from Rust/Golang (up to MINIT) > > And then at RINIT time, we load the right SAPI and pass across the SERVER > vars that's needed for it.. > > Here is a use case example. Golang concurrency model on the front, and it > can execute PHP CLI SAPI or HTTP SAPI on the back. > > Moreover if you're looking at reasons people have previously or currently > moving away from PHP to other languages, due to limitations like pure async > or concurrency stuff .. then perhaps a new FRONTEND which can execute the > PHP runtime on the backend would be solving some things. > > I appreciate this isnt a unique idea and maybe someone else from internals > has raised this before .. but I wanted to raise the topic to check the > viability of this if it is possible, and what blockers are in our way, > currently, if it's not even possible to share SAPI calls from another > language runtime. I'm not sure about the internals you mention. Are you looking for something like https://roadrunner.dev/ "RoadRunner is a high-performance PHP application server, load-balancer, and process manager written in Golang." Best regards Thomas