현재 위치: > 최신 기사 목록> curl_share_init () 및 curl_init ()가 같은 것입니까?

curl_share_init () 및 curl_init ()가 같은 것입니까?

M66 2025-06-06

curl_init () 는 가장 일반적으로 사용되는 컬 기능 중 하나입니다. 이 기능은 다양한 후속 컬 작업을위한 컬 세션 핸들을 초기화하는 것입니다. curl_init ()를 사용할 때마다 컬 핸들이 반환되며 이는 후속 작업의 기초입니다. 이를 통해 요청 옵션을 설정하고 요청 실행, 응답 받기 등을 설정할 수 있습니다.

기본 사용 :

 $ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://m66.net/api/endpoint");  // 요청 된 설정URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  // 리턴 값을 문자열로 설정하십시오,직접 출력하는 대신
$response = curl_exec($ch);  // 요청을 실행하고 응답을받습니다
curl_close($ch);  // 폐쇄 cURL 핸들

curl_init () 는 주로 CURL 요청을 초기화하는 데 사용됩니다. 여러 요청간에 설정을 공유하는 것은 포함되지 않습니다. 따라서 새 요청이 시작될 때마다 새 세션 핸들을 만들려면 Curl_Init ()를 호출해야합니다.

2. curl_share_init () 함수

curl_init () 와 달리 Curl_share_init ()는 공유 핸들을 반환하는 공유 리소스를 작성하는 데 사용되는 함수입니다. 이 핸들은 연결, 쿠키, DNS 조회 등과 같은 여러 컬 세션에서 리소스를 공유 할 수 있습니다. 이는 여러 컬 세션에서 공유 설정을 구현하는 데 사용됩니다. 종종 중복 워크로드를 줄이고 성능을 향상시키기 위해 동시 요청을 할 때 사용됩니다.

기본 사용 :

 $ch1 = curl_init();
$ch2 = curl_init();

// 创建共享핸들
$sh = curl_share_init();

// 设置共享핸들的资源
curl_setopt($ch1, CURLOPT_SHARE, $sh);
curl_setopt($ch2, CURLOPT_SHARE, $sh);

// 다른 설정 cURL 요청 옵션
curl_setopt($ch1, CURLOPT_URL, "https://m66.net/api/endpoint1");
curl_setopt($ch2, CURLOPT_URL, "https://m66.net/api/endpoint2");

curl_exec($ch1);
curl_exec($ch2);

// 폐쇄会话和共享핸들
curl_close($ch1);
curl_close($ch2);
curl_share_close($sh);

이 예에서는 Curl_share_init () 에 의해 반환 된 공유 핸들 $ sh가 두 개의 다른 컬 세션에서 $ CH1$ CH2 로 설정되어 리소스를 공유 할 수 있습니다. curl_share_init () 는 주로 병렬로 요청할 때 성능을 향상시키는 데 사용되며 여러 컬 세션이 동일한 구성을 공유 할 수 있습니다.

3. curl_init ()curl_share_init () 의 차이

차이점 curl_init () curl_share_init ()
기능 단일 HTTP 요청을 시작하려면 컬 세션 핸들 초기화 여러 세션에 대한 공유 리소스 핸들을 초기화하여 리소스 공유
반환 값 컬 핸들을 반환하십시오 리소스 공유를 위해 공유 핸들을 반환합니다
시나리오를 사용하십시오 단일 컬 요청 여러 컬 요청간에 구성 및 리소스를 공유하십시오
자원을 공유하십시오 공유 리소스는 지원되지 않습니다 공유 연결, 쿠키, DNS 검색 및 기타 리소스를 지원합니다
닫을 때 작동 curl_close ()를 사용하여 닫기 curl_share_close ()를 사용하여 공유 핸들을 닫습니다.

일반적으로 Curl_Init ()는 단일 컬 요청을 초기화하는 데 사용되는 반면 Curl_share_init ()는 여러 컬 세션에 대한 공유 리소스를 만드는 데 사용됩니다. 그것들은 다른 방식으로 사용 및 적용되지만 Curl_share_init ()는 동시 요청이있을 때 성능을 크게 향상시킬 수 있습니다.