Gentoo Archives: gentoo-user-hu

From: "Császár Péter" <csjpeter@×××××.com>
To: gentoo-user-hu@l.g.o
Subject: Re: [gentoo-user-hu] Az evszazad poenja.
Date: Wed, 26 Nov 2014 15:03:58
Message-Id: 5475EBDF.4000003@gmail.com
In Reply to: Re: [gentoo-user-hu] Az evszazad poenja. by Testa
1 Szia László!
2
3 Az igen kurta nodejs doksi alapján:
4 http://nodejs.org/api/fs.html#fs_fs_statsync_path
5 arra tippelek, hogy egészen egyszerű stat rendszerhívás lehet a háttérben:
6 http://linux.die.net/man/2/fstat
7
8 Márpedig ehhez nem kell megnyitni egy fájlt sem. Továbbra is erősen
9 gyanús hogy súlyos programhiba van a háttérben.
10
11 Bár a /proc/sys/fs alatti dolgokkal nem vagyok érdemben ismerős, a
12 /proc/sys/fs/inotify egy könyvtár és alatt nálam az alábbi fájlok annak
13 benne (tartalommal):
14 max_queued_events (16384)
15 max_user_instances (128)
16 max_user_watches (524288)
17
18 Ezek egyike sem jelent milisec-enkénti korlátozást. Viszont, ha jól
19 értem ezek olyasmiről szólnak, hogy értesítést lehet kérni a kerneltől
20 ha egyik vagy másik fájl változik. Valószínű hogy az fs.statSync-ben van
21 ilyen figyelés is kérve, s azok túl későn lesznek elengedve. Talán
22 mintha ugyanazon 300 fájlt többszörösen is figyelni próbálná a script.
23 És lehet hogy csak előre leprogramozott intervallumonként fut le az a
24 kód ami elengedi a fájl figyelést. Ez pedig programhiba. Ha van elég
25 memóriád emelheted ezeket a limiteket, jóformán kockázat nélkül. De
26 azért jobb ha utánaolvasol, hogy pontosan mi a szerepe ezeknek egyenként.
27
28 Mégis, én inkább nem demóznék egy olyan kétes programot, ami egy stat
29 hívás-t, mely nem igényel fájl megnyitást sem, nem tud biztonsággal
30 végrehajtani. Egyébként is, a rendszernek számtalan olyan karbantartási
31 feladata van melyhez esetenként sok fájlt kell megnyitnia és bezárnia.
32 Mégis működik nem? Ez nem kernel-beállítás hanem valami nodejs-sel vagy
33 a nálad lévő scripttel kapcsolatos hiba lesz.
34
35 Üdv,
36 Péter
37
38 2014-11-26 14:13 keltezéssel, Testa írta:
39 > Szia Peter,
40 >
41 > Koszi a valaszod.
42 > Meg egzsyer meg probalom meg fogalmazni.
43 > Egy 200 sorros scriptrol beszelunk ami egy set interval utan csinal 300
44 > fs.statSync et... (ha read lenne akkor lassabb lenne es nem lepne fel a
45 > hiba.)
46 > Persze tudom hogy az emelt file rendszer cache a fo ok amiert ilyen
47 > gyorsan kepes az olvasast vegre hajtani a rendszer. Szoval technikailag
48 > az en hibam is. De szuksegem van erre a teljesitmenyre... ( Mivel a
49 > rendszer egy demonstracio )
50 >
51 > A problema az hogy a linux kernel 8 file megnyisat teszi lehetove ms
52 > ekenkent... Probaltam a /proc/sys/fs be meg talalni a erre a megoldast.
53 > Ugyan meg is talaltam a /proc/sys/fs/inotify ba amit keresek. De ezt nem
54 > merem 300 ra allitani. Ha persze a programot le lassitom akkor
55 > tokeletesen fut. Viszont nem hiszem hogy ez hosszu tavon jo megoldas...
56 > (Teny jelenleg ezt a modszert valasztottam)
57 >
58 >
59 > Udv
60 > Laszlo
61 >
62 > On 11/26/14 12:50, Császár Péter wrote:
63 >> Szia Testa,
64 >>
65 >> Kissé homályos hogy mi is történik pontosan, de majdnem biztos vagyok
66 >> benne hogy vagy az a nodejs progi, vagy az általa használt libekben
67 >> valahol súlyos hiba van. Helyesen megírt program nem fog elszállni csak
68 >> mert gyorsabb gépet teszünk alá.
69 >>
70 >> Szóval a helyedben én írnék egy bugriportot, ha fontos ez a program a
71 >> számodra.
72 >>
73 >> Üdv,
74 >> Péter
75 >>
76 >> 2014-11-26 13:08 keltezéssel, Testa írta:
77 >>> Hello mindenki,
78 >>>
79 >>> Tenyleg olyan hibam van amit nehez elhinni.
80 >>> Nem gentoos hiba de remelem lesz valakinek otlete.
81 >>> Szoval. Adott egy nodejs program ami olvas a file 300 filet.
82 >>> Ezt elvegzi minden masodpercben.
83 >>> A program tokeletesen mukodik majdnem minden desktopon.
84 >>> Ha az nem i7 es a merevlemez nem egy jo gyors ssd es nincs szanaszet
85 >>> optimalizalt gentoo a rendszeren.
86 >>> Sajnos ssd -n plusz i7-en vagy xeon-on olyan gyors hgy a sigserv kilovi.
87 >>> (XEON on mar az elso olvasas meghal, i7 en en csak a madsodik ellenorzes)
88 >>> Sajonos ez nodejs es nem tudok wait-et/sleep-et hasznalni.
89 >>> Van ra mod hogy a file limitet/ms -et atirjam ?
90 >>>
91 >>>
92 >>> Elore is koszi.
93 >>>
94 >>
95 >
96 >

Replies

Subject Author
Re: [gentoo-user-hu] Az evszazad poenja. Testa <testa.a.tapos@×××××.com>