ວິທີການຂຽນ App Node.js ທຳ ອິດຂອງທ່ານໃນ Linux


ແນວໂນ້ມການພັດທະນາເວັບໄດ້ປ່ຽນແປງຢ່າງຮຸນແຮງໃນໄລຍະສອງສາມປີຜ່ານມາແລະໃນຖານະນັກພັດທະນາເວບໄຊທ໌, ເພື່ອຈະຢູ່ເທິງສຸດຂອງເກມຂອງທ່ານ, ມັນເປັນສິ່ງ ສຳ ຄັນທີ່ຈະຕ້ອງໄດ້ປັບປຸງໃຫ້ທັນກັບເຕັກໂນໂລຢີລ້າສຸດ.

JavaScript ແມ່ນພາສາການຂຽນໂປແກຼມທີ່ມີທ່າອ່ຽງໃນປະຈຸບັນ; ມັນແມ່ນບໍ່ມີຄວາມສົງໃສວ່າເຕັກໂນໂລຢີທີ່ນິຍົມທີ່ສຸດທີ່ໃຊ້ໂດຍນັກພັດທະນາ stack ເຕັມ.

ໂຄງຮ່າງການເວບໄຊທ໌ JavaScript ໄດ້ກາຍເປັນວິທີແກ້ໄຂທີ່ດີເລີດ ສຳ ລັບການພັດທະນາເວບໄຊທ໌ທີ່ໄວຂື້ນດ້ວຍປະສິດທິພາບ, ຄວາມປອດໄພແລະຄ່າໃຊ້ຈ່າຍທີ່ ໜ້ອຍ ທີ່ສຸດ. ຂ້າພະເຈົ້າແນ່ໃຈວ່າທ່ານໄດ້ຍິນກ່ຽວກັບ Node JavaScript (ໂດຍທົ່ວໄປເອີ້ນວ່າ Node.js ຫຼືງ່າຍໆ Node), ມີສຽງດັງກ່ຽວກັບມັນຢູ່ໃນອິນເຕີເນັດ.

ໃນບົດຂຽນນີ້, ຂ້ອຍຈະສະແດງວິທີການເລີ່ມຕົ້ນການພັດທະນາໂປແກຼມຕ່າງໆໃນ JavaScript ໂດຍໃຊ້ Node.js ໃນ Linux. ແຕ່ ທຳ ອິດ, ສາມາດແນະ ນຳ ໂດຍຫຍໍ້ກ່ຽວກັບ Node.js.

Node.js ແມ່ນຫຍັງ?

Node.js ແມ່ນໂປແກຼມ JavaScript ທີ່ເປີດ, ເບົາແລະມີປະສິດຕິພາບທີ່ຖືກສ້າງຂື້ນໃນເຄື່ອງຈັກ V8 JavaScript ຂອງ Chrome. ມັນຖືກອອກແບບໂດຍບໍ່ມີກະທູ້ (ເສັ້ນດ່ຽວ) ແລະມີການຈັດຕັ້ງປະຕິບັດທີ່ຄ້າຍຄືກັນກັບ Twisted, ເຄື່ອງຈັກເຄືອຂ່າຍທີ່ສ້າງໂດຍໃຊ້ Python ຫຼື Event Machine, ຫ້ອງສະ ໝຸດ ປະມວນຜົນກິດຈະ ກຳ ສຳ ລັບໂປແກຼມ Ruby.

ຫົວໃຈຂອງ Node.js ແມ່ນອີງໃສ່ການຂຽນໂປແກຼມທີ່ໃຊ້ກັບເຫດການ; ດັ່ງນັ້ນນັກຂຽນໂປແກຼມຄວນເຂົ້າໃຈເຫດການທີ່ມີຢູ່ແລະວິທີການຕອບສະ ໜອງ ຕໍ່ພວກມັນ.

ການຄຸ້ມຄອງການຫຸ້ມຫໍ່ພາຍໃຕ້ Node.js

Node.js ໃຊ້ຜູ້ຈັດການຊຸດລະບົບ JavaScript ແລະລະບົບນິເວດທີ່ເອີ້ນວ່າ“ npm”, ເຊິ່ງປະກອບດ້ວຍການເກັບມ້ຽນຫ້ອງສະມຸດທີ່ບໍ່ເສຍຄ່າຢ່າງຫຼວງຫຼາຍ. ມັນສະຫນັບສະຫນູນການພັດທະນາຊອບແວແບບໂມດູນ. ທ່ານສາມາດໃຊ້ມັນເພື່ອຕິດຕັ້ງແພກເກດ node, share, ແຈກຢາຍລະຫັດຂອງທ່ານແລະຈັດການການເພິ່ງພາອາໄສແພກເກດ.

Node.js ແມ່ນມີປະສິດທິພາບແລະມີຄວາມ ສຳ ຄັນຍ້ອນເຫດຜົນຕໍ່ໄປນີ້:

  • ມັນໃຊ້ຮູບແບບການປະຕິບັດທີ່ບໍ່ມີການເຄື່ອນໄຫວ, ບໍ່ສະກັດແບບ I/O ຂອງການປະຕິບັດ, ເຊິ່ງຊ່ວຍປັບປຸງຕົວເຂົ້າຂອງແອັບພລິເຄຊັນແລະສະ ໜັບ ສະ ໜູນ ການປັບຂະ ໜາດ ສຳ ລັບການ ນຳ ໃຊ້ເວັບທີ່ແທ້ຈິງ.
  • ມັນແມ່ນເສັ້ນດ່ຽວສະນັ້ນມັນສາມາດໃຊ້ CPU ພຽງແຕ່ 1 CPU ໃນຊ່ວງເວລາໃດ ໜຶ່ງ.
  • ໂປແກຼມ ນຳ ໃຊ້ເວັບ node.js ແມ່ນເຄື່ອງແມ່ຂ່າຍເວັບທີ່ສົມບູນແບບຍົກຕົວຢ່າງ Nginx ຫຼື Apache.
  • ມັນສະ ໜັບ ສະ ໜູນ ກະທູ້ຜ່ານ child_process.fork() API, ສຳ ລັບຂະບວນການລ້ຽງລູກ, ແລະຍັງມີໂມດູນກຸ່ມ.

ດ້ວຍການແນະ ນຳ ໂດຍຫຍໍ້ນີ້, ທ່ານຕ້ອງມີຄວາມກະຕືລືລົ້ນໃນການຂຽນໂປແກຼມ JavaScript ທຳ ອິດຂອງທ່ານ. ຢ່າງໃດກໍ່ຕາມ, ສິ່ງ ທຳ ອິດກ່ອນອື່ນ ໝົດ, ທ່ານ ຈຳ ເປັນຕ້ອງຕິດຕັ້ງ Node.js ແລະ NPM package ໃນລະບົບ Linux ຂອງທ່ານໂດຍໃຊ້ຄູ່ມືຕໍ່ໄປນີ້.

<

  • ຕິດຕັ້ງ Nodejs ແລະ NPM ລຸ້ນລ້າສຸດໃນ Linux Systems
  • ວິທີການສ້າງ App Node.js ທຳ ອິດຂອງທ່ານໃນ Linux

    ເມື່ອທ່ານໄດ້ຕິດຕັ້ງ Node.js ແລ້ວ, ທ່ານພ້ອມແລ້ວທີ່ຈະໄປ. ເລີ່ມຕົ້ນໂດຍການສ້າງໄດເລກະທໍລີທີ່ຈະເກັບແຟ້ມເອກະສານສະ ໝັກ ຂອງທ່ານ.

    $ sudo mkdir -p /var/www/myapp
    

    ຫຼັງຈາກນັ້ນຍ້າຍເຂົ້າໄປທີ່ໄດເລກະທໍລີນັ້ນແລະສ້າງແຟ້ມ package.json ເພື່ອການສະ ໝັກ ຂອງທ່ານ. ເອກະສານນີ້ຊ່ວຍເປັນເອກະສານຂະ ໜາດ ນ້ອຍ ສຳ ລັບໂຄງການຂອງທ່ານ: ຊື່ໂຄງການ, ຜູ້ຂຽນ, ລາຍຊື່ຂອງແພັກເກັດທີ່ມັນຂື້ນກັບແລະອື່ນໆ.

    $ cd /var/www/myapp
    $ npm init
    

    ນີ້ຈະຖາມທ່ານຫຼາຍໆ ຄຳ ຖາມ, ພຽງແຕ່ຕອບຕາມ ຄຳ ອະທິບາຍຂ້າງລຸ່ມນີ້, ແລະກົດ [Enter]. ໃຫ້ສັງເກດວ່າສິ່ງທີ່ ສຳ ຄັນທີ່ສຸດໃນ package.json ແມ່ນຊື່ແລະຊ່ອງຂໍ້ມູນຮຸ່ນຕ່າງໆທີ່ໄດ້ອະທິບາຍໄວ້ຂ້າງລຸ່ມ

    • ຊື່ແພັກເກດ - ຊື່ແອັບ your ຂອງທ່ານ, ຕັ້ງຄ່າຊື່ຂອງຊື່ໄດເລກະທໍລີ.
    • ຮຸ່ນ - ເວີຊັນຂອງແອັບ your ຂອງທ່ານ.
    • ຄຳ ອະທິບາຍ - ຂຽນ ຄຳ ອະທິບາຍສັ້ນໆ ສຳ ລັບແອັບ your ຂອງທ່ານ.
    • ຈຸດເຂົ້າ - ຕັ້ງຄ່າແຟ້ມແພັກເກັດເລີ່ມຕົ້ນ.
    • ຄຳ ສັ່ງທົດສອບ - ໃຊ້ເພື່ອສ້າງສະຄິບທົດສອບ (ເລີ່ມຕົ້ນໃຫ້ກັບຕົວອັກສອນເປົ່າ).
    • git repository - ກຳ ນົດຫໍໄຕ Git (ຖ້າທ່ານມີ).
    • ຄຳ ທີ່ໃຊ້ - ຕັ້ງ ຄຳ ສຳ ຄັນ, ສຳ ຄັນ ສຳ ລັບຜູ້ໃຊ້ອື່ນໆໃນການ ກຳ ນົດຊຸດຂອງທ່ານໃນ npm.
    • ຜູ້ຂຽນ - ລະບຸຊື່ຜູ້ຂຽນ, ໃສ່ຊື່ຂອງທ່ານຢູ່ບ່ອນນີ້.
    • ໃບອະນຸຍາດ - ລະບຸໃບອະນຸຍາດ ສຳ ລັບແອັບ// ຊຸດຂອງທ່ານ.

    ຕໍ່ໄປ, ສ້າງເອກະສານ server.js .

    $ sudo vi server.js
    

    ຄັດລອກແລະວາງລະຫັດຂ້າງລຸ່ມນີ້ໃນມັນ.

    var http = require('http');
    http.createServer(function(req,res){
            res.writeHead(200, { 'Content-Type': 'text/plain' });
            res.end('Hello World!');
    }).listen(8080);
    console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
    

    ຕໍ່ໄປ, ເລີ່ມຕົ້ນການສະ ໝັກ ຂອງທ່ານໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

    $ node server.js
    OR
    $ npm start
    

    ຕໍ່ໄປ, ເປີດໂປແກຼມທ່ອງເວັບແລະເຂົ້າໃຊ້ແອັບ web ເວັບຂອງທ່ານ, ເຊິ່ງບໍ່ມີຫຍັງອີກນອກ ເໜືອ ຈາກການພິມສາຍສະບາຍດີ "Hello world!", ໂດຍໃຊ້ທີ່ຢູ່:

    http://localhost:3333
    

    ໃນລະຫັດຂອງພວກເຮົາຂ້າງເທິງ, ເຫດການຕົ້ນຕໍທີ່ ກຳ ລັງ ດຳ ເນີນການແມ່ນການຮ້ອງຂໍ HTTP ຜ່ານໂມດູນ HTTP.

    ໃນ Node.js, ໂມດູນແມ່ນຄ້າຍຄືຫ້ອງສະ ໝຸດ JavaScript, ພວກມັນມີ ໜ້າ ທີ່ທີ່ທ່ານສາມາດ ນຳ ໃຊ້ໃນແອັບ your ຂອງທ່ານໄດ້. ທ່ານສາມາດໃຊ້ໂມດູນທີ່ສ້າງຂຶ້ນມາ, ໂມດູນພັກສາມສິບຫຼືສ້າງແບບຂອງທ່ານເອງ.

    ເພື່ອໂທຫາໂມດູນໃນແອັບ your ຂອງທ່ານ, ໃຫ້ໃຊ້ຟັງຊັນທີ່ຕ້ອງການຕາມທີ່ສະແດງໄວ້.

    var http = require('http');
    

    ເມື່ອໂມດູນ http ລວມແລ້ວ, ມັນຈະສ້າງເຄື່ອງແມ່ຂ່າຍທີ່ຟັງຢູ່ໃນພອດສະເພາະ (3333 ໃນຕົວຢ່າງນີ້). ວິທີການ http.creatServer ສ້າງເຄື່ອງແມ່ຂ່າຍ http ຕົວຈິງທີ່ຍອມຮັບຫນ້າທີ່ (ເຊິ່ງຖືກຮຽກຮ້ອງໃນເວລາທີ່ລູກຄ້າພະຍາຍາມເຂົ້າເຖິງແອັບ)) ເປັນການໂຕ້ຖຽງ.

    http.createServer(function(req,res){
            res.writeHead(200, { 'Content-Type': 'text/plain' });
            res.end('Hello World!');
    }).listen(8080);
    

    ຫນ້າທີ່ໃນ http.createServer ມີສອງການໂຕ້ຖຽງ: req (ການຮ້ອງຂໍ) ແລະ res (ການຕອບໂຕ້). ການໂຕ້ຖຽງ req ແມ່ນການຮ້ອງຂໍຈາກຜູ້ໃຊ້ຫລືລູກຄ້າແລະການໂຕ້ຖຽງ res ສົ່ງການຕອບກັບລູກຄ້າ.

    res.writeHead(200, { 'Content-Type': 'text/plain' });		#This is a response HTTP header
    res.end('Hello World!');
    

    ພາກສ່ວນສຸດທ້າຍຂອງລະຫັດສົ່ງຜົນໄດ້ຮັບໄປທີ່ console, ເມື່ອເຄື່ອງແມ່ຂ່າຍຖືກເປີດຕົວ.

    console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
    

    ໃນພາກນີ້, ຂ້ອຍຈະອະທິບາຍແນວຄວາມຄິດ ໜຶ່ງ ທີ່ ສຳ ຄັນທີ່ສຸດພາຍໃຕ້ການຂຽນໂປແກຼມ Node.js ເຊິ່ງເອີ້ນວ່າການເດີນທາງ (ທຽບກັບເສັ້ນທາງທີ່ຢູ່ພາຍໃຕ້ເຄືອຂ່າຍຄອມພິວເຕີ້: ຂະບວນການຊອກຫາເສັ້ນທາງ ສຳ ລັບການຈະລາຈອນໃນເຄືອຂ່າຍ).

    ນີ້, ການ ນຳ ທາງແມ່ນເຕັກນິກການຈັດການ ຄຳ ຮ້ອງຂໍຂອງລູກຄ້າ; ການຮັບໃຊ້ເນື້ອຫາທີ່ລູກຄ້າໄດ້ຮ້ອງຂໍ, ຕາມທີ່ລະບຸໄວ້ໃນ URL. URL ແມ່ນສ້າງຂື້ນຈາກເສັ້ນທາງແລະສາຍສອບຖາມ.

    ເພື່ອເບິ່ງສະຕິງແບບສອບຖາມຂອງລູກຄ້າ, ພວກເຮົາສາມາດເພີ່ມສາຍຂ້າງລຸ່ມນີ້ໃນ ຄຳ ຕອບຂອງພວກເຮົາ.

    res.write(req.url);
    res.end()
    

    ຂ້າງລຸ່ມນີ້ແມ່ນລະຫັດ ໃໝ່.

    var http = require('http');
    http.createServer(function(req,res){
            res.writeHead(200, { 'Content-Type': 'text/plain' });
            res.write(req.url);
          res.end();		
          }).listen(8080);
    console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
    

    ບັນທຶກເອກະສານແລະເລີ່ມຕົ້ນສະ ໝັກ ຂອງທ່ານອີກຄັ້ງໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

    $ node server.js
    OR
    $ npm start
    

    ຈາກໂປແກຼມທ່ອງເວັບ, ໃຫ້ພິມ URL ທີ່ແຕກຕ່າງກັນເຊິ່ງຈະຖືກສະແດງຢູ່ຂ້າງລຸ່ມນີ້.

    http://localhost:3333
    http://localhost:3333/about
    http://localhost:3333/tecmint/authors
    

    ຕອນນີ້, ພວກເຮົາຈະສ້າງເວບໄຊທ໌ທີ່ມີຂະ ໜາດ ນ້ອຍແທ້ໆ ສຳ ລັບ Tecmint ກັບ ໜ້າ ທຳ ອິດ, ກ່ຽວກັບແລະ ໜ້າ ເວັບຂອງຜູ້ຂຽນ. ພວກເຮົາຈະສະແດງຂໍ້ມູນບາງຢ່າງໃນ ໜ້າ ນີ້.

    ເປີດເອກະສານ server.js ເພື່ອແກ້ໄຂ, ແລະເພີ່ມລະຫັດຂ້າງລຸ່ມນີ້ໃສ່ມັນ.

    //include http module 
    var http = require('http');
    
    http.createServer(function(req,res){
    	//store URL in variable q_string
    
    	var q_string = req.url;
    	switch(q_string) {
    		case '/':
                            	res.writeHead(200, { 'Content-Type': 'text/plain' });
                            	res.write('Welcome To linux-console.net!')
                            	res.end();
                            	break;
                    	case '/about':
                    		res.writeHead(200, { 'Content-Type': 'text/plain' });
                            	res.write('About Us');
                            	res.write('\n\n');
                            	res.write('linux-console.net - Best Linux HowTos on the Web.');
                            	res.write('\n');
                            	res.end('Find out more: https://linux-console.net/who-we-are/');
                            	break;
                    	case '/tecmint/authors':
                            	res.writeHead(200, { 'Content-Type': 'text/plain' });
                            	res.write('Tecmint Authors');
                            	res.write('\n\n');
                            	res.end('Find all our authors here: https://linux-console.net/who-we-are/');
                            	break;
                    	default:
                           		res.writeHead(404, { 'Content-Type': 'text/plain' });
                           		res.end('Not Found');
                            	break;
    	}
    }).listen(3333);
    console.log('Server started on localhost:3333; press Ctrl-C to terminate....');
    

    ໃນລະຫັດຂ້າງເທິງນີ້, ພວກເຮົາໄດ້ເຫັນວິທີການຂຽນ ຄຳ ເຫັນໃນ Node.js ໂດຍໃຊ້ຕົວອັກສອນ / ແລະຍັງໄດ້ແນະ ນຳ ສະຫຼັບສັບແລະກໍລະນີ ສຳ ລັບການຂໍເສັ້ນທາງລູກຄ້າ.

    ບັນທຶກເອກະສານ, ເລີ່ມຕົ້ນເຊີບເວີແລະລອງເຂົ້າເບິ່ງ ໜ້າ ຕ່າງໆ.

    ນັ້ນແມ່ນ ສຳ ລັບດຽວນີ້! ທ່ານສາມາດຊອກຫາຂໍ້ມູນເພີ່ມເຕີມໄດ້ທີ່ເວບໄຊທ໌ NPM.

    Node.js ກຳ ລັງເພີ່ມຂື້ນສູ່ລະດັບສູງ ໃໝ່ ໃນປະຈຸບັນ, ມັນໄດ້ເຮັດໃຫ້ການພັດທະນາແບບເຕັມຮູບແບບມີຄວາມງ່າຍດາຍຫຼາຍກວ່າແຕ່ກ່ອນ. ມັນເປັນປັດຊະຍາທີ່ເປັນເອກະລັກສະເພາະຂອງການຂຽນໂປແກຼມທີ່ໃຊ້ກັບເຫດການເຮັດໃຫ້ທ່ານສາມາດສ້າງຂະບວນການແລະເຄື່ອງແມ່ຂ່າຍເວັບໄດ້ໄວ, ມີປະສິດທິພາບແລະສາມາດປັບຂະ ໜາດ ໄດ້.

    ຕໍ່ໄປ, ພວກເຮົາຈະອະທິບາຍກ່ຽວກັບກອບ Node.js, ເຊິ່ງຂະຫຍາຍຄວາມສາມາດດັ້ງເດີມຂອງຕົນ ສຳ ລັບການພັດທະນາໂປແກຼມເວັບ/ມືຖືໄດ້ໄວແລະເຊື່ອຖືໄດ້. ຢ່າແບ່ງປັນຄວາມຄິດຂອງທ່ານກ່ຽວກັບບົດຂຽນນີ້ຜ່ານພາກຄໍາເຫັນຂ້າງລຸ່ມນີ້.