Hyperf เป็นเฟรมเวิร์ก PHP CLI ที่มีประสิทธิภาพและยืดหยุ่นสูง ขับเคลื่อนโดยเซิร์ฟเวอร์ Coroutine ที่ล้ำสมัยและส่วนประกอบที่ผ่านการทดสอบการต่อสู้จำนวนมาก นอกเหนือจากการเอาชนะเฟรมเวิร์ก PHP-FPM อย่างเด็ดขาดในการวัดประสิทธิภาพแล้ว Hyperf ยังมีเอกลักษณ์เฉพาะตัวในการมุ่งเน้นที่ความยืดหยุ่นและองค์ประกอบ Hyperf มาพร้อมกับหัวฉีดพึ่งพา AOP (การเขียนโปรแกรมเชิงมุมมอง) เพื่อให้แน่ใจว่าส่วนประกอบและคลาสต่างๆ สามารถเสียบปลั๊กได้และสามารถตั้งโปรแกรมเมตาได้ ส่วนประกอบหลักทั้งหมดของ Hyperf เป็นไปตามมาตรฐาน PSR อย่างเคร่งครัดและสามารถนำไปใช้ในกรอบงานอื่นๆ ได้
สถาปัตยกรรมของ Hyperf สร้างขึ้นโดยใช้การผสมผสานระหว่าง Coroutines
, Dependency injection
, Events
, Annotations
และ AOP
นอกเหนือจากการให้บริการ MySQL
, Redis
และไคลเอนต์ coroutine ทั่วไปอื่นๆ แล้ว Hyperf
ยังให้บริการ WebSocket server / client
เวอร์ชันที่เข้ากันได้กับ coroutine , JSON RPC server / client
, gRPC server / client
, Zipkin/Jaeger (OpenTracing) client
, Guzzle HTTP client
, Elasticsearch client
, Consul client
, ETCD client
, AMQP component
, Apollo configuration center
, Aliyun ACM
, ETCD configuration center
, Token bucket algorithm-based limiter
, Universal connection pool
, Circuit breaker
, Swagger
, Snowflake
, Simply Redis MQ
, RabbitMQ
, NSQ
, Nats
, Seconds level crontab
, Custom Processes
ฯลฯ ดังนั้นนักพัฒนาจึงสามารถหลีกเลี่ยงการใช้ไลบรารีเหล่านี้ในเวอร์ชันที่เข้ากันได้กับ coroutine ได้ทั้งหมด
มั่นใจได้ว่า Hyperf ยังคงเป็นเฟรมเวิร์ก PHP Hyperf มีแพ็คเกจทั้งหมดที่คุณคาดหวัง: Middleware
, Event Manager
, Coroutine-optimized Eloquent ORM
(และ Model Cache!), Translation
, Validation
, View engine (Blade/Smarty/Twig/Plates/ThinkTemplate)
และอื่นๆ
แม้ว่าจะมีเฟรมเวิร์ก PHP ใหม่มากมาย แต่เรายังคงไม่พบเฟรมเวิร์กที่ตรงกับการออกแบบที่หรูหราพร้อมประสิทธิภาพสูงเป็นพิเศษ และเรายังไม่พบเฟรมเวิร์กที่ปูทางสำหรับไมโครเซอร์วิส PHP ด้วยวิสัยทัศน์นี้ เราจะลงทุนต่อไปในอนาคตของกรอบการทำงานนี้ และคุณสามารถเข้าร่วมกับเราเพื่อสนับสนุนการพัฒนาโอเพ่นซอร์สของ Hyperf
Hyperspeed + Flexibility = Hyperf
สมการที่ซ่อนอยู่ในชื่อของเราแสดงให้เห็นถึงความทะเยอทะยานในการก่อตั้งของ Hyperf
ไฮเปอร์สปีด: ด้วยการใช้ประโยชน์จาก Swoole
และ Swow
coroutines ทำให้ Hyperf สามารถรองรับการรับส่งข้อมูลจำนวนมหาศาลได้ ทีมงาน Hyperf ได้ทำการเพิ่มประสิทธิภาพหลายอย่างให้กับเฟรมเวิร์กเพื่อขจัดปัญหาคอขวดระหว่างผู้ใช้ปลายทางและเอ็นจิ้นอันโดดเด่นของเรา
ความยืดหยุ่น: เราเชื่อว่าส่วนประกอบ Dependency Injection ของเราดีที่สุดในระดับเดียวกัน ด้วยความช่วยเหลือของ Hyperf DI
ส่วนประกอบและคลาสทั้งหมดสามารถเสียบปลั๊กและตั้งโปรแกรมเมตาได้ ในทางกลับกัน ส่วนประกอบทั้งหมดของ Hyperf มีไว้เพื่อแบ่งปันกับคนทั้งโลก ความมุ่งมั่นของเราต่อมาตรฐาน PSR หมายความว่าคุณสามารถใช้ส่วนประกอบของ Hyperf ในเฟรมเวิร์กที่เข้ากันได้
ด้วยคุณลักษณะเหล่านี้ Hyperf ได้ค้นพบศักยภาพที่ยังไม่ได้ใช้ในหลายๆ ด้าน: การใช้งานเว็บเซิร์ฟเวอร์ เซิร์ฟเวอร์เกตเวย์ ซอฟต์แวร์มิดเดิลแวร์แบบกระจาย สถาปัตยกรรมไมโครเซอร์วิส เซิร์ฟเวอร์เกม และอินเทอร์เน็ตออฟธิงส์ (IoT)
Linux, OS X หรือ Cygwin, WSL, Windows
PHP 8.1+
Swoole 5.0+ หรือ Swaw 1.4+
นอกจากเอกสารหลายภาษาที่ได้รับการดูแลเป็นอย่างดีของเราแล้ว ยังมีการทดสอบหน่วยจำนวนมากสำหรับแต่ละส่วนประกอบเพื่อให้มั่นใจถึงความถูกต้องเชิงตรรกะ ก่อนที่ Hyperf
จะเปิดตัวสู่สาธารณะ (20-06-2019) บริษัทอินเทอร์เน็ตขนาดกลางและขนาดใหญ่บางแห่งได้นำไปใช้เป็นการส่วนตัวสำหรับบริการต่างๆ มากมาย ซึ่งทำงานโดยไม่มีเหตุการณ์ใดๆ มานานหลายปีในสภาพแวดล้อมการผลิตที่รุนแรง
เว็บไซต์อย่างเป็นทางการ https://hyperf.io
เอกสาร https://hyperf.wiki
หากคุณพบช่องโหว่ด้านความปลอดภัยภายใน Hyperf โปรดส่งอีเมลไปที่ทีมงาน Hyperf ผ่านทาง [email protected] ช่องโหว่ด้านความปลอดภัยทั้งหมดจะได้รับการแก้ไขทันที
โครงการนี้เกิดขึ้นได้ต้องขอบคุณทุกคนที่มีส่วนร่วม [มีส่วนช่วย].
ร่วมเป็นผู้บริจาคทางการเงินและช่วยเรารักษาชุมชนของเรา [มีส่วนช่วย]
สนับสนุนโครงการนี้กับองค์กรหรือบริษัทของคุณ โลโก้ของคุณจะแสดงที่นี่พร้อมลิงก์ไปยังเว็บไซต์ของคุณ [มีส่วนช่วย]
คำสั่ง: wrk -c 1024 -t 8 http://127.0.0.1:9501/
วิ่งทดสอบ 10 วินาที @ http://127.0.0.1:9501/ 8 เธรดและการเชื่อมต่อ 1,024 รายการ สถิติเธรดเฉลี่ย Stdev Max +/- Stdevs เวลาแฝง 10.08ms 6.82ms 56.66ms 70.19% ความต้องการ/วินาที 13.17k 5.94k 33.06k 84.12% คำขอ 1,049,478 รายการใน 10.10 วินาที, คำขออ่าน 190.16MB/วินาที: 103921.49 โอน/วินาที: 18.83MB
Nano เป็นการกระจาย Hyperf ขั้นต่ำที่ไม่มีการกำหนดค่า ไม่มีโครงร่าง ซึ่งช่วยให้คุณสามารถสร้างแอปพลิเคชัน Hyperf ได้อย่างรวดเร็วด้วยไฟล์ PHP เพียงไฟล์เดียว
GoTask เป็นไลบรารีที่สร้างกระบวนการ go ในฐานะรถเทียมข้างรถจักรยานยนต์ Swoole และสร้าง IPC แบบสองทิศทางเพื่อถ่ายงานหนักไปยัง Go คิดว่ามันเป็น Swole Taskworker ใน Go
Jet เป็นไคลเอนต์ RPC โมเดลการรวม ซึ่งมีโปรโตคอล JSONRPC ในตัว ซึ่งพร้อมใช้งานในสภาพแวดล้อม PHP ทั้งหมด รวมถึงสภาพแวดล้อม PHP-FPM และ Swoole/Hyperf
Box มุ่งมั่นที่จะช่วยปรับปรุงประสบการณ์การเขียนโปรแกรมของแอปพลิเคชัน Hyperf การจัดการสภาพแวดล้อม PHP และการพึ่งพาที่เกี่ยวข้อง มอบความสามารถในการจัดแพ็คเกจแอปพลิเคชัน Hyperf เป็นโปรแกรมไบนารี และยังให้บริการพร็อกซีย้อนกลับสำหรับการจัดการและปรับใช้แอปพลิเคชัน Hyperf
กรอบงาน Hyperf เป็นซอฟต์แวร์โอเพ่นซอร์สที่ได้รับอนุญาตภายใต้ใบอนุญาต MIT