Rumah rangka kerja php Workerman Pembangunan pekerja: Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2

Pembangunan pekerja: Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2

Nov 07, 2023 am 11:25 AM
http pelayan web workerman

Pembangunan pekerja: Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2

Pembangunan Pekerja: Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2

HTTP2 ialah versi generasi baharu protokol HTTP, yang meningkatkan prestasi dan keselamatan Terdapat peningkatan yang hebat dalam semua aspek. Workerman ialah rangka kerja komunikasi masa nyata PHP yang biasa digunakan, yang mempunyai kelebihan prestasi tinggi, pengembangan mudah dan kemudahan penggunaan. Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2? Artikel ini akan memperkenalkan dari aspek berikut:

  1. Fahami ciri-ciri protokol HTTP2
  2. Bagaimana Workerman menyokong protokol HTTP2
  3. Capai pelayan Web khusus protokol HTTP2
  4. Contoh kod

1 Fahami ciri protokol HTTP2

HTTP2 protokol adalah baharu. penjanaan versi protokol HTTP, yang mempunyai peningkatan hebat dalam prestasi dan keselamatan. Berbanding dengan protokol HTTP1.x, ia mempunyai ciri-ciri berikut:

  1. Protokol binari: HTTP2 menggunakan protokol binari, manakala HTTP1.x menggunakan protokol teks. Protokol binari menghuraikan dan memindahkan data dengan lebih cepat.
  2. Multiplexing: HTTP2 boleh menghantar berbilang permintaan dan respons secara selari pada sambungan yang sama. Ini mengurangkan penubuhan sambungan dan kependaman, meningkatkan responsif keseluruhan tapak web.
  3. Mampatan pengepala: HTTP2 menggunakan algoritma HPACK untuk memampatkan pengepala permintaan dan respons, mengurangkan saiz penghantaran data dan meningkatkan prestasi.
  4. Tekan pelayan: HTTP2 boleh secara aktif menolak fail sumber berkaitan halaman web kepada pelanggan, mengurangkan bilangan permintaan pelanggan dan meningkatkan kelajuan pembukaan halaman web.

2. Bagaimana Workerman menyokong protokol HTTP2

Workerman ialah rangka kerja komunikasi masa nyata PHP yang pada asalnya direka untuk mencapai prestasi tinggi berasaskan pada komunikasi protokol TCP, tetapi ia juga menyokong protokol HTTP. Workerman menggunakan protokol HTTP1.x secara lalai, tetapi ia juga menyokong protokol HTTP2.

Syarat asas untuk melaksanakan protokol HTTP2 ialah mempunyai sijil SSL, kerana protokol HTTP2 hanya menyokong penggunaan dalam mod penyulitan. Oleh itu, kita perlu mengkonfigurasi sijil SSL dalam Workerman untuk menyokong protokol HTTP2. Kaedah konfigurasi khusus adalah seperti berikut:

$context = array(
    // 这是key, 一般和crt放在一起
    'ssl' => array(
        // 请使用绝对路径
        'local_cert' => '/your/path/to/server.crt', // 服务端证书
        'local_pk' => '/your/path/to/server.key', // 服务端证书的私钥
        'verify_peer' => false, // 是否需要验证客户端证书
    )
);

// 初始化一个Worker监听http://0.0.0.0:443
$worker = new Worker("http://0.0.0.0:443", $context);

// 开启对HTTP2.0的支持
$worker->transport = 'ssl';
$worker->protocol = "Http2";
Salin selepas log masuk

3 Laksanakan pelayan Web protokol HTTP2 khusus

Selepas Workerman menyokong protokol HTTP2, kami boleh melaksanakan pelayan Web protokol HTTP2. Terdapat banyak kaedah pelaksanaan khusus Di sini kita mengambil pelaksanaan pelayan Web protokol HTTP2 sebagai contoh.

  1. Buat fail PHP bernama http2_server.php dan masukkan kod berikut:
<?php
require_once __DIR__ . '/../vendor/autoload.php';

$context = array(
    'ssl' => array(
        'local_cert' => '/your/path/to/server.crt',
        'local_pk' => '/your/path/to/server.key',
        'verify_peer' => false,
    )
);

$worker = new WorkermanWorker('http://0.0.0.0:443', $context);

$worker->transport = 'ssl';
$worker->protocol = "Http2";

$worker->onConnect = function($connection) {
    echo "new connection from ip " . $connection->getRemoteIp() . "
";
};

$worker->onMessage = function($connection, $data) {
    $request_uri = $_SERVER['REQUEST_URI'];
    $response = "Hello, HTTP2!
";
    $connection->send($response);
};

Worker::runAll();
Salin selepas log masuk
Salin selepas log masuk
  1. Mulakan Pelayan Web#🎜
Jalankan arahan berikut untuk memulakan pelayan web:

php http2_server.php start -d
Salin selepas log masuk

Pada masa ini, jika anda menggunakan pelayar untuk mengakses https://localhost, anda seharusnya melihat kandungannya sebagai Helo, halaman HTTP2!

4. Contoh kod

Kod telah diberikan di bahagian ketiga, dan kod lengkap diberikan sekali lagi di sini. Anda hanya perlu menggantikan /your/path/to/server.crt dan /your/path/to/server.key dengan laluan sijil SSL anda sendiri.

<?php
require_once __DIR__ . '/../vendor/autoload.php';

$context = array(
    'ssl' => array(
        'local_cert' => '/your/path/to/server.crt',
        'local_pk' => '/your/path/to/server.key',
        'verify_peer' => false,
    )
);

$worker = new WorkermanWorker('http://0.0.0.0:443', $context);

$worker->transport = 'ssl';
$worker->protocol = "Http2";

$worker->onConnect = function($connection) {
    echo "new connection from ip " . $connection->getRemoteIp() . "
";
};

$worker->onMessage = function($connection, $data) {
    $request_uri = $_SERVER['REQUEST_URI'];
    $response = "Hello, HTTP2!
";
    $connection->send($response);
};

Worker::runAll();
Salin selepas log masuk
Salin selepas log masuk
Ringkasan

HTTP2 protokol ialah versi generasi baharu protokol HTTP Berbanding dengan protokol HTTP1.x, ia telah dipertingkatkan dari segi prestasi dan keselamatan. Workerman ialah rangka kerja komunikasi masa nyata PHP yang biasa digunakan yang menyokong protokol HTTP2. Artikel ini menerangkan cara menggunakan Workerman untuk melaksanakan pelayan web berdasarkan protokol HTTP2, termasuk mengkonfigurasi sijil SSL dan melaksanakan pelayan web tertentu.

Atas ialah kandungan terperinci Pembangunan pekerja: Bagaimana untuk melaksanakan pelayan web berdasarkan protokol HTTP2. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Laksanakan muat naik dan muat turun fail dalam dokumen Workerman Laksanakan muat naik dan muat turun fail dalam dokumen Workerman Nov 08, 2023 pm 06:02 PM

Untuk melaksanakan muat naik dan muat turun fail dalam dokumen Workerman, contoh kod khusus diperlukan. Pengenalan: Workerman ialah rangka kerja komunikasi rangkaian tak segerak PHP berprestasi tinggi yang ringkas, cekap dan mudah digunakan. Dalam pembangunan sebenar, muat naik dan muat turun fail adalah keperluan fungsi biasa Artikel ini akan memperkenalkan cara menggunakan rangka kerja Workerman untuk melaksanakan muat naik dan muat turun fail, dan memberikan contoh kod khusus. 1. Muat naik fail: Muat naik fail merujuk kepada operasi memindahkan fail pada komputer tempatan ke pelayan. Yang berikut digunakan

Fahami senario aplikasi biasa pengalihan halaman web dan fahami kod status HTTP 301 Fahami senario aplikasi biasa pengalihan halaman web dan fahami kod status HTTP 301 Feb 18, 2024 pm 08:41 PM

Kuasai maksud kod status HTTP 301: Senario aplikasi biasa pengalihan halaman web Dengan perkembangan pesat Internet, keperluan orang ramai untuk interaksi halaman web menjadi lebih tinggi dan lebih tinggi. Dalam bidang reka bentuk web, pengalihan halaman web adalah teknologi biasa dan penting, dilaksanakan melalui kod status HTTP 301. Artikel ini akan meneroka maksud kod status HTTP 301 dan senario aplikasi biasa dalam pengalihan halaman web. Kod status HTTP301 merujuk kepada ubah hala kekal (PermanentRedirect). Apabila pelayan menerima pelanggan

Mana satu lebih baik, swool atau pekerja? Mana satu lebih baik, swool atau pekerja? Apr 09, 2024 pm 07:00 PM

Swoole dan Workerman kedua-duanya adalah rangka kerja pelayan PHP berprestasi tinggi. Terkenal dengan pemprosesan tak segerak, prestasi cemerlang dan kebolehskalaannya, Swoole sesuai untuk projek yang perlu mengendalikan sejumlah besar permintaan serentak dan daya pemprosesan yang tinggi. Workerman menawarkan fleksibiliti mod tak segerak dan segerak, dengan API intuitif yang lebih sesuai untuk kemudahan penggunaan dan projek yang mengendalikan volum serentak yang lebih rendah.

http meminta penyelesaian ralat 415 http meminta penyelesaian ralat 415 Nov 14, 2023 am 10:49 AM

Penyelesaian: 1. Semak Content-Type dalam tajuk permintaan 2. Semak format data dalam badan permintaan 3. Gunakan format pengekodan yang sesuai 5. Semak sokongan sisi pelayan;

Pembangunan pekerja: Cara melaksanakan panggilan video masa nyata berdasarkan protokol UDP Pembangunan pekerja: Cara melaksanakan panggilan video masa nyata berdasarkan protokol UDP Nov 08, 2023 am 08:03 AM

Pembangunan pekerja: panggilan video masa nyata berdasarkan protokol UDP Ringkasan: Artikel ini akan memperkenalkan cara menggunakan rangka kerja Workerman untuk melaksanakan fungsi panggilan video masa nyata berdasarkan protokol UDP. Kami akan mempunyai pemahaman yang mendalam tentang ciri-ciri protokol UDP dan menunjukkan cara membina aplikasi panggilan video masa nyata yang ringkas tetapi lengkap melalui contoh kod. Pengenalan: Dalam komunikasi rangkaian, panggilan video masa nyata adalah fungsi yang sangat penting. Protokol TCP tradisional mungkin mempunyai masalah seperti kelewatan penghantaran apabila melaksanakan panggilan video masa nyata tinggi. Dan UDP

Cara melaksanakan fungsi proksi terbalik dalam dokumen Workerman Cara melaksanakan fungsi proksi terbalik dalam dokumen Workerman Nov 08, 2023 pm 03:46 PM

Cara melaksanakan fungsi proksi terbalik dalam dokumen Workerman memerlukan contoh kod khusus Pengenalan: Workerman ialah rangka kerja komunikasi rangkaian berbilang proses PHP berprestasi tinggi yang menyediakan fungsi yang kaya dan prestasi berkuasa dan digunakan secara meluas dalam komunikasi masa nyata Web dan panjang. sambungan. Antaranya, Workerman juga menyokong fungsi proksi terbalik, yang boleh merealisasikan pengimbangan beban dan caching sumber statik apabila pelayan menyediakan perkhidmatan luaran. Artikel ini akan memperkenalkan cara menggunakan Workerman untuk melaksanakan fungsi proksi terbalik.

Bagaimana untuk melaksanakan penggunaan asas dokumen Workerman Bagaimana untuk melaksanakan penggunaan asas dokumen Workerman Nov 08, 2023 am 11:46 AM

Pengenalan kepada cara melaksanakan penggunaan asas dokumen Workerman: Workerman ialah rangka kerja pembangunan PHP berprestasi tinggi yang boleh membantu pembangun membina aplikasi rangkaian konkurensi tinggi dengan mudah. Artikel ini akan memperkenalkan penggunaan asas Workerman, termasuk pemasangan dan konfigurasi, mencipta perkhidmatan dan port mendengar, mengendalikan permintaan pelanggan, dsb. Dan berikan contoh kod yang sepadan. 1. Pasang dan konfigurasikan Workerman Masukkan arahan berikut pada baris arahan untuk memasang Workerman: c

Bagaimana untuk melaksanakan fungsi pemasa dalam dokumen Workerman Bagaimana untuk melaksanakan fungsi pemasa dalam dokumen Workerman Nov 08, 2023 pm 05:06 PM

Cara melaksanakan fungsi pemasa dalam dokumen Workerman Workerman ialah rangka kerja komunikasi rangkaian tak segerak PHP yang berkuasa yang menyediakan pelbagai fungsi, termasuk fungsi pemasa. Gunakan pemasa untuk melaksanakan kod dalam selang masa yang ditentukan, yang sangat sesuai untuk senario aplikasi seperti tugas yang dijadualkan dan tinjauan pendapat. Seterusnya, saya akan memperkenalkan secara terperinci cara melaksanakan fungsi pemasa dalam Workerman dan memberikan contoh kod khusus. Langkah 1: Pasang Workerman Mula-mula, kita perlu memasang Worker

See all articles