Register
Member Login
Forgot Password ??
PHP
,
ASP
,
ASP.NET, VB.NET, C#, Java
,
jQuery , Android , iOS , Windows Phone
Registered :
109,037
HOME
>
PHP
>
PHP WebSockets
>
WebSocket ตอนที่ 1 : WebSocket คืออะไร การรับส่งข้อมูลแบบ Real Time ด้วย PHP
WebSocket ตอนที่ 1 : WebSocket คืออะไร การรับส่งข้อมูลแบบ Real Time ด้วย PHP
WebSocket ตอนที่ 1 : WebSocket คืออะไร การรับส่งข้อมูลแบบ Real Time ด้วย PHP
ในหัวข้อนี้เราจะมาเรียนรู้กับ
WebSocket
ว่ามันคืออะไร ทำหน้าที่ และ มีประโยชน์อย่างไร?? สำหรับ
WebSockets
ไม่ใช่ของใหม่ แต่มันมีมาหลายปี แต่ไม่อาจจะไม่ค่อยได้รับความนิยมเท่าไหร่ ส่วนหนึ่งเพราะ Web ที่เราพัฒนาทั่วๆ ไป ไม่จำเป็นจะต้องใช้ WebSocket และการใช้งานจริงบน Web Hosting อาจจะใช้งานจริงไม่ได้ ฉะนั้นจะมีเฉพาะบางเว็บเท่านั้นที่จำเป็นจะต้องใช้งาน เช่น เว็บประเภท
Chat , Vote , Bid
เป็นต้น เพราะเว็บหล่านี้ต้องการข้อมูลที่รวดเร็ว Real time ในทันที และการรับ-ส่งข้อมูลจาก Client ไปยัง
Server
และจาก
Server
ไปยัง Client ต่างๆ นั้นมีประสิทธิภาพสูงสุด
รูปแบบการทำงานของ PHP WebSocket
หน้าที่ของ
WebSokets
คือ จะรัน Service ที่ทำหน้าที่เป็น
Protocol
ที่ฝั่ง
Server
เมื่อมี Client ทำการเชื่อมต่อเข้ามา เจ้า Services ตัวนี้ก็จะติดตาม Client ไปอย่างใกล้ชิดเพื่อตรวจสอบว่า Client ยังทำการเชื่อมต่อและพร้อมที่จะ รับ-ส่ง ข้อมูลให้ตลอดเวลา โดยที่ไม่จำเป็นว่าฝั่ง Client จะมีการ
Request
มาหรือไม่ ฉะนั้นเมื่อฝั่ง Server มีข้อมูลมาใหม่ๆ ตัว Services นี้ก็จะทำหน้าที่ Push ข้อมูลเพื่อส่งให้กับทุกๆ Client ที่เชื่อมต่ออยู่ในขณะนั้น ซึ่งมันเองสามารถที่จะตรวจสอบได้ว่า มี Client อะไรบ้างที่กำลังทำการเชื่อมต่ออยู่
ซึ่งแตกต่างกับการ
Request
จาก Client โดยทั่วๆ ไป ที่เราจะต้องใช้
Client
ทำการ Request ส่ง Post หรือ Get ไปยัง Server และ Server ก็จะทำการ
Response
ค่ากลับมา และ Server ก็จะไม่มีทางรู้ว่า Client ได้ทำการปิดการเชื่อมต่อไปแล้วหรือยัง ซึ่งจะรู้ได้แค่อย่างเดียวว่า Session ได้ Timeout ไปแล้ว
รูปแบบการเชื่อมต่อแบบปกติทั่วๆ ไป ที่มี Request และ Response กลับมา
จากรูปแรกจะเห็นว่าสีที่แตกต่างกัน หมายถึง
Client
ทำการเชื่อมต่อแต่ล่ะครั้งก็จะได้
Response
กลับมา 1 ครั้งเท่านั้น
รูปแบบการทำงานของ WebSockets
การทำงานของ
WebSockets
จะแตกต่างกันที่ เมื่อมี
Client
ใดๆ ทำการเชื่อมต่อไปยัง Server ในฝั่งของ
Server
จะมี Services ที่ทำงานอยู่ตลอดเวลา ซึ่งจะส่ง Push หรือ Response กลับไปยังทุก ๆ
Client
ที่เชื่อมต่ออยู่ในขณะนั้น ซึ่ง Client ก็จะได้รับค่าพร้อมกันหมด
รูปแบบการทำงานของ WebSockets
จากภาพนี้จะเห็นว่าทุก ๆ
Client
จะทำการเชื่อมต่อกับ
Server ด้วย Process
เล็กๆ ที่ทำหน้าที่ตรวจสอบสถานะการเชื่อมต่อ แต่เมื่อมีข้อมูลใหม่ๆ ที่ฝั่ง Server ก็จะทำการ Push ค่าเพื่อส่งไปยังทุก ๆ Client อย่างรวดเร็ว
ในการเขียน
PHP WebSockets
นั้นจะแตกต่างกันการเขียนเว็บทั่วๆ ไปคือ ในฝั่งของ Server จะต้องทำการ
Run Service
ที่ทำหน้าที่เป็น
Protocol TCP connectio
n ที่ระบุ Port ในการเชื่อมต่อกับ Client ฉะนั้นในข้อกำหนดนี้จะต้องมีการรัน Services ทิ้งไว้ ซึ่งจะเป็นข้อกำกัดในการใช้งานเมื่อนำไปใช้กับ Shared Hosting ทั่วๆ ไป
และการใช้งานจะต้องดาวน์โหลดหรือติดตั้ง
PHP Library
ซึ่งในปปัจจุบันมีรองรับให้ตัวอาทิเช่น
http://socketo.me/
https://github.com/ghedipunk/PHP-Websockets
https://github.com/nekudo/php-websocket
ข้อดีของการใช้ Library คือ มี
Class และ function
ต่างๆ ที่ได้ออกแบบและเขียนมาเป็นอย่างดี เราสามารถเรียกใช้งานได้ง่ายๆ โดยไม่ต้องมานั่งจัดการกับ
Server Script และ Client Script
และแน่นอนว่า Library ต่างๆ เหล่านี้มีการเปิดให้ดาวน์โหลดนำไปใช้งาน ซึ่งผ่านการพัฒนาหลายเวอร์ชั่น
Share
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน
Source Code 2.0
ของทีมงานไทยครีเอท
ลองใช้ค้นหาข้อมูล
By :
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ)
Score Rating :
Create/Update Date :
2017-01-26 13:23:43 / 2017-03-25 02:01:34
Download :
No files
Sponsored Links / Related
WebSocket ตอนที่ 2 : การติดตั้ง PHP Library จาก Composer เพื่อเขียน WebSockets
Rating :
WebSocket ตอนที่ 3 : การสร้าง Server ทำหน้าที่ รับ-ส่ง ข้อมูล Real Time ด้วย PHP
Rating :
WebSocket ตอนที่ 4 : Client เชื่อมต่อ Servcies ของ WebSocket การรับ-ส่งข้อมูล Real Time ด้วย PHP
Rating :
WebSocket ตอนที่ 5 : ตัวอย่างการ รับ-ส่ง ข้อมูลแบบ เจาะจง Client หรือ User ด้วย PHP
Rating :
WebSocket ตอนที่ 6 : การ รับ-ส่ง ข้อมูล Real Time และการจัดเก็บลงใน Database ด้วย PHP
Rating :
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว
Hit Link
นำเข้าสินค้าจากจีน
Taobao
เฟอร์นิเจอร์
ของพรีเมี่ยม
ร่ม
ปากกา
power bank
แฟลชไดร์ฟ
กระบอกน้ำ
แลกเปลี่ยน Exchange Link
ลองค้นหาสิ่งที่ต้องการ
Load balance :
Server 02
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[
Conditions Privacy Statement
]
ติดต่อโฆษณา
081-987-6107
อัตราราคา
คลิกที่นี่
Inline