Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:125341 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 2A2051A00BD for ; Wed, 28 Aug 2024 17:23:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1724865939; bh=Mz1Cq5bBaH+4kQ+soPRtrhtqHR+GqS5xpGL4QQ3NEM0=; h=Reply-To:From:Date:Subject:To:From; b=nX94+SKzY2brp+o1VnFK1sjDpQWVD/2z++/4OYEiBC1wgBpVCWjYCIFJPZBoTN8QS nlyB17wn71egiDRkL9w3G/9g5o7Ya/SB9u0yvEAwTR0MrpThZ2oHrXdoaH6rKLK1ST 3X9CkGVp7BeXwyL3hE7m6/9h29mCvbABQI6FnWYkjvGl+z1yCV9T3hiq3XfuU6kbTM GNpJjJDEXEU94yCeYNNotlqNCPXp2tpUrEZ5FnPi2AqMw35lVQkxRZ4xeqhfOXiVqJ fpC1eWZZMoTsxvBC4TvHsXlHpqMTuBF+/uzLdZFXwdidwZzVuW77uwAZZszhg+1Qcc 4r4PCMj0mxQkQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 2ECE7180078 for ; Wed, 28 Aug 2024 17:25:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: * X-Spam-Status: No, score=1.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, FREEMAIL_REPLYTO,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-il1-f180.google.com (mail-il1-f180.google.com [209.85.166.180]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 28 Aug 2024 17:25:38 +0000 (UTC) Received: by mail-il1-f180.google.com with SMTP id e9e14a558f8ab-39d2044b522so23604145ab.0 for ; Wed, 28 Aug 2024 10:23:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1724865824; x=1725470624; darn=lists.php.net; h=to:subject:message-id:date:from:reply-to:mime-version:from:to:cc :subject:date:message-id:reply-to; bh=Mz1Cq5bBaH+4kQ+soPRtrhtqHR+GqS5xpGL4QQ3NEM0=; b=Kr2HLnTGB1kATS5IbcJkzPtR6yhFV+2Mn/+9943VoGUPQtGyA1xgkHxSf64W2XCLNn pYvxygg0wX9VqtgUYtwRAqZJv8e8sCDXdfqAQUcTXyTUWI3GUT9c9xvS0ZMsS1VVI9Mm ZnnmTuVLrxUH8lG96XCBHbXY+J5crLb8xpuGF+mikNY30/iPJAkl0jpxWtZYFY3GUntr vbOKirQSvv4Q83szoIWe6YZ0t2xa1uNaFv4I6HsrsTmsRQAa3BYxZz2RQ5HM278IWVrv WmO/l4NTlJ4fjyVdo4R6VyfQp8W4fAZXopR9+nahSMrDwPPHIHk/FzbR+PdaJkvRfU30 U+JQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724865824; x=1725470624; h=to:subject:message-id:date:from:reply-to:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Mz1Cq5bBaH+4kQ+soPRtrhtqHR+GqS5xpGL4QQ3NEM0=; b=wXxzBKUGz3use+Fh+DkENCCUYBCs4SjqZyuJPZ4EeRA2b07ivMc+ZXC0/SiTCCz/yk iF+YtiCaK9n8me1pD7fm6q3F3J/L7XCDPErLjT235arz75E/klglhVvO6Ptq1up+ZrfU OGlpvR8Ev7qvEZru+tNcwD54n6L1NJZyqeEd3odgLPT4k4P91LDr7nFtSUhz3mP4wJjy EamDkxhjq0FoIpE9W37NGgampwUnHClaheO/2uNRUjBXRQpGxr9XgtFKbvyK83t89Mkj 5nMgO11iFeLl4kWhSxOMfEjpKqnB9Nl36/R8tejRF0jADdL1FmSqianySkCUrgvWsgiZ 4g8Q== X-Gm-Message-State: AOJu0Yy4+0rrASe9N295UCcAF0twkQpjLhofIBYWGVHpzjYkWCbAWn5e Re35tEmrlFE890XR/IFhcH4CNrWBOUCwqMckimiE14WJg0yAID4QOjGbxc3CcF4hSeDT7eT86AH ipeqlwOOFX/2tyel4U19f0P/RYyc0vd9g X-Google-Smtp-Source: AGHT+IEOvnLTSjIQguB7qskCFQya8iED+EIlFPYO6+gK4BUgmtSD2F5crnFahT4KwYnDwJdeuFCS+oRK75DmntoEGvQ= X-Received: by 2002:a05:6e02:17ca:b0:39d:50c9:26d7 with SMTP id e9e14a558f8ab-39f3786be29mr4238265ab.20.1724865823956; Wed, 28 Aug 2024 10:23:43 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 Reply-To: erictnorris@gmail.com Date: Wed, 28 Aug 2024 13:23:28 -0400 Message-ID: Subject: [PHP-DEV] Persistent CurlShareHandle objects To: PHP internals Content-Type: text/plain; charset="UTF-8" From: eric.t.norris@gmail.com (Eric Norris) Hey all, I've got a pull request at https://github.com/php/php-src/pull/15603 that I wanted to bring to your attention. We're interested in being able to reuse curl share handles across requests in mod_php, since we'd expect a performance benefit from not having to redo DNS lookups (in the case of CURL_LOCK_DATA_DNS) or having to re-establish connections (in the case of CURL_LOCK_DATA_CONNECT). I'm not tied to the specific implementation in my PR, though I'll note that I ran into an issue with calling curl_share_setopt with CURL_LOCK_DATA_CONNECT that makes it preferable to be able to initialize the curl share handle once with the share options. I've fixed that issue in https://github.com/curl/curl/pull/14696, but of course that won't be available for most people for quite some time. Thanks! Eric Norris