Forum: Rails France performances

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
2006ddf092f3a693748d061a66048159?d=identicon&s=25 Olivier AUDRY (Guest)
on 2006-02-07 16:08
(Received via mailing list)
Bonjour,

jusqu'à présent je n'utilisais pour coder que le serveur Webrick c'était
beaucoup plus simple. Un http_load me donnait des résultats corrects et
la  navigation était fluide. Cependant le fait qu'une application tourne
sur un port différent à chaque fois ne me plaît pas trop.

devel:/home/leo/http_load-29jun2005# ./http_load -v -parallel 2 -seconds
10 url
36 fetches, 2 max parallel, 243936 bytes, in 10 seconds
6776 mean bytes/connection
3.6 fetches/sec, 24393.6 bytes/sec
msecs/connect: 0.278556 mean, 0.328 max, 0.102 min
msecs/first-response: 517.684 mean, 660.096 max, 397.473 min
HTTP response codes:
  code 200 -- 36


devel:/home/leo/http_load-29jun2005# ./http_load -v -parallel 20
-seconds 10 url
34 fetches, 20 max parallel, 230384 bytes, in 10.0003 seconds
6776 mean bytes/connection
3.3999 fetches/sec, 23037.8 bytes/sec
msecs/connect: 1058.88 mean, 2999.97 max, 0.193 min
msecs/first-response: 3040.46 mean, 6162.07 max, 566.06 min
HTTP response codes:
  code 200 -- 34
devel:/home/leo/http_load-29jun2005#


Aujourd'hui mon application est presque fini, j'ai donc entrepris de
faire les choses correctement pour la production. J'ai installé apache
1.3 et fastcgi en suivant les recommandations de tunning trouvés à
gauche et à droite sur le net :

http://scottstuff.net/blog/articles/2005/07/20/apa...

mais le résultat est catastrophique la navigation est tout sauf fluide
et la charge de la machine explose j'ai donc cherché ailleur et j'ai
trouvé ça :

http://paul.querna.org/journal/articles/2006/01/01...

c'est un peu mieux mais Webrick reste tout de même beaucoup mieux.

Je pense sincèrement être passé à coté de quelque chose mais je ne vois
pas trop quoi. Merci de votre aide.

A noté que l'application est vraiment très simple :

1 contrôleur, 1 base, 1 table, un peu de javascript 50lignes de code à
tout casser.

Machine :

Linux 2.6.8 Debian Sarge à jour
Pentium III 1,3Ghz
512 Mo Ram
2 x 18go RAID 1 SCSI

--
Cordialement

Olivier AUDRY
Unix System Engineer
COLT TELECOM FRANCE
F16def8015a7562a285c65a14be48540?d=identicon&s=25 Mathieu Chappuis (Guest)
on 2006-02-07 16:46
(Received via mailing list)
Salut,

> faire les choses correctement pour la production. J'ai installé apache
> 1.3 et fastcgi en suivant les recommandations de tunning trouvés à
> gauche et à droite sur le net :
> et la charge de la machine explose j'ai donc cherché ailleur et j'ai
> trouvé ça :

Je connais pas fcgid. Mais dans les deux cas, une piste pourrait être
que tu n'es pas en environnement de 'production'.
Eff13c5bc068b59052e2449d7fb2afba?d=identicon&s=25 Pierre Fauquembergue (Guest)
on 2006-02-07 16:58
(Received via mailing list)
> 1 contrôleur, 1 base, 1 table, un peu de javascript 50lignes de code à
> tout casser.
>
> Machine :
>
> Linux 2.6.8 Debian Sarge à jour
> Pentium III 1,3Ghz
> 512 Mo Ram
> 2 x 18go RAID 1 SCSI

Avec une telle machine, apache et fastcgi, il étonnant de voir des
performances aussi médiocre.

Soit ta configuration d'apache est mauvaise et donc tu as du seulement
du cgi (ce qui explique la lenteur )
vérifie si tu as cette ligne dans ta conf d'apache :

AddHandler fastcgi-script .fcgi

Soit ton module apache n'est pas chargé.
C2abf44b564df20d54fdd89ac085d7ba?d=identicon&s=25 Bastien Quelen (Guest)
on 2006-02-07 17:01
(Received via mailing list)
vérifié aussi si la webapp rails est configuré en fgci dans le htaccess.

Le 07/02/06, Pierre Fauquembergue <pierre.fauquembergue@gmail.com> a
écrit :
5bb270a2d6a979e5e77b1a50edefdaf5?d=identicon&s=25 John Carter (amin1426)
on 2006-02-08 08:43
salut
essaye le module scgi avec apache.
tu trouvera ici peux etre de l'aide :
http://www.zedshaw.com/projects/scgi_rails/
http://wiki.rubyonrails.com/rails/pages/SCGI+Rails...
Eff13c5bc068b59052e2449d7fb2afba?d=identicon&s=25 Pierre Fauquembergue (Guest)
on 2006-02-09 14:48
(Received via mailing list)
Bonjour,

J'aimerais afficher le contenu d'un répertoire avec la commande :

Dir.foreach("testdir") {|x| puts("Got " + x) }


Dans une vue je place donc le code :

<%= Dir.foreach("testdir") {|x| puts("Got " + x) } %>

Et j'ai une Application error :

Rails application failed to start properly

Pourtant je n'ai pas d'erreur dans les log.

Ai je commis une erreur ?
F16def8015a7562a285c65a14be48540?d=identicon&s=25 Mathieu Chappuis (Guest)
on 2006-02-09 15:13
(Received via mailing list)
Salut,

> <%= Dir.foreach("testdir") {|x| puts("Got " + x) } %>

Les templates erb <%= ne fonctionnent que si l'expression retourne une
valeur simple.

Tu faire comme ça :

<% @mydir=Array::new %>
<% Dir.foreach("c:/") {|x| @mydir << x } %>

<% for myfile in @mydir %>
 <%= myfile %><br />
<% end%>

Mais c'est du code de goret, il est conseillé de mettre le code qui
nourrit @mydir dans un helper.
1bb13907d5b8380fb5b65093ab8359b5?d=identicon&s=25 Eric Daspet (Guest)
on 2006-02-09 15:14
(Received via mailing list)
> Salut,
>
>> <%= Dir.foreach("testdir") {|x| puts("Got " + x) } %>
>
> Les templates erb <%= ne fonctionnent que si l'expression retourne une
> valeur simple.


Sans aller dire que c'est une limitation souhaitable, les templates sont
là pour gérer la couche d'affichage.
Tu peux y faire des boucles, des manipulations des chaines de caractère
(majuscules, troncature), des conditions ...

Tu ne devrais jamais avoir à aller chercher une donnée directement sur le
disque, ou dans ta base de données. Tu ne devrais jamais non plus avori à
calculer une donner ou faire un traitement.

Ce qui est fondamentalement faux ce n'est pas tant que tes variables
retournent des types complexes, c'est que tu fais des traitements et des
accès donnée dans tes templates.


Ton truc devrait être soit dans l'action (si les données sont dépendantes
de l'action), soit dans un helper, soit dans un de tes objets métiers.
Dans aucun cas directement dans le template.



--
Eric Daspet
8546e5131cc66da30ccd062234a75b12?d=identicon&s=25 Frederick Ros (sleeper)
on 2006-02-09 16:03
(Received via mailing list)
Quoting Pierre Fauquembergue <pierre.fauquembergue@gmail.com>:

> Bonjour,

Bonjour

> Dans une vue je place donc le code :
>
> <%= Dir.foreach("testdir") {|x| puts("Got " + x) } %>


Ca ne sortira pas IMHO : <%= .. %> ne redirige pas il me semble la
sortie
standard vers le fichier cree. Essaie avec qq chose dans le genre:

<%= Dir["testdir/*"].map { |x| "Got " + x }.join("\n") %>

ou <%= Dir["testdir/*"].inject(""){|sum,d| sum += "Got " + d + "\n" } %>


Frederick Ros aka Sleeper -- sleeper@jabber.fr
2006ddf092f3a693748d061a66048159?d=identicon&s=25 Olivier AUDRY (Guest)
on 2006-02-10 11:51
(Received via mailing list)
Bonjour,

je me répond à moi même :

dans la debian le module Fastcgi est en fait un module fcgid donc le
AddHandler est différent :

remplacer :

AddHandler Fastcgi-script .fcgi


par


AddHandler fcgid-script .fcgi


et la ça va beaucoup mieux.

Merci pour os conseils.


--
Cordialement

Olivier AUDRY
Unix System Engineer
COLT TELECOM FRANCE
This topic is locked and can not be replied to.