[Linux-programlama] Re: InnoDB Update Problemi

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Huseyin Gomleksizoglu (huseyin.gomleksizoglu@linux.org.tr)
Date: Sat 04 Aug 2007 - 16:23:14 EEST


Bence session ayakta mı değil mi diye bakmak için update'in sonucuna
bakmak çok masraflı. Basit bir memory tablosu veya bir myisam tablosu
üzerinden select atarak birşeyler yapmayı deneyebilirsin bence. Eğer
session üzerinde transactional bir işlem yapmıyorsan myisam türü bir
tablo kullanabilirsin veya sistem kapanıp açıldıktan sonra sessionları
tutmak istemiyorsan memory türünde bir tablo daha uygun olur.

Ayrıca eğer mysql'i sen yönetiyorsan my.cnf dosyasındaki memory
kullanımlarını ve ayarları gözden geçirmen de iyi olur. Mesela innodb
dosyasının boyutu sürekli olarak artıyorsa bu da performansı etkiler.

Ayrıca SessionId'nin PK olduğunu ve SessionLastMove üzerinde de Index
olduğunu düşünüyorum. Eğer yoksa onlara index koyman gerekir.

On 8/4/07, Agâh ALICI <agah@sakarya.edu.tr> wrote:
> Merhabalar,
>
> Şöyle bir problemim var.
> Kullandığım CMS sisteminde kullanıcı oturumunu yönetmek için;
>
> UPDATE session SET
> SessionLastMove = '1186232253',
> SessionPageUID = '2a5z8debcc95f76dca753b84c68b14b9',
> SessionPageReferer = 'http://http.referer.site ',
> SessionVars='',
> RandomHashKey = '5dc7f49e5b95fc714e72be728d597057'
> WHERE SessionID = 'acddf252....' AND SessionLastMove > 1186230813
>
> gibisinden bir sorgu çekiyorum.
>
> Bu sorgu sonucunda değişen satır olursa bu kullanıcı hala oturumunu devam
> ettiriyor diyorum.
> Eğer affected_rows boş gelirse, ya oturumu dolmuş yada yeni oturum açıyor
> diyorum ve işleme devam ediyorum
>
> Problem ise şurda.
>
> Sistemin yoğun kullanıldığı zamanlarda (yada saldırı geldiğinde) bu tabloya
> yapılmaya çalışılan update'ler oldukça uzun sürüyor (bazen 10sn ye kadar
> çıkabiliyor). Buda apache nin yanıt verememesine ve kuyruktaki
> kullanıcıların artmasına buda sistemin göçmesine kadar gidebiliyor.
>
> Bunu engellememin bir yolu varmıdır MySQL tarafında?
> Yoksa program algoritmasını mı değiştirmem daha uygun olur?
>
> Teşekkürler.
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama@liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.