• 04-04-2008, 17:39:33
    #1
    Merhaba Arkadaşlar,



    Çalıştığım şirketin web sitesi (Dil: Asp, Db: Access), sürekli kilitleniyor, bağlantı zaman aşımına uğruyor. Günde 20 defa belki daha fazla başımıza geliyor. Bu sorunu hosting firmasına ilettim ve bana gelen cevap şu şekilde oldu:



    IIS loglarını incelediğimde ASP Kodlamalarınızda bazı döngülerin sonsuza girerek işleyişinizi engellediğini. Böyle durumlarda IIS genellikle bu döngü sayısı artınca kendisi sonlandırıyor. IIS in bu tespiti kritik seviyeye ulaşınca devreye giriyor. Bu geçiş süresinde sayfanızın erişiminde yavaşlık ve zaman aşımları meydana gelebiliyor.

    Açıkçası ben bu anlatımdan birşey çıkartamadım. Sizce sorun nerede ve çözümü nedir?

    NOT: Site her kilitlendiğinde, Plesk panele girip, "IIS Aplication Pool" 'a girip "Stop" edip bir müddet sonra tekrar "Start" ediyorum. Site tekrar faaliyete geçiyor ama bu uzun sürmüyor tekrar kilitleniyor. Yardımcı olursanız memnun olurum. Teşekkürler.
  • 04-04-2008, 17:53:54
    #2
    asp kodlamalar da sorun olabilecegini soylemişler gelen cevap da,
    bunlar neler olabilir sonsuz donguler olabilir ,
    cok fazla veri talebi olabilir ve buna benzer durumlarda bu sorunla karşılaşıyorsunuz.
  • 05-04-2008, 10:29:44
    #3
    Connect.asp nin içeriği şu şekilde. Burada bir hata söz konusu olabilirmi?

    <%
    Set Conn=CreateObject("ADODB.Connection")
    Conn.Open="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../data/ablokdb.mdb") & ";Persist Security Info=False"

    Function Cv(ByVal sData)
    sData = Replace(sData,"'","`")
    Cv = sData
    End Function
    Function CleanID(ByVal ID)
    For I = 0 To 47
    ID = Replace(ID,Chr(I),"")
    Next
    For I = 58 To 255
    ID = Replace(ID,Chr(I),"")
    Next
    CleanID = ID
    End Function
    %>
  • 05-04-2008, 10:44:03
    #4
    Bağlantıyı kapattığınıza eminmisiniz?
  • 05-04-2008, 10:49:31
    #5
    trickster,

    Ben IT ciyim yani asp den falan anladığım söylenemez. Şayet bir sorun görmüş isen rica etsem düzelterek yazarmısın? Malum site çalışmayınca patronlar bize çöküyorlar Bende sizlerin sayesinde düzeltmeye çalışacağım. Teşekkürler..
  • 05-04-2008, 20:32:49
    #6
    Bağlantıyı şu şekilde kurun;

    Alıntı
    Set Baglanti = Server.CreateObject("ADODB.Connection" )
    Baglanti.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../data/ablokdb.mdb" ))

    Sorgu için;

    Alıntı
    SQL = "SELECT * FROM [TABLO İSMİ] order by id desc"
    Set RS = Baglanti.Execute(SQL)
    Fonksiyonunuzu aynı şekilde yazıp çalıştırabilirsiniz.

    Alıntı
    Do While not Rs.Eof


    'Çekilecek veriyi ve işlemleri burda yapın.


    Rs.Movenext
    Loop
    Baglantıyı kapatalım;

    Alıntı
    Rs.Close
    Set Rs = Nothing
    Baglanti.Close
    Set Baglanti = Nothing

    Sanırım bu şekilde işinizi görecektir.
  • 05-04-2008, 20:37:19
    #7
    Birde isterseniz Acces'in yaratacağı hantallıktan kurtulup MySql veya MSSql e geçmenizi öneririm. Yapmanız gerekn tek şey bağlantı satırını değiştirmek olacaktır.
  • 07-04-2008, 11:41:36
    #8
    Trickster,

    İlgin ve yardımların için çok teşekkür ederim. Yazdığın muhakkak ki doğru ama ben uygulamayı beceremedim. Yinede herşey için çok çok teşekkür ederim.
  • 09-04-2008, 17:22:03
    #9
    Access veri tabanını MySQL 'e çevirdim. Tüm tablolar ve tablo içerikleri vs. hepsi ni sql e aktardım. Ve bunu web sunucusuna dump ettim. Sorunsuz olarak.

    Son aşamaya geldim ve tıkandım.

    Yukarıda belirttiğim Connect.asp nin içeriğini, mysql e göre düzenlemem gerekiyor.

    Veritabanına Bağlantıyı Şu şekilde hallettim:

    <%
    mysql_server = "localhost"
    mysql_user = "test"
    mysql_pass = "test123"
    mysql_db = "testdb"
    Connection_DSN= "DRIVER={MySQL ODBC 3.51 Driver}; SERVER="&mysql_server&"; UID="&mysql_user&"; pwd="&mysql_pass&";db="&mysql_db&";"
    Set Baglanti= Server.CreateObject("ADODB.Connection")
    Baglanti.Open Connection_DSN
    %>

    Ancak gerisini getiremedim. Yardımcı olabilecek arkadaşımız varmı?