คำแนะนำในการติดตั้ง

Workerman ซึ่งเป็นจริง ๆ แล้วเป็นแค่ชุดโค้ด PHP หากคุณมี PHP environment ที่ถูกต้องแล้ว คุณสามารถดาวน์โหลดโค้ดต้นฉบับของ Workerman หรือตัวอย่างไปทำงานได้ทันที

การติดตั้งผ่าน Composer:

composer require workerman/workerman

ข้อควรระวัง
บางกากเครื่องมีการติดตั้ง composer proxy ที่ไม่ครบ คุณสามารถใช้คำสั่งต่อไปนี้ composer config -g --unset repos.packagist เพื่อลบ proxy

สำหรับผู้ใช้ Windows (ต้องอ่าน)

ตั้งแต่ workerman เวอร์ชัน 3.5.3 เป็นต้นไป workerman สามารถรองรับทั้งระบบปฏิบัติการ Windows และ Linux ด้วย ผู้ใช้ Windows จำเป็นต้องทำการตั้งค่าตัวแปรสภาพแวดล้อมของ PHP

===ข้อมูลดังต่อไปนี้เฉพาะสำหรับระบบปฏิบัติการ Linux เท่านั้น ผู้ใช้ Windows โปรดละเว้น===

ตรวจสอบสภาพแวดล้อมระบบปฏิบัติการ Linux

สำหรับระบบปฏิบัติการ Linux คุณสามารถใช้สคริปต์นี้เพื่อทดสอบว่าสภาพแวดล้อม PHP บนเครื่องของคุณพร้อมที่จะรัน Workerman หรือไม่
curl -Ss https://www.workerman.net/check | php

หากสคริปต์ด้านบนแสดงข้อความ "ok" ทั้งหมด นั่นหมายความว่า Workerman สามารถรันได้โดยตรง คุณสามารถดาวน์โหลดตัวอย่างจากเว็บไซต์อย่างเป็นทางการ เพื่อทดสอบใช้งาน

หากมีข้อผิดพลาดสามารถอ้างอิงเอกสารด้านล่างเพื่อทำการติดตังเพิ่มเติม

(หมายเหตุ: สคริปต์ตรวจสอบไม่ได้ทำการตรวจสอบ event extension ถ้าคุณมีการเชื่อมต่อพร้อมโหมดทำงานมากกว่า 1024 ควรติดตัง event extension และแก้ไข kernel บนระบบปฏิบัติการ Linux สามารถอ้างอิงการติดตั้งเพิ่มได้ทางโดยละข้อสั่งด้านล่าง)

ติดตั้ง extension ที่ขาดหายไปใน PHP environment ที่มีอยู่แล้ว

ติดตัง extension pcntl และ posix:

ระบบ centos
หาก PHP ถูกติดตั้งผ่าน yum คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง extension pcntl และ posix

yum install php-process

หากการติดตั้งไม่สำเร็จ หรือ PHP ไม่ได้ถูกติดตั้งผ่าน yum กรุณาอ้างอิงที่manual appendices- installation extension เทเฉพาะเมทอทอดการติดตั้งที่สามเพื่อการสำรอง

Debian / Ubuntu / MacOS
กรุณาอ้างอิงที่manual appendices- installation extension ส่วนที่สามเพื่อการติดตั้งด้วยโค้ดชุดที่ถูกคอมไพล์ที่สุด

ติดตั้ง event extension:

เพื่อให้สามารถรองรับจำนวนการเชื่อมต่อที่มากขึ้น คุณจำเป็นจะต้อง ติดตั้ง event extension และปรับแก้ kernel บนระบบปฏิบัติการ Linux ด้านล่างเป็นช่องทางการติดตั้ง

ระบบ centos

  1. ติดตั้ง libevent-devel ที่ extension event ต้องการ

    yum install libevent-devel -y
    # หากไม่สามารถติดตั้ง กรุณาลองใช้คำสั่งด้านล่าง
    # yum install libevent2-devel -y
  2. ติดตั้ง extension event
    (extension event จำเป็นต้องใช้ PHP>=5.4)

    pecl install event

    โปรดระวังการใส่ข้อความ:Include libevent OpenSSL support [yes] : เมื่อได้รับคำถาม ให้ป้อน no และกด Enter เพื่อดำเนินการต่อ ต่อไปเพื่อดำเนินการติดตั้ง

  3. รันคำสั่ง php --ini เพื่อค้นหาและเปิดไฟล์ php.ini และเพิ่มคอนฟิกเรเช็นชั่นต่อไปนี้ไว้ที่บรรทัดสุดท้าย

    extension=event.so

ระบบ Debian / Ubuntu

  1. ติดตั้ง libevent-dev ที่ extension event ต้องการ

    apt-get install libevent-dev -y
    # หากไม่สามารถสติดตั้ง กรุณาลองใช้คำสั่งด้านล่าง
    # apt-get install libevent2-dev -y
  2. ติดตั้ง extension event

    pecl install event

    โปรดระวังการใส่ข้อความ:Include libevent OpenSSL support [yes] : เมื่อได้รับคำถาม ให้ป้อน no และกด Enter เพื่อดำเนินการต่อ ต่อไปเพื่อดำเนินการติดตั้ง

  3. รันคำสั่ง php --ini เพื่อค้นหาและเปิดไฟล์ php.ini และเพิ่มคอนฟิกเรเช็นชั่นต่อไปนี้ไว้ที่บรรทัดสุดท้าย

    extension=event.so

แนะนำการติดตั้งบนระบบหลักของ Mac OS
ปกติแล้ว Mac OS จะถูกใช้เป็นเครื่องพัฒนา สามารถไม่ต้องติดตั้ง extension event ได้

การติดตั้งระบบใหม่ (การติดตั้ง PHP ทั้งหมด+ extension)

วิธีการติดตั้งบนระบบ centos

  1. ดำเนินการติดตั้งผ่าน command line (ขั้นตอนนี้รวมถึงการติดตั้งโปรแกรมหลักของ php-cli และเฉพาะ pcntl, posix, libevent library และ git)

    yum install php-cli php-process git gcc php-devel php-pear libevent-devel -y
  2. ติดตั้ง extension event
    (หมายเหตุ: extension event จำเป็นต้องใช้ PHP>=5.4)

    pecl install event

    โปรดระวังการใส่ข้อความ:Include libevent OpenSSL support [yes] : เมื่อได้รับคำถาม ให้ป้อน no และกด Enter เพื่อดำเนินการต่อ ต่อไปเพื่อดำเนินการติดตั้ง

  3. รันคำสั่ง php --ini เพื่อค้นหาและเปิดไฟล์ php.ini และเพิ่มคอนฟิกเรเช็นชั่นต่อไปนี้ไว้ที่บรรทัดสุดท้าย

    extension=event.so
  4. ดำเนินการ clone Workerman main program ผ่าน GitHub

    git clone https://github.com/walkor/Workerman
  5. สามารถอ้างอิงแนวทางGetting Started- Simple Development Examples หรือดาวน์โหลดระบบตัวอย่างที่ถูกแพ็คมาจากเว็บไซต์อย่างเป็นทางการ และทำการรันได้

    คู่มือการติดตั้งบนระบบ debian/ubuntu

  6. ให้รันคำสั่งต่อไปนี้ใน Command Line (ขั้นตอนนี้รวมถึงการติดตั้งโปรแกรมหลักของ PHP-cli, ไลบรารี libevent และ git)

    apt-get install php-cli git gcc php-pear php-dev libevent-dev -y
  7. ติดตั้ง extension event โดยรันคำสั่งนี้ใน Command Line
    (โปรดทราบ: extension event ต้องการ PHP>=5.4)

    pecl install event

    หลังจากบอกให้Include libevent OpenSSL support [yes] : ให้พิมพ์ no และกด Enter, ไม่ต้องกระโดดไปทางอื่น

  8. ให้รันคำสั่ง php --ini เพื่อค้นหาและเปิดไฟล์ php.ini และเพิ่มค่าต่อไปนี้ในบรรทัดสุดท้าย

    extension=event.so
  9. รันคำสั่งต่อไปนี้ใน Command Line (ขั้นตอนนี้เป็นการดาวน์โหลดโปรแกรมหลักของ Workerman จาก github)

    git clone https://github.com/walkor/Workerman
  10. อ่าน หัวข้อเริ่มต้น - ตัวอย่างการพัฒนาเบื้องต้น เพื่อเขียนไฟล์ทางเข้าและรัน
    หรือดาวน์โหลดตัวอย่างพร้อมใช้จาก เว็บไซต์อย่างเป็นทางการ

คู่มือการติดตั้งบนระบบ mac os

วิธีที่ 1: mac os มี PHP Cli มาพร้อมในระบบ แต่อาจขาด extension pcntl

  1. ดูประกาศ เพิ่มเติม-การติดตั้ง extension ในส่วนการติดตั้ง pcntl จากรหัสผลิตภัณฑ์

  2. ดูประกาศ เพิ่มเติม-การติดตั้ง extension ในส่วนการติดตั้ง event โดยใช้ phpize (คำสั่งนี้สามารถข้ามได้ถ้าเป็นเครื่องพัฒนา)

  3. ดาวน์โหลดโปรแกรมหลักของ Workerman จาก https://www.workerman.net/download/workermanzip หรือจาก เว็บไซต์อย่างเป็นทางการ

วิธีที่ 2: ใช้คำสั่ง brew เพื่อติดตั้ง php และ extension ที่เกี่ยวข้อง

  1. ให้รันคำสั่งต่อไปนี้ใน Command Line เพื่อติดตั้งเครื่องมือ brew (ถ้าได้ติดตั้ง brew ไว้แล้วสามารถข้ามขั้นตอนนี้ได้)

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  2. ให้รันคำสั่งต่อไปนี้ใน Command Line เพื่อติดตั้ง php

    brew install php
  3. ให้รันคำสั่งต่อไปนี้ใน Command Line เพื่อติดตั้ง event extension

    brew install php-event
  4. ดาวน์โหลดตัวอย่างพร้อมใช้จาก เว็บไซต์อย่างเป็นทางการ

คำอธิบายเกี่ยวกับ Event Extension

Extension Event ไม่จำเป็นต้องใช้ ถ้าธุรกิจต้องการรองรับการเชื่อมต่อพร้อมกันมากกว่า 1000 การติดต่อ การแนะนำคือการติดตั้ง Event เพื่อรองรับการเชื่อมต่อพร้อมกันมากมาย หากธุรกิจต้องการรองรับการเชื่อมต่อที่น้อยเช่น 1000 การติดต่อขึ้นไป อาจจะไม่จำเป็นต้องติดตั้ง

ปัญหาที่พบบ่อย

  1. ถ้าพบข้อผิดพลาดดังต่อไปนี้ checking for include/event2/event.h... not found โปรดลองลบไลบรารี libevent-dev(el) และติดตั้ง libevent2-dev(el) อีกครั้ง
    สำหรับระบบ centos: yum remove libevent-devel && yum install libevent2-devel
    สำหรับระบบ debian/ubuntu: apt-get remove libevent-dev && apt-get install libevent2-dev

  2. ถ้าพบข้อผิดพลาดดังต่อไปนี้NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '.../event.so' - ..../event.so: undefined symbol: php_sockets_le_socket in Unknown on line 0
    โปรดเปลี่ยนลำดับการโหลดของ event.so และ socket.so นั่นคือใน php.ini ให้ตั้งค่า extension=socket.so ก่อน extension=event.so เพื่อให้ socket extension โหลดก่อน