Node.js คือ open source runtime environment เพื่อสร้าง web application บน Server ได้อย่างง่ายๆ node.js นั้นจะ run บน command line เช่น node hello.js เป็นต้น ในบทความนี้จะบอกวิธีการ run เป็น service เพื่อให้ง่ายต่อการจัดการ web application หลายๆ web อันดับแรกให้ update os และติดตั้ง dependency ที่จำเป็นก่อน

sudo apt-get update && sudo apt-get install -y build-essential openssl libssl-dev pkg-config

ทำการติดตั้ง node.js โดยให้ donwload sourcecode จาก LINK นี้ก่อน

wget -c "http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz"

sudo tar -xzvf node-v0.12.0.tar.gz


Continue reading

Socket.io เป็น framework สำหรับการสื่อสารแบบ real time ทำงานได้ทุกอุปกรณ์ ไม่ว่าจะเป็นอุปกรณ์มือถือหรือเครื่องคอมพิวเตอร์ มีจุดเด่นเรื่องความเร็วและความเชื่อถือในการใช้งาน มีผลิตภัณฑ์หลายตัวที่ใช้ได้แก่ Yammer, Zendesk, Trello หรือแม่กระทั่ง GitHub ก็ใช้งาน socket.io เช่นกัน งานที่คุณสามารถใช้ socket.io ได้แก่ real-time analytics, instant messaging, binary streaming, document collaboration เป็นต้น เดี๋ยวเรามาลองตัวอย่างโปรแกรม chat ที่ใช้ socket.io กัน

การใช้งาน socket.io จะต้องมี Node.js และ npm เพื่อใช้ติดตั้งและทำเป็นส่วน server ดังนั้นเราต้องมาติดตั้ง Node.js และ npm กันก่อน ครั้งนี้เราจะใช้ Node Version Manager หรือ nvm เป็นตัวติดตั้ง เริ่มจากติดตั้งเครื่องมือที่จำเป็นก่อนดังนี้

sudo apt-get install -y curl git

ใช้ curl ติดตั้ง nvm

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | sh

จากนั้นสั่งติดตั้ง Node.js ได้เลย เลือกได้ตามเวอร์ชันที่ต้องการ

nvm install 0.11.14


Continue reading

สิ่งที่ต้องเตรียมก่อนจะทำการ deploy node.js บน Heroku

  • node.js app ที่จะนำมาใช้ในการทดลอง deploy
  • ต้องมี Heroku account
  • ติดตั้ง node.js พร้อม npm
  • ติดตั้ง Heroku Toolbelt

สำหรับการติดตั้ง node.js และ npm ให้ดาวน์โหลดได้จาก ที่นี่ ครับ เลือกดาวน์โหลดเวอร์ชันให้ตรงกัน OS นะครับ จากนั้นก็ให้ติดตั้งตามขั้นตอนตามปกติครับ และสำหรับ Heroku Toolbelt ให้ดาน์โหลดจาก ที่นี่ ครับ แล้วก็ติดตั้งตามขั้นตอนปกติเช่นกัน


Continue reading

เนื่องจากติดลมจาก Internet of Things Foundation ของ IBM Bluemix ที่มี BoilerPlate ให้บริการ โดยจับเอา Node.js และ Node-RED ซึ่งเป็นโครงการ OpenSource อยู่แล้วมาให้บริการ ถ้าจะไปใช้ใน Bluemix เลยก็ง่าย สะดวก และรวดเร็วมาก แต่ต้องรู้พื้นฐานของ Node-RED กันก่อน ไม่อย่างนั้นไปใช้บน Bluemix มีหวังได้ งมจนหมดเวลาใช้งานแน่นอน กลับมา Back to Basic กันก่อนครับ Bluemix และ Cloud Service ต่างๆ ปล่อยมันไปก่อน Node-RED เป็นโครงการ OpenSource ช่วยให้คนที่พัฒนา Internet of Things ไม่ต้องเขียน API ฝั่ง server เอง เอาง่ายๆ ไม่ต้องรู้เรื่องเยอะก็ได้ ขอให้ใช้เครื่องมือแบบลางวางและตั้งค่าผ่าน Node-RED ให้ได้ก็พอ ซึ่ง Node-RED จะมีบริการหลังบ้านให้คุณได้ออกแบบ API ว่าจะรับค่ามาอย่างไร คำนวณ แปลงข้อมูล เก็บข้อมูล หรือสื่อสารกับบริการอื่น ได้อย่างไร เรียกได้ว่าสะดวกมากๆ

ขึ้นชื่อว่า Node การใช้งานก็ต้องมี Node.js ก่อน แล้วค่อยติดตั้ง node module เข้าไปเพิ่มแล้วจึงจะเริ่มใช้งานกันได้ สำหรับการติดตั้ง Node.js บน Ubuntu 14.04 LTS ก็ง่ายๆ แค่นี้

sudo apt-get update

sudo apt-get install nodejs npm

จากนั้นก็ ใช้ git สั่ง clone repository ของโครงการ Node-RED มาดังนี้

git clone https://github.com/node-red/node-red.git


Continue reading

Azure เป็นบริการ Cloud Computing ของ Microsoft ปัจจุบันมีการบริการที่หลากหลายมากขึ้น ไม่ว่าจะเป็นเรื่อง Big Data ผ่าน HDInsight, CDN, Scheduler, API Management, Traffic Manager เรียกได้ว่ามีบริการเพิ่มขึ้นกว่าเดิมมาก นอกจากจะมีของเล่นเพิ่มแล้ว Azure ยังสนับสนุน นักพัฒนาที่ไม่ได้ใช้เครื่องมือของ Microsoft มากขึ้นด้วย โดยเฉพาะ Azure Web Site ซึ่งในช่วงแรกบังคับให้ใช้ Visual Studio เพื่อ Deploy App ซึ่งในปัจจุบันไม่จำเป็นอีกต่อไปแล้ว เพราะคุณสามารถ Deploy App ที่พัฒนาจาก .Net, Java, PHP, Python หรือ Node.js ได้จาก Git, Github, Bitbucket หรือแม้กระทั่ง Dropbox เรียกได้ว่าเปิดกว้างกว่าเดิมมาก นอกจากนี้ Azure Website สามารถตั้งค่า Auto Scaling ได้แล้ว อยากรู้ต้องลองดู :)

มาลองสร้าง Azure Web Site กันครับ login เข้าไปที่ Azure Dashboard จากนั้นกดปุ่ม + New ข้างล่าง เลือก Web Site > Quick Create ใส่ชื่อ URL ที่เราต้องการ เลือก Region ที่ต้องการจากนั้นกด Create Web Site ได้เลย

Continue reading