Enkonduko al NodeJS + SailsJS

Saluton al la tuta komunumo! Mi nomiĝas Bruno, kaj mi eniris De Linukso kiel uzanto. Estas tempo por mi fari miajn unuajn afiŝojn en ĉi tiu komunumo 🙂

Hodiaŭ mi alportas al vi gvidilon NodeJS y veloj.js

node.js

Ĝi estas programa medio, bazita sur la lingvo Javascript kun event-orientita arkitekturo, ideala por nesinkrona programado. Nodo, baziĝas sur la motoro V8 de Google.
Ĝi subtenas aktivan liberfontan komunumon, kiu verkis multajn modulojn por faciligi nian disvolviĝon.
Unu el ili estas socket.io (Permesas al la servilo sendi realtempajn ĝisdatigojn al la kliento, ekzemple la spurado de GPS)

Kio estas?

Nodo estas desegnita por situacioj, kie trafiko estas tro granda, kaŭzante servilan logikon kaj rendimenton ne nepre pli altajn. Kaj ne nur tio, sed en reala tempo kaj kun granda skaleblo!

Kial Nodo?

1 estas malferma fonto.
2) Se vi iam pensis uzi ununuran lingvon ambaŭflanke de servilo kaj kliento, jen la solvo.
3) Skalebleco kaj Konsento.
4) Ktp.

veloj.js

Mi elektis velojn, pro la jenaj trajtoj aldone al tio, ke laŭ mia vidpunkto ĝi estis la plej legebla laŭ kodo. Okulo! ekzisti MULTAJ kadroj por Nodo, kiel ĝi estas esprimi, angula, geddy, Ktp

Ekrankopio - 080913 - 13:21:50

Kio estas Veloj?

Ĝi estas a MVC-kadro tio imitas la modelon de rubeno sur reloj (Jes, vi aŭdis ĝuste: D) por krei malgrandajn aŭ grandajn programojn rapide, facile kaj sekure. plu subtenas modernajn postulojn. Ne gravas kiun datumbazon vi uzas, Veloj donas tavolon de abstraktado, kio indiferentas la elekton de ĝi. Veloj havas:

- La kapablo krei RESTplena JSON-API aŭtomate.
- Ĝi inkluzivas la modulon socket.io.
- Generi itinerojn aŭtomata por viaj regiloj.
- Provizas sistemon de aŭtentikigo de uzantoj kaj alirkontrolo rolbazita.
- Grunti kiel Task Runner (Aŭtomataj taskoj kiel minimumigo, kompilo, testado, ktp)
- Aktivaĵoj: Ĉiuj dosieroj en iliaj respondaj dosierujoj (css, js) estas unuigita en ununura dosiero kaj malgrandigita, redukti konsiderinde paĝoŝarĝo kaj limigita nombro da retumaj petoj.

 

Instalado de Node.Js

Mi faris la turorial kun Ubuntu 13.04.

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

Instalaĵo de Sails.Js

Plej lasta stabila versio:
sudo npm -g install sails

Ĉi-momente sen eraroj, ni kreas novan projekton! 😀

Kreu la dosierujan skeleton:
sails new testProject

Ni eniras nian Projekton:
cd testProject

Ni startigas la servilon:
sails lift

Yeeeeeeeeeeah! ni eniris http://localhost:1337/

Ekrankopio - 080913 - 13:02:34

La strukturo de nia adresaro aspektas tiel:
Ekrankopio - 080913 - 13:07:57

APIoj:
- Ŝoforoj
- Adaptiloj
- Modeloj
- Politikoj
- Servoj

AKSOJ:
- bildoj
- js
- stiloj
bildsimboleto
robotoj

KONFIGU:
- loka
404.js, 500.js ... ..
vojos.js
sesio.js
sockets.js …… ..

NODE_MODULES:
- ejs (ŝablona motoro)
- grunti
- optimisto
- veldisko

Vidoj:
- Hejmo (jen la radika ŝablono, loka gastiganto)
- 404.ejs
- 500.ejs
- layout.ejs (Por tiuj, kiuj uzis relojn, layouts.ejs kondutas sama ol aranĝoj.html. *)

EJS (Enmetita Ĝavaskripto) Ĝi estas ŝablona motoro, sed ne la sola. Mi aparte pli ŝatas JADE

FIN

Ĝis nun mia scio, kaj mi esperas, ke mi helpis multajn ... Mi estas nova en ĉi tiu teknologio do estas ia ajn konstrua kritiko bonvenon 🙂

Ĉi tiu afiŝo estis farita, ĉar mi disvolvas ian psikosocian reton (Nenio el alia mondo). Kun celoj de lernado, kaj malmultaj rimedoj. la ideo estas ankaŭ krei hejman servilon, kiu subtenas ĝin (Certe faru lernilon pri ĝi) Kiel mi diris antaŭe, la rimedoj estas malmultaj, do la optimumigo Ĝi estas tre grava. (kaj eĉ se ili ne estus tro ^^)


La enhavo de la artikolo aliĝas al niaj principoj de redakcia etiko. Por raporti eraron alklaku Ĉi tie.

18 komentoj, lasu la viajn

Lasu vian komenton

Via retpoŝta adreso ne estos eldonita. Postulita kampojn estas markita per *

*

*

  1. Respondeculo pri la datumoj: Miguel Ángel Gatón
  2. Celo de la datumoj: Kontrola SPAM, administrado de komentoj.
  3. Legitimado: Via konsento
  4. Komunikado de la datumoj: La datumoj ne estos komunikitaj al triaj krom per laŭleĝa devo.
  5. Stokado de datumoj: Datumbazo gastigita de Occentus Networks (EU)
  6. Rajtoj: Iam ajn vi povas limigi, retrovi kaj forigi viajn informojn.

  1.   Arthur Shelby diris

    Mi miras, kiom fidela ĝi kopias RoR, kvankam multaj malamas RoR pro ĝia malbona agado (sen agordi) tendencokoda purigado.

    La temo estas tre interesa, mi esperas, ke vi daŭre disvolvos ĝin, gratulon.

    1.    nano diris

      Mi ne vere malamas RoR, la afero estas, ke la filozofio de rubeno pri "ekzistas multaj manieroj fari la samon" kutime estas problemo, ĉar ne ĉiuj estas vere la plej efikaj kaj kiam vi volas respondi demandon, en multaj kazoj havas tiun Malgrandan problemon, en kiu ĉiuj respondas per malsama maniero fari la samon kaj vi emas pli konfuziĝi D:

      Pri ĉi tiu kadro por Nodo, ĉar ĝi ne estas por grandegaj aŭ grandaj aferoj, Nodo estas uzata kune kun aliaj kadroj kiel Django por specifaj aferoj, mi pensas, ke la ekzemplo de Mejorando.la estas tia, ili konstruas la tutan retejon kaj administras ĝian datumbazoj kun Django sed la realtempaj numeroj restas al Node, mi ne certas, do mi ne povas paroli tro multe pri tio.

      1.    jamin samuel diris

        Mi pensas, ke tiel vi diras, ke ili uzas Django por la bazo de la retejo kaj Nodo por aferoj en reala tempo ... Nu almenaŭ tion mi ĉiam aŭdas freddy vega diri

        1.    Bruno cascio diris

          NodeJS ne similas al Django aŭ PHP, aŭ ruby. Sed ĝi estas servilo kiel Apache, Nginx, ktp.

          Sails estas la kadro, kiu uzas nodejs kaj express (alia kadro) kune kun iuj moduloj kiel socket.io, por la kreo de retaj programoj.

          Dankon!

          1.    Arnoldo RLF diris

            do se vi volas inkluzivi babilejon faritan kun nodej-oj kun paĝo en python kun Django (por daŭrigi kun la ekzemplo de plibonigado.la), vi devus uzi kadron, aŭ atribui al apache (se tio estas la kazo, mi tute ne scias, kiu servilo uzas python) la vojon http://miweb.com ya node.js http://miweb.com/chat kaj komuniku ilin

  2.   jamin samuel diris

    He, tio estas tre interesa ...

    Mi ne finis, kial Node JS estas uzata por la retejo?

    1.    Arnoldo RLF diris

      ĝi estas alternativo al apache, kun la avantaĝo de esti en reala tempo (aplikoj, kiuj konstante komunikas kaj ne nur kiam la peto estas farita).

      1.    David Gomez diris

        NodeJS ne estas alternativo (aŭ anstataŭaĵo) al Apache, NGINX aŭ iu ajn alia retservilo. NodeJS estas JavaScript-interpretilo por la servilo, kiu ebligas al vi krei programojn kun ĉi tiu lingvo, kiuj alie postulus la uzon de lingvoj kiel Java, Python, Ruby aŭ PHP.

        1.    Bruno cascio diris

          Jes, eble mi esprimis min malĝusta. Kion mi volis transdoni estas, ke node.js funkciigas sian propran servilon kaj ne bezonas 3-partiojn por funkcii (apache, nginx, ĉeroko, ktp)

          Dankon!

  3.   Arnoldo RLF diris

    tre bone, mi esperas pli da lerniloj por povi sekvi node.js kaj fari ion en reala tempo

    1.    Bruno cascio diris

      Jen 200-paĝa libro, kun enkonduko al Node.js per Koans. Ĝi havas en Node.js, kaj la "rezolucion" de parto de problemo proponita (la ekzemplo estas twitter) kun Express kiel la kapkadro ... ..

      http://nodejskoans.com/

      PS: Veloj estas farataj laŭ Ekspreso, kutime plej multaj el ili estas.

      Dankon!

  4.   vigla diris

    Bonega kontribuo Bruno .. Bonvenon 😀

    1.    Bruno cascio diris

      Dankon al vi kaj la tuta komunumo, ke vi lasis esti parto de ĝi 🙂 Salutojn!

  5.   auroszx diris

    Tre interesa Bruno 🙂

    1.    Bruno cascio diris

      Gracias!

  6.   La spongulino diris

    Bonega artikolo. Multaj dankoj.

    Mi nuntempe uzas velojn en iuj miaj projektoj. Mi ŝatus demandi vin, kie mi povas akiri pli da informoj pri rola alirkontrolo de veloj, se eble en la hispana, sed se ne, en la angla. Mi ŝatus aldoni alirkontrolon al unu el miaj paĝoj sed mi volas establi permesojn por iuj uzantoj de certa vojo kaj aliaj de alia vojo. Ĉu tio eblas kun veloj? Mi ne povas trovi multajn informojn pri ĝi.

    Dankon kaj gratulon pro la artikolo.

    Salutoj
    Elvira.

    1.    Bruno cascio diris

      Saluton Elvira!

      Pri tio, kion vi mencias, ĉu Sailsjs aŭ iu ajn alia kadro, tio, kion vi proponas, rilatas al la modeligado de la datumoj kaj al la limigoj, kiujn la sistemo trudas.

      Vi povus krei ion kiel "grupoj" (roloj) kun malsamaj permesoj kaj asocii ĉiun uzanton al unu el ili.

      Precipe en veloj ili nomiĝas "politikoj" kaj vi povas vidi ĝin ĉi tie: http://sailsjs.org/#/documentation/concepts/Policies

      Saluton kaj dankon pro via komento!

      1.    La spongulino diris

        Koran dankon Bruno. Per viaj instigoj, mi trovis elegantan solvon. saluto