+ Hozzászól a témához
Oldal: 1 / 2 12 UtolsóUtolsó
Eredmény: 1 - 10 (11) összesen

Téma: szakértői segítségre lenne szükségem

  1. #1
    Adminisztrátor Blog: SEO tanfolyam - második lecke
    Bagi Zoltán logója
    Csatlakozott
    07-04-26
    Hely
    8200, Királynék városa
    Hozzászólás
    3.542

    Alapbeállítás szakértői segítségre lenne szükségem

    Sziasztok!

    A következő dilemmám van, aminek eldöntésére számítok segítségetekre.

    Unalmas óráimat kitöltve elkezdtem egy cms-t írni alapon. A kezdőlapon van három funkció ami ugyanazt a táblát használja inputként. Mit javasoltok sebesség és egyéb megfontolások alapján?
    a) a kimenethez szükséges elemeket a db query szintjén szűrjem, azaz lesz 3 query-m, azonos táblát érintve eltérő where értékkel.
    b) egy query legyen és az eredmény tömböt foreach loopon belül filterzve lökjem egy új tömbbe (array_push) majd dolgozzak vele tovább, azaz legyen egy querym és 2 foreachen belül előállított két új tömböm

    Meglátásaitokat nagyon köszönöm!



  2. #2
    human being Blog: Geri logója
    Csatlakozott
    07-12-15
    Hely
    Middle of nowhere
    Hozzászólás
    3.666

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Idézet Bagi Zoltán eredeti hozzászólása Hozzászólás megtekintése
    Sziasztok!

    A következő dilemmám van, aminek eldöntésére számítok segítségetekre.

    Unalmas óráimat kitöltve elkezdtem egy cms-t írni alapon. A kezdőlapon van három funkció ami ugyanazt a táblát használja inputként.
    hát én ezt sajnos nem értem
    update:
    talán mégis. tehát van egy tábla aminek az adataival 3szor is dolgozol, különböző feltételekkel szűrve azokat.
    ha igy van, akkor sokmindentől függ hogy melyik a jó megoldás. ha sok adat van a táblában akkor gyorsabb a 3 lekérdezés különböző where -ekkel,ha nincs tul sok record a táblában akkor viszont én egyszerre lekérdeznék mindent és utána szűrnék.


    Utoljára módosítva: Geri által : 2010-01-04 15:59
    No Pain, No Gain
    linkbuilding.hu
    ruby on rails
    Give a man a fish and you feed him for a day. Teach a man to fish and you feed him for a lifetime.

  3. #3
    TZ.
    TZ. nem elérhető
    Mentor Blog: Google+1 és Flattr gombok ,,felvarrása"
    TZ. logója
    Csatlakozott
    09-11-06
    Hely
    Budapest
    Hozzászólás
    458

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Az adatbázishoz mindig hozzányúlsz? Mivel bizonyos szolgáltatóknál belassulhat a MySql rajtam kívűl álló okok miatt is, a query-ket általában cache-elni szoktam, még akkor is, ha gyakran modosul az eredményük. Ebben az esetben kb 5 percig tartom meg az eredményeket. Ha ritkén változik, főleg, ha egyértelmű, hogy minek a hatására, akkor az adott hatás kiváltásakor törlöm a cache fájlt.

    No, azért hoztam ezt elő, mert ha az esetk 99,9%-ban cache-ből rántjuk elő a query eredményét, akkor nyílván másképpen kell okoskodni, mint egyébként.

    Ha CMS-t írsz, és mindezt unalmadban :-), akkor szerintem csináld robosztusra!



  4. #4
    human being Blog: Geri logója
    Csatlakozott
    07-12-15
    Hely
    Middle of nowhere
    Hozzászólás
    3.666

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Idézet TZ. eredeti hozzászólása Hozzászólás megtekintése
    Az adatbázishoz mindig hozzányúlsz? Mivel bizonyos szolgáltatóknál belassulhat a MySql rajtam kívűl álló okok miatt is, a query-ket általában cache-elni szoktam, még akkor is, ha gyakran modosul az eredményük. Ebben az esetben kb 5 percig tartom meg az eredményeket. Ha ritkén változik, főleg, ha egyértelmű, hogy minek a hatására, akkor az adott hatás kiváltásakor törlöm a cache fájlt.
    ha nem a kész kimenetet cache-led hanem csak az sql -el eredményét fájl alapon akkor az inkább ront a teljesítményen mint javít. egy fájl megkeresése és megnyitása elég sok időt/erőforrást eszik, ezért én vagy a db-ben menteném le a helyeden a bonyolultabb lekérdezések eredményét vagy nem cache-lnék igy



  5. #5
    TZ.
    TZ. nem elérhető
    Mentor Blog: Google+1 és Flattr gombok ,,felvarrása"
    TZ. logója
    Csatlakozott
    09-11-06
    Hely
    Budapest
    Hozzászólás
    458

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Idézet Geri eredeti hozzászólása Hozzászólás megtekintése
    ha nem a kész kimenetet cache-led hanem csak az sql -el eredményét fájl alapon akkor az inkább ront a teljesítményen mint javít.
    Biztosan van olyan eset, amikor igazad van. Természetesen a lehető legfeldolgozatabb változatot igyekszem cache-elni. A sokat emlegetett webserver nevű szolgáltató azonban rászoktatott, hogy mindenből legyen cache, mert esetleg egy röpke fél órára elérhetetlennél válik az adatbázis... de ez most nem tartozik ide.

    Szóval csak arra akartam kijukadni, hogy a fenti kérdések eldöntésekor érdemes ezt a cache dolgot is mérlegelni és ezzel együtt hozni megfelelő döntést.



  6. #6
    Adminisztrátor Blog: SEO tanfolyam - második lecke
    Bagi Zoltán logója
    Csatlakozott
    07-04-26
    Hely
    8200, Királynék városa
    Hozzászólás
    3.542

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Ha minden igaz a codeigniter tudja cachelni a db-t, de egyenlőre ezen a területen még nem néztem szét. Geri, igen jól értetted. Van a content táblám, amiból legenerálom a tartalom, menü (csak aktív és csak oldalak) és azutolsó x darab blogposzt (csak blogposzt és csak aktív) megjelenítését. A normál oldalak és a posztok azonos táblában van enum-mal kategórizálva. Előre nem tudom sajnos megmondani, mennyi tartalmi elem lesz, mondjuk 100-200 közé becsülném.



  7. #7
    human being Blog: Geri logója
    Csatlakozott
    07-12-15
    Hely
    Middle of nowhere
    Hozzászólás
    3.666

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Idézet Bagi Zoltán eredeti hozzászólása Hozzászólás megtekintése
    Előre nem tudom sajnos megmondani, mennyi tartalmi elem lesz, mondjuk 100-200 közé becsülném.
    én 3 külön query-vel csinálnám.



  8. #8
    Tag Blog: 2011. március-április
    todi logója
    Csatlakozott
    09-12-22
    Hely
    Budapest
    Hozzászólás
    59

    Alapbeállítás re: szakértői segítségre lenne szükségem

    na én biztos 3 lekérdezést csinálnék, mert ha mindegyikből csak az első 10-et szeretnéd kiíratni, akkor egyszerűbb limit 0,10 mint szűrni a tömböt, hogy legyen benne 10 elem.



  9. #9
    Új tag
    Csatlakozott
    10-01-08
    Hozzászólás
    25

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Idézet Bagi Zoltán eredeti hozzászólása Hozzászólás megtekintése
    b) egy query legyen és az eredmény tömböt foreach loopon belül filterzve lökjem egy új tömbbe (array_push) majd dolgozzak vele tovább, azaz legyen egy querym és 2 foreachen belül előállított két új tömböm
    Ha már optimalizálás, array_push() helyett javaslom a [] -t, hacsak nincs feltétlen szükséged az array_push-ra valamilyen megfontolásból.

    Idézet PHP.net-ről:
    Note: If you use array_push() to add one element to the array it's better to use $array[] = because in that way there is no overhead of calling a function.



  10. #10
    Bölcs Blog: HTML KickStart HTML5 - jQuery
    arth2o logója
    Csatlakozott
    10-03-11
    Hely
    Győr
    Hozzászólás
    523

    Alapbeállítás re: szakértői segítségre lenne szükségem

    Szia!
    A codeigniter tényleg tudja cachelni a kéréseket, de okozhat meglepetést, ha elfeledkezel róla. Gyakorlatilag amíg le nem jár, addig folyamatosan u.a. az adatokat kapod vissza.

    Én úgy szoktam, hogy a kérés eredményét letárolom, bizonyos ideig. Persze az adatokat ki indexelem több módon, ahogy éppen listázni szeretném. (id, kategória, stb..)

    Ha megvan a cache tartalom, nem indít kérést a mysql felé, ha nincs végrehajtja.
    Olcsóbb egy fájlművelet, mint egy DB.
    De használhatsz SQLite3 adatbázist a MySQL helyett és akkor ez már nem annyira számít.

    Most látom milyen régi bútordarabhoz szóltam hozzá



+ Hozzászól a témához
Oldal: 1 / 2 12 UtolsóUtolsó

A téma címkéi:

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76