สอบถามเรื่อง Node Js ครับ ทำงานร่วมกับ PHP

เริ่มโดย userhuman, 07 ธันวาคม 2016, 16:25:54

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

userhuman

เคยได้ยินว่า Node Js เร็วอย่างโน้น เร็วอย่างงี้ Facebook ก็ใช้ อยากถามว่า ลักษณะการทำงานมันเหมือน Javascript หรือ Jquery อะไรแนวนั้นหรือปล่าวครับ

แล้ว ถ้าใช้ร่วมกับ PHP นี้ใช้ในด้านไหนหรือครับ ดึงข้อมูลไวขึ้น?  :-X
[direct=https://meframephoto.com]รับอัดรูปออนไลน์ ขยายรูป ทำภาพเก่าให้ใหม่ ใส่กรอบรูป[/direct]

[direct=https://medium.com/@nicksq]อ่านเขียนโปรแกรมยังไงให้เทพ[/direct]

[direct=https://www.youtube.com/channel/UC1ZQ_Sxmrlv4dxIhB3LUwPA]สอนเขียนโปรแกรม และเทคนิคฟรี กด Subscribe & กระดิ่งไว้นะ[/direct]

thanarack

Node JS ทำความเข้าใจก่อนครับ ว่ามันคือ Web Server ครับ ถ้านึกไม่ออก ให้นึกถึง Apache หรือ Nginx ที่เอาใว้ให้คำสั่ง PHP ทำงานได้

ที่นี้ ถามว่าเอา PHP มาใช้กับ NODE ได้ไหม คำตอบคือไม่ได้ครับ เพราะ NODE มันอ่านไม่รู้เรื่อง ที่มันอ่านออกก็คือ Javascript หรือพวก ES5,ES6 เท่านั้นครับ

ที่นี้ NODE เอาไปพัฒนาด้านไหนบ้าง ง่ายๆเลยครับ Front-end นั้นเองหรือจะใช้ด้านอื่นก้ได้ อยากเขียน NODE ให้ศึกษา Javascript ครับและพวก React,Angular นั้นคือ Framework ของ Javascipt เหมือนๆพวก Laravel หรือ Yii ของ PHP นั้นแหละครับ

ที่นี้ อยากใช้ PHP ร่วมกันกับ NODE ส่วนมาก เขาจะเอาไปทำ Web Service คือเขียน Node ให้ไปดึงข้อมูลจาก PHP ผ่าน URL นั้นแหละครับ

Node.JS เร็วกว่า PHP ไหม ? แน่นอนครับ เร็วกว่ามากๆ แต่ไม่ใช่ เพราะ PHP มันช้าแต่เพราะ Web Server ที่มันใช้ อาจจะ apache หรือ nginx นั้นต้องอ่านไฟล์ก่อนและ compile จากที่เคยทดสอบ Node สามารถรับ 1000req/0.4s ส่วน Apache 20req/4s

ปล.การจะใช้ NodeJS Host ที่รองรับต้องเป็น VPS หรือ Cloud ยังไม่เห็น Shared Host เจ้าไหนติดตั้งให้ใช้ครับ

ส่วนรายละเอียดลึกๆนั้น ท่านต้องหาข้อมูลจากบอร์ดฝรั่งครับ
รับงานเขียนโปรแกรมทั่วราชอาณาจักรติดต่อว่าจ้างได้ที่
Line: thanarackk

picharnan

ถ้าอยากใช้งาน Nodejs ร่วมกับ PHP ก็อาจจะทำได้โดย

- การให้ Nodejs เรียก PHP แบบ CLI
- หรือให้ PHP เรียก Nodejs ผ่าน exec

แต่ถ้าหากเริ่มพัฒนาระบบตั้งแต่ต้น ผมยังมองไม่เห็นความจำเป็นที่จะต้องใช้ Nodejs และ PHP ร่วมกัน
เพราะหากเราขียน Nodejs ก็สามารถพัฒนาได้ทุกอย่างที่ PHP ทำได้อยู่แล้ว เว้นซะจากต้องการ Integrate ระบบ

sbaydee

 :P Node มันไม่ยากหรอกครับ ตัวแสดงผลต่างหากที่น่าปวดกะบาลว่าจะใช้อะไรดี
โผล่มาให้ใช้ไม่หยุด

karanors038

การใช้ NodeJS ไม่ยากเลยครับ เรียกใช้ง่ายมาก สมมุติเราอยากได้ api ใดสักตัว ก็เขีบนตามมี่เราต้องการ เวลาเรียกใช้ ผมติดตั้ง express อีกตัวเพื่อรันเป็น การใช้ web service ของ nodejs โดยเฉพาะ ติดตั้งไม่ยาก เรียกใช้งานก็ง่ายและเร็วครับ ขอบคุณครับ

userhuman

อ้างถึงจาก: picharnan ใน 07 ธันวาคม 2016, 17:24:48
ถ้าอยากใช้งาน Nodejs ร่วมกับ PHP ก็อาจจะทำได้โดย

- การให้ Nodejs เรียก PHP แบบ CLI
- หรือให้ PHP เรียก Nodejs ผ่าน exec

แต่ถ้าหากเริ่มพัฒนาระบบตั้งแต่ต้น ผมยังมองไม่เห็นความจำเป็นที่จะต้องใช้ Nodejs และ PHP ร่วมกัน
เพราะหากเราขียน Nodejs ก็สามารถพัฒนาได้ทุกอย่างที่ PHP ทำได้อยู่แล้ว เว้นซะจากต้องการ Integrate ระบบ

เป็นแบบนั้นเลยครับ ส่วนตัวระบบเคยเขียน Laravel อยู่แต่จะมาเปลี่ยนเป็น Node js ทั้งหมดก็ใช่ที่ เลยอยากจะ เพิ่ม Performance ให้โหลดไว ทำงานไวขึ้นแค่นั้นครับ จุดประสงค์
[direct=https://meframephoto.com]รับอัดรูปออนไลน์ ขยายรูป ทำภาพเก่าให้ใหม่ ใส่กรอบรูป[/direct]

[direct=https://medium.com/@nicksq]อ่านเขียนโปรแกรมยังไงให้เทพ[/direct]

[direct=https://www.youtube.com/channel/UC1ZQ_Sxmrlv4dxIhB3LUwPA]สอนเขียนโปรแกรม และเทคนิคฟรี กด Subscribe & กระดิ่งไว้นะ[/direct]

9visarut

PHP ทำ REST API
Node ลองเล่นพวก React.js ครับ เร็วดีครับ  ถ้าเขียนดี

กะจะกลายเป็น 1 backend + 1 frontend ตามมาตรฐานงานทั่วไป

:wanwan017:


skscale

[direct=https://www.skscale.com]บริษัท เอส.เค. เครื่องชั่ง จำกัด[/direct]
[direct=https://www.meengineer.co.th]บริษัท เมคคานิคอล เอ็นจิเนียริ่ง จำกัด[/direct]
[direct=https://www.meengineer.co.th/truck-scales.php]เครื่องชั่งรถบรรทุก Truck Scales[/direct]
[direct=https://www.skscale.com/truck-scales.php]เครื่องชั่งรถบรรทุก Truck Scales[/direct]

LoveRomyui88io

ห้ามใส่ลิงค์พนันครับ ทำอีกลบแอคเค้านะครับ

skp123

#10
NodeJS ก็คือ Javascript ที่ทำงานฝั่ง server ถ้าจะให้จัดประเภทตามบทบาทของมันก็คงอยู่ในกลุ่มเดียวกับ PHP แต่ NodeJS สามารถทำตัวเองเป็น webserver ได้อีกด้วย เหตุที่ว่าทำไมมันถึงเร็วนั้นนอกจากเรื่อง Performance ของตัวภาษาแล้ว เทรนด์การพัฒนาใหม่ๆ(จริงๆก็ไม่ใหม่แล้ว)จะใช้ฝั่งเซิฟเวอร์เป็นแค่ API เท่านั้น โดยเรื่องการเรนเดอร์หน้าเว็บต่างๆ จะเป็นหน้าที่ของ client ก็จะมีเฟรมเวิคฝั่ง client ให้เลือกใช้ angular, react(ตัวนี้ใช้ฝั่ง server ด้วยก็ได้ แต่ต้องเป็น NodeJS) และอีกหลายตัวที่ไม่ได้เป็นที่นิยม
กล่าวคือถ้าเราใช้ PHP+Angular หรือ PHP+React มันก็เร็วกว่าที่จะให้ PHP พ่นทั้งหน้า html ออกมาทั้งหน้า หรือจะให้ NodeJS พ่น html ออกมาทังหน้ามันก็คงไม่เร็วเท่าไหร่(แต่น่าจะเร็วกว่า PHP) ทั้งนี้ทั้งนั้นอันไหนดีกว่ากันก็ขึ้นอยู่กับวัตถุประสงค์และประเภทของเว็บที่จะพัฒนาด้วย

ปล. ในตอนนี้มีแต่ NodeJS เท่านั้นที่ทำ isomorphic ได้

Laravel หรือ Yii ของ PHP เปรียบได้กับ Express ของ NodeJS

อ่ะเข้าเรื่อง ถ้าใช้ PHP อยู่แล้วอยากลอง NodeJS
ก็สามารถเซ็ต Reverse Proxy ของ webserver(apache หรือ nginx) ที่มีอยู่แล้วโดยกำหนดให้ path ไหน redirect ไปยัง node ได้
ตัวอย้่างถ้าเว็บปกติเป็น www.phpsite.com เราสามารถตั้งให้ www.phpsite.com/nodejs วิ่งไปหา nodejs ได้ โดยที่ถ้าไม่ใช่ path นี้ตัว webserver ก็ยังทำงานปกติด้วย PHP ลองไปหาอ่านเอานะ Reverse Proxy

Mookgmth

ถ้าจำไม่ผิด มีคนเขียนเป็นแพคเกจให้ใช้งานอยู่นะคะ  npm install php-express  .  ลองค้นหาแพคเกจใน npmjs.com ดูอีกทีก่อนนะคะ เพื่อความชัวร์  อันนี้คือ เราสามารถใช้ express เป็นเซริ์ฟเวอร์  แล้วใช้ php เป็น template engine  ค่ะ  ถ้าสาย php น่าจะใช้งานง่ายอยู่ค่ะ

Mookgmth

ถ้าจำไม่ผิด มีคนเขียนเป็นแพคเกจให้ใช้งานอยู่นะคะ  npm install php-express  .  ลองค้นหาแพคเกจใน npmjs.com ดูอีกทีก่อนนะคะ เพื่อความชัวร์  อันนี้คือ เราสามารถใช้ express เป็นเซริ์ฟเวอร์  แล้วใช้ php เป็น template engine  ค่ะ  ถ้าสาย php น่าจะใช้งานง่ายอยู่ค่ะ

vii

NodeJS สามารถทำงานแบบ multi thread ได้ ทำให้ทำงานบางอย่างได้เร็วมากโดยไม่ต้องรอคิวคำสั่งก่อนหน้าให้ทำงานเสร็จจึงค่อยทำคำสั่งต่อไป
ตัวอย่างเช่นการเรียก URL สำหรับตรวจสอบ เมื่อมีจำนวน URL หลายๆอันหรือหลักสิบ, หลักร้อย มันสามารถเรียกทำงานพรืดเดียวพร้อมๆกันได้หลายๆอันแล้วบันทึกผลได้เลย.

สำหรับ PHP นั้นมีผู้ตอบเหมือนกันว่ามันสามารถทำงาน multi thread ได้ แต่จากที่ลองอ่านๆดู ดูเหมือนจะไม่สามารถทำได้โดยตัวมันเองเพียวๆโดยไม่ต้องมี class, package, function อะไรเสริม โดยเฉพาะกับ web server (ไม่ใช่ CLI) ยิ่งยาก.
นี่น่าจะเป็นเหตุให้ Node.JS เร็วและง่ายกว่า PHP