Ruby, wiki

1. Informații generale

  • mijloace de manipulare excepție
  • handler plin de gunoi pentru toate obiectele
  • multi-threading, care este independent de sistemul de operare
  • cross-platform (Linux, MacOSX, Windiws, DOS. BEOS)
  • capacitatea de a încărca dinamic biblioteci de extensie
  • capacitatea de a dezvolta extensii pentru Ruby în C
  • dactilografiere dinamic
  • până în prezent, cea mai recentă versiune de Ruby 1.9

Resursele alocate Ruby

1. vorbitori de limbă rusă

2. vorbitor de limba engleză

2. Cum este Ruby pe ce?


Versiunea Ruby poate fi găsit cu:


În prezent, instalat pe hosting:

3. RubyGems

Module sau aplicații sunt numite pietre de rubin (de la bijuterie - o bijuterie). managerul de pachete numit lista RubyGems Ruby de module instalate sunt disponibile cu:


Dacă doriți să aflați dacă este instalat un modul special, de exemplu, șine, comanda este dat:


Lista modulelor disponibile pentru instalare, pentru a primi comenzi:


Pe serverele noastre au capacitatea de a instala module Ruby pentru utilizatori:

Modulele sunt instalate în /home/user/.gems În cazul în care în loc de utilizator - nume de utilizator

Dacă intenționați să instalați modulele, care sunt în mod implicit nu este disponibil pe serverele noastre, trebuie:
  • personaliza .gemrc
  • configura variabilele de mediu

În cazul în care instalația pentru orice motiv, nu ne poate cere să sprijine, și vom ajuta cu plăcere seta modulul dorit.

4. Ruby on Rails

Ruby on Rails - aplicații web Open Source. Scopul lui - pentru a face mai ușor de a dezvolta și de a reduce cantitatea de cod. Ruby on Rails utilizează schema de model-view-controller.

Model: este utilizat pentru a reprezenta forma de date utilizată de logica aplicației și cuprinde recepționarea datelor și manipularea acestora. În Rails model este reprezentat ca o clasă. Vă puteți gândi la modele ca o interfață abstractă, idealizat între codul de comandă și date.

Vizualizări: template-uri (de obicei, formate din codul HTML și Ruby) - acesta este modul în care browser-ul va fi prezentat în datele primite de la operator. Controllers: chipset-uri, este responsabil pentru apelarea model. Ei se ocupă de intrare, cauza metodele disponibile și sub formă de prezentare.


Montarea șinelor și a lumii salut:


Șinele de instalat și proiectul este creat crea un controler și vizualizare:

Fișier app / views / home / index.html.erb - un șablon care va fi utilizat pentru a afișa controler acasă indicele metodă.


Implicit șterge pagina Sine:


structura:
  • app: conține cea mai mare parte a codului sursă în Ruby și modele de ieșire direct legate de aplicarea
  • app / controlere: controlere Conține fișiere
  • app / ajutoare: Helper pentru a afișa punctele de vedere. Ele pot fi folosite pentru plasarea de metode de redare (rxml, RJS)
  • app / modele: conține fișierele pentru fiecare dintre modelele din anexă. În cazul în care un proiect gol, directorul este gol
  • app / vizualizări: Conține fișiere șablon. De obicei, fiecare controler cuprinde un subfolder în app / vizualizări
  • config: Acest dosar conține fișierele de configurare pentru aplicația
  • fișier de configurare database.yml cu informații despre bazele de date utilizate de aplicație. boot.rb environment.rb și, de obicei, nu au nevoie de editare
  • db: Directorul utilizat pentru benă, backup de date
  • RDoc Documentare, concepute pentru aplicații: doc
  • lib: conține biblioteci terțe părți și Rack-uri de referință
  • log: Conține fișiere jurnal legate de acțiunile de aplicare
  • publice: Produs server de web disponibile. De asemenea, conține .htaccess
  • script: Conține script-uri și utilitare linie de comandă. utilizate pentru a crea și implementa aplicații Ruby. Console - un utilitar similar IRB, se încarcă-aplicare șine de mediu înainte de a acorda o invitație
  • încercare: încercare include subsistemul aplicație
  • tmp: stocarea temporară a datelor
  • furnizor: teste funcționale și structura acestora

5.1. Care sunt privilegiile de lucru rubin - aplicatie?

Toate rubin - un singur site aplicație realizată într-un singur proces (exemplu de aplicație). Procesul se execută cu privilegiile proprietarului site-ului.

5.2. Care sunt limitările tehnice?

Toate Ruby - un singur site aplicație realizată în cadrul unui proces. În procesul de suprapus peste limita consumul de memorie (200MB).

5.3. Cum pot vedea Ruby meu - aplicatie?

Vă puteți conecta prin SSH și rulați comanda:

5.4. De ce este prima cerere pe site-ul meu se face pentru o lungă perioadă de timp?

La prima solicitare la un site-uri Ruby sunt importatoare (căutare, citire, compilare byte- cod) din toate cele necesare pentru modulele aplicației. Această operațiune poate dura câteva secunde, iar solicitările ulterioare site-ului vor fi efectuate rapid.

5.5. Am schimbat codul aplicației, dar nu văd nici schimbări în site-ul de lucru, ce să fac?

Pentru a realiza importurile de pasageri de mare viteză, toate modulele 1 o singură dată (în prima cerere). Pentru a reporni rubinul - aplicații au nevoie pentru a efectua comanda tactil (schimba timpul de modificare) în rubiniu aplicatiaFile repornire:

5.6. Cum de a crește performanța mea Ruby-aplicații?

În mod implicit, Phusion pasager este compatibil cu alte module Apache, a căror activitate poate provoca regie suplimentară. Pasager oferă opțiunea PassengerHighPerformance. vă permite să dezactivați compatibilitatea cu unele module, astfel de interogare timp este ușor redusă. Cu toate acestea, trebuie să utilizați această opțiune cu precauție, de pre-testate, și asigurându-vă că comutabile compatibile cu modulele Apache nu este necesar pentru site-ul tau:

5.6. Ea nu funcționează, am obține eroare 500!

Pentru diagnosticul, verificați fișierele jurnal de aplicații.

5.7. Care este numărul de site-uri din Ruby le creez?

În prezent, numărul de site-uri cu un rubin-aplicații nu sunt limitate în mod specific. Cu toate acestea, numărul total de site-uri este limitat de parametrii planul.