• 22-01-2010, 22:26:32
    #10
    dakikalarca veri çekim süreci olacağı için js kullanarak tarayıcının çökme ihtimali ile verileri yarım yamalak çekme riskini alamıyorum. Tüm olayı server kısmında halletmeyi istiyorum. Bu amaç için sleep bana daha cazip geliyor. Sdemir hocama ve tüm mesaj yazanlara teşekkürler.

    Darklı bakış açıları ve yorumlarda gelse güzel olur aslında..


    Saygılar
  • 22-01-2010, 23:05:59
    #11
    THR
    Üyeliği durduruldu
    sleep bir süreden sonra timeout olur ona dikkat et
  • 23-01-2010, 00:01:54
    #12
    THR adlı üyeden alıntı: mesajı görüntüle
    sleep bir süreden sonra timeout olur ona dikkat et

    timeout tan kastınız php.ini içinde belirlenen max php istem yordamlama sürecinin aşılması mı?
  • 23-01-2010, 02:00:11
    #13
    THR
    Üyeliği durduruldu
    mally328 adlı üyeden alıntı: mesajı görüntüle
    timeout tan kastınız php.ini içinde belirlenen max php istem yordamlama sürecinin aşılması mı?
    evet. benimde senin gibi sorunum vardı ben iki dosya yaptım biri bot1.php biri bot2.php bat1.php de konuları buluyodu bot2.php de konu linkini get ile aldığında konudaki bilgileri çekiyodu.

    bot1.php de preg_match_all ile bütün konu linklerini alıp 20 tane iframe 'e koydum iframeler bot2.php get ile onlara linki verdim gayette güzel olmuştu
  • 23-01-2010, 10:07:57
    #14
    Üyeliği durduruldu
    mally328 adlı üyeden alıntı: mesajı görüntüle
    timeout tan kastınız php.ini içinde belirlenen max php istem yordamlama sürecinin aşılması mı?
    evet. set_time_limit(0) dan bahsediyor.
  • 23-01-2010, 14:10:18
    #15
    mally328 adlı üyeden alıntı: mesajı görüntüle
    @Invictus : Hocam dedğiniz gibide yaparım ama sonucta değşiklik olmayacak galiba. İki yöntemlede bot verileri eş zamanda bitirir. Ve serverlar gerim gerim gerilir. Benim asıl amacım işlem yoğnluğunu zamana yayarak hem kendi serverımı hemmde karşı siteyi minumum yorarak
    işi gerçekleştirmek.
    diğer sayfalara geçişlerde meta refresh kullanırsın 5-10 saniye de gibi de bi değer verirsin gerilmez aynı dediğin şekilde kategori konu ve konudaki bilgileri almak için kendime yapmıştım bi script 40k konuyu bu şekilde çekmiştim. açtım browseri kategori ve konu linklerini çektikten sonra bot3.php db'den konu linklerini çekip her seferde 10 konuya bağlanıyordu sonra meta refresh ile diğer sayfaya geçiyordu, browseri çalıştırdım kendisi halletti. 40-50k falan konu vardı hiç te takılma falan olmadı
  • 23-01-2010, 14:46:28
    #16
    kategorideki for döngüsünü bir yere kayıt et.İlerki döngüleri 0 yerine ordan başlat. ve her çalışınca 1 kategori çekmesi için exit(); koy.
  • 23-01-2010, 18:32:45
    #17
    Peki bu bahsettiğiniz yöntemlerin çoğunu deneyeceğim. Performansı ölçebileceğim bir kod var mı? Gerek sayfanın kaç saniyede yuklendiği, gerek ne kadar ram - cpu yediği gibi?
  • 23-01-2010, 19:43:40
    #18
    Ve botu biraz önce çalıştırdım. Hiç bekleme yapmadan sleep v.b. siz çalıştırdım. Netten 1000 adet topic ve içindeki 20 şer parametrelik veriyi + ortalama 10 resimi çektim. Ama sadece çektim. Daha mysql e insert etmedim. Geleni echolattım. Sonlanan sayfası kaydettiğimde 106 mb resim ve 3bucuk mb html verisi olduguu gördum. Totalde 110 mb gibi bi rakam.

    Sadece bu iş için 28 dakika tarayıcı hareketsiz bekledi. Bu esnada %25 lerde gezinen cpu aralıksız %74civarında durdu.

    Sleep ile deneyeceğim birde. 1000 topic çekeceğim. Her topic (başlık) verisi çekildiken sonra iki sn bekleteceğim. 1000 x 2 sn = 2000 sn. 60 a bölersek 33 dakika yapacak. demekki sleep komutu 33 dakika bindirecek bana. Beklemesiz verileri 28 dakikada çektiysem bu 2saniye sleep li veri çekimi 1 saatten cok surecek demek. Ama sleebi kullanmaktaki en buyuk amacım serverı kastırmamak. Sure bunun için öok önemli değil. Sleep le de 1000 konu baslıgı ve içeriğini 1 saat civarında cekebilirsem tarayıcıdan tercihim sleep olacaktır.

    NOT: sleep li komutuda denedim . 1saat 7 dakikada cekti verileri. ( 1000 başlığı ve içeriğini) Cpu da cok rahattı. Tercihim şimdilip sleep le ara ara dinlendirilmiş komut.