Kamusta sa buong pamayanan! Ang pangalan ko ay Bruno, at nakapasok na ako DesdeLinux bilang isang gumagamit. Panahon na para sa akin na gawin ang aking unang mga post sa komunidad na ito 🙂
Ngayon dinadala ko sa iyo ang isang gabay sa NodeJS y sails.js
node.js
Ito ay isang kapaligiran sa programa, batay sa wika Javascript na may isang arkitektura na nakatuon sa kaganapan, perpekto para sa asynchronous na programa. Node, ay batay sa engine V8 ng Google.
Pinapanatili nito ang isang aktibong open source na pamayanan, na nagsulat ng maraming mga module upang mapabilis ang aming pag-unlad.
Ang isa sa kanila ay socket.io (Pinapayagan ang server na magpadala ng mga real-time na pag-update sa client, halimbawa ang pagsubaybay ng isang GPS)
Ano ito para sa?
Ang node ay idinisenyo para sa mga sitwasyon kung saan ang trapiko ay masyadong malaki, na nagiging sanhi ng server logic at throughput na hindi kinakailangang mas mataas. At hindi lamang iyon, ngunit sa real time at may mahusay na kakayahang sumukat!
Bakit Node?
1 ay open source.
2) Kung naisip mo na gumamit ng isang solong wika sa parehong panig ng server at client, narito ang solusyon.
3) Kakayahang sukatin at Pagsabay.
4) Atbp
sails.js
Ano ang Sails?
Isang Balangkas ng MVC na ginagaya ang modelo ng ruby sa daang-bakal (Oo, narinig mo nang tama: D) para sa paglikha ng maliliit o malalaking application nang mabilis, madali at ligtas. sa karagdagang ay may suporta para sa mga modernong kinakailangan ng aplikasyon. Hindi mahalaga kung aling database ang ginagamit mo, Ang mga paglalayag ay nagbibigay ng isang layer ng abstraction, na ginagawang walang malasakit ang pagpili dito. Ang mga paglalayag ay may:
- Ang kakayahang lumikha RESTful JSON API awtomatiko.
- Isinama nito ang module socket.io.
- Bumuo ng mga ruta awtomatiko para sa iyong mga kumokontrol.
- Nagbibigay ng system ng pagpapatunay ng mga gumagamit at pag-access control nakabatay sa papel.
- ingit bilang Task Runner (Mga awtomatikong gawain tulad ng pagliit, pagtitipon, pagsubok, atbp)
- Mga Asset: Lahat ng mga file sa kanilang kaukulang mga direktoryo (css, js) ay pinag-isa sa isang solong file at pinaliit, upang mabawasan malaki pagkarga ng pahina at limitadong bilang ng mga kahilingan sa browser.
Pag-install ng Node.Js
sudo apt-get install python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
Mga pag-install ng Sails.Js
Pinakabagong matatag na bersyon:
sudo npm -g install sails
Lumikha ng skeleton ng direktoryo:
sails new testProject
Pinapasok namin ang aming Project:
cd testProject
Sinimulan namin ang server:
sails lift
Yeeeeeeeeeeah! kami ay pumasok http://localhost:1337/
Mga API:
- Mga Driver
- Mga Adapter
- Mga Modelong
- Mga Patakaran
- Mga Serbisyo
ASET:
- mga imahe
- js
- mga istilo
favicon
robots
MGA SETTING:
- lokal
404.js, 500.js… ..
mga ruta.js
session.js
sockets.js …… ..
NODE_MODULES:
- ejs (template engine)
- ungol
- maasahin sa mabuti
- sails-disk
TINGNAN:
- Home (narito ang root template, localhost)
- 404.ejs
- 500.ejs
- layout.ejs (Para sa mga gumagamit ng daang-bakal, layouts.ejs kumilos katulad kaysa sa layouts.html. *)
Palikpik
Sa ngayon ang aking kaalaman, at inaasahan kong nakatulong ako sa marami ... ako bago sa teknolohiyang ito kaya't anumang nakabubuting pagpuna ay maligayang pagdating 🙂
Ang post na ito ay lumitaw upang gawin ito, dahil bumubuo ako ng isang uri ng psychosocial network (Wala mula sa ibang mundo). Sa layunin ng pag-aaral, at kaunting mapagkukunan. ang ideya ay gumawa din ng isang server ng bahay na sumusuporta dito (Tiyak na gumawa ng isang tutorial nito) Tulad ng sinabi ko dati, kakaunti ang mapagkukunan, kaya ang pag-optimize Napakahalaga nito. (at kahit na hindi sila masyadong ^^)
Namangha ako sa kung gaano ito katapat na tularan ang RoR, kahit na maraming poot sa RoR para sa hindi magandang pagganap nito (nang hindi na-configure) ang paglilinis ng code ng tren.
Napakainteresado ng paksa, inaasahan kong ipagpatuloy mo itong paunlarin, binabati kita.
Hindi ko kinamumuhian si RoR, ang totoo ay ang pilosopiya ni ruby ng "maraming paraan upang gawin ang parehong bagay" ay karaniwang isang problema dahil hindi lahat sa kanila ay talagang ang pinaka mahusay at kung nais mong sagutin ang isang katanungan, sa marami mga kaso mayroon kang Maliit na problema kung saan sinasagot ka ng lahat ng tao sa iba't ibang paraan ng paggawa ng pareho at may posibilidad kang mas malito D:
Tungkol sa balangkas na ito para sa Node, dahil hindi ito para sa malalaki o malalaking bagay, ginagamit ang Node kasama ang iba pang mga frame tulad ng Django para sa mga tiyak na bagay, sa palagay ko ang halimbawa ng Mejorando.la ay ganito, itinatayo nila ang buong site at pinamamahalaan ang mga base ng data sa Django ngunit ang mga isyu sa realtime ay naiwan kay Node, kahit na hindi ako sigurado kaya hindi ko masyadong mapag-uusapan iyon.
Sa palagay ko iyan ang sasabihin mo, ginagamit nila ang Django para sa base ng site at Node para sa mga bagay sa real time ... Kaya't hindi bababa sa iyon ang palagi kong naririnig na sinasabi ng freddy vega
Ang NodeJS ay hindi tulad ng Django o PHP, o ruby. Ngunit ito ay isang server tulad ng Apache, Nginx, atbp.
Ang Sails ay ang balangkas na gumagamit ng mga nodejs at express (ibang balangkas) kasama ang ilang mga module tulad ng socket.io, para sa paglikha ng mga web application.
Pagbati!
kaya kung nais mong isama ang isang chat na ginawa kasama ang mga nodejs na may isang pahina sa sawa kasama si Django (upang magpatuloy sa halimbawa ng pagpapabuti.la), kakailanganin mong gumamit ng isang frame, o magtalaga sa apache (kung iyon ang kaso, ako walang ideya kung aling server ang gumagamit ng sawa) ang landas http://miweb.com ya node.js http://miweb.com/chat at makipag-usap sa kanila
Hey na sobrang kawili-wili ....
Ang hindi ko natapos kung bakit ginagamit ang Node JS para sa web?
ito ay isang kahalili sa apache, na may kalamangan na maging real time (mga application na nakikipag-usap sa lahat ng oras at hindi lamang kapag ang kahilingan ay ginawa).
Ang NodeJS ay hindi isang kahalili (o kapalit) sa Apache, NGINX o anumang iba pang web server. Ang NodeJS ay isang JavaScript interpreter para sa server, na nagbibigay-daan sa iyo upang lumikha ng mga application na may wikang ito na kung hindi ay mangangailangan ng paggamit ng mga wika tulad ng Java, Python, Ruby o PHP.
Oo, siguro mali ang ipinahayag ko sa aking sarili. Ang nais kong iparating ay ang node.js nagpapatakbo ng sarili nitong server at hindi kailangan ng mga third party upang magtrabaho (apache, nginx, cherokee, atbp)
Pagbati!
napakahusay, inaasahan kong mas maraming mga tutorial na magagawang sundin ang node.js at gumawa ng isang bagay sa real time
Narito ang isang 200-pahina na libro, na may isang pagpapakilala sa Node.js sa pamamagitan ng Koans. Ito ay may sa sa Node.js, at ang "resolusyon" ng isang bahagi ng isang problemang nailahad (ang halimbawa ay kaba) na may Express bilang balangkas ng header ... ..
http://nodejskoans.com/
PS: Ang mga paglalayag ay ginawa sa batayang Express, karaniwang karamihan sa mga ito ay.
Pagbati!
Mahusay na kontribusyon Bruno .. Maligayang pagdating 😀
Salamat sa iyo at sa buong pamayanan para sa pagpapaalam sa bahagi nito 🙂 Mga pagbati!
Napakainteres Bruno 🙂
Salamat sa iyo!
Mahusay na artikulo Maraming salamat.
Kasalukuyan akong gumagamit ng mga paglalayag sa ilan sa aking mga proyekto. Nais kong tanungin ka kung saan ako makakakuha ng karagdagang impormasyon tungkol sa kontrol na pag-access na batay sa papel para sa mga paglalayag, kung maaari sa Espanyol, ngunit kung hindi, sa Ingles. Nais kong magdagdag ng kontrol sa pag-access sa isa sa aking mga pahina ngunit nais kong magtaguyod ng mga pahintulot para sa ilang mga gumagamit mula sa isang tiyak na ruta at iba pa mula sa ibang ruta. Posible ba iyon sa mga paglalayag? Wala akong makitang impormasyon tungkol dito.
Salamat at pagbati para sa artikulo.
Isang pagbati
Elvira.
Hello Elvira!
Tungkol sa kung ano ang binanggit mo, maging Sailsjs o anumang iba pang balangkas, ang iyong imungkahi ay nauugnay sa pagmomodelo ng data at mga paghihigpit na ipinataw ng system.
Maaari kang lumikha ng isang bagay tulad ng "mga pangkat" (mga tungkulin) na may iba't ibang mga pahintulot at maiugnay ang bawat gumagamit sa isa sa mga ito.
Partikular sa mga paglalayag ang mga ito ay tinatawag na "mga patakaran" at makikita mo ito rito: http://sailsjs.org/#/documentation/concepts/Policies
Pagbati at salamat sa iyong komento!
Maraming salamat Bruno. Sa iyong mga senyas, nakakita ako ng isang matikas na solusyon. isang pagbati