Merhaba, Güzel konulara değinmişsiniz. ancak yine de persistence layerların database lerin TAM ANLAMIYLA performans özelliklerini kullanabilmeleri her zaman mümkün olmuyor.
örneğin oracle ın lag, lead vs. analytik fonksyonları, mysql in group_concat vs. özel fonksiyonları (postgre ile çok tecrübem olmadığı için onunla ilgili örnek veremedim). tabi her durumda bunların kullanılması elzemdir gibi bir iddam yok. eğer öyle olursa kodun bakımı ve anlaşabilirliğiyle ilgili sıkıntılar yaşanacağı da aşikar. ama benim demek istediğim bazen öyle durumlar oluyorki. elle yazacağınız bir sql sizi bir çok sıkıntıdan kurtarıyor. Büyük performans artışları sağlayabiliyor. Ama elle yazacağınız zaten persistence api yazıyorsa üstüne bir de bu sqlin sonuçlarıyla ilgili cache mekanizması varsa yazılımın olmasa bile en azıdan yazılımcının performansını arttırcağı kesin. :) Yoksa Not Invented Here sendromu yaşamaya gerek yok. Kolay gelsin. 2009/10/27 Bora Güngören <[email protected]>: > > Merhaba, > > Hibernate ve hemen tüm diğer ORM araçları için - neden bilmem - sürekli > olarak "işi hızlandırmaz" ifadesi kullanılır. > > Eğer Hibernate'i (veya başka bir ORM aracını) sadece ilkel özellikleri > ile kullanırsanız, o zaman özellikle bir hızlanma hissetmezsiniz. Ancak, > > - ön yedekleme > - tembel yedekleme > - bağlantı havuzu en iyileme > > gibi özelliklerini devreye alır ve ince ayarlarını yaparsanız ve > > - vt işlem (transaction) yönetimi > > işini Hibernate'e verirseniz, o zaman farklı bir tablo ile > karşılaşabilirsiniz. Bu işleri elle yapabileceğinizden daha iyi biçimde > ve dinamik olarak yapacaktır. > > En iyileme işinde, değişik ORM araçları > > - lineer programlama > - yapay sinir ağları > - genetik programlama > > gibi değişik teknikleri kullanıyorlar. Bunlar kesinlikle elle tasarım > yaparken göremeyeceğimiz ilişkileri - bir şekilde - kullandıkça öğrenip > onlara hazırlıklı olan şeyler. > > VT performansını en iyilemek için artık programcının yapacağı şey > karmakarışık SQL ler yazmak değil, verinin kendi içindeki ilişkileri > daha iyi düşünüp, VT yöneticisi ile bunlar kısıt mıdır (constraint) > değil midir gibi VT ince ayarına yardımcı şeyleri tartışmak. > > Bu arada > > - kısıtlar > - tetikler > - izolasyon seviyeleri > > türünden VT ince ayarlarınız varsa, Hibernate'e bunları da anlatmak mümkün. > > Hibernate in Action ve yeni baskısı olan Java Persistance in Action'da > Christian Bauer ve (Hibernate'in ana geliştiricisi olan) Gavin King > bunları gerçekten çok güzel anlatmış. Açıkçası herhangi bir projede > Hibernate kullanmadan önce hızlıca okunması gereken bir kitaptır. > > Sevgiler, > > Bora. > > > serdar güler wrote On 26-10-2009 18:07: >> Hibernate gibi database ile uygulama arasına koyulan katmanların >> performans olarak uygulamaya kattıkları çok bir şey yok ama uygulamayı >> yazan kişilerin performansı katabilecekleri çok şey var. sorgu yaz, >> çalıştır, sonuçları bir yere doldur gibi sıkıcı işleri hibernate vs. >> bir persistence layer a ye bırakıp standart işlerle uğraşmak yerine >> uygulamanın özü ile uğraşmak için vaktiniz oluyor. >> >> diğer yandan unutmayınki sql bilginiz iyi ise uygulamanın kritik >> yerlerine kendi yazacağınız sqller ile performans artışları >> sağlamanız da mümkün olacaktır. yine de bu hibernate ten vazgeçmek >> için neden değildir. >> >> kolay gelsin... >> >> 2009/10/26 Onur Canci<[email protected]>: >> >>> Merhaba, >>> >>> >>> Yeni geliştirmeyi düşündüğüm java tabanlı bir web projesi için alt yapı >>> araştırması yapıyordum. >>> Listedeki konu ile ilgili arkadaşlarında bir fikrini almak istiyorum. >>> >>> Java ile geliştirilen projelerde hibernate kullanmak performans olarak ne >>> kadar faydalıdır? >>> Yani sql performansını artırır mı? Memory kullanımı nasıldır? Tomcat >>> çalıştıracak >>> bir ortalama bir sunucu üzerinde sistemde hafıza darboğazına yol açar mı? >>> >>> Genel olarak hibernate vs. standart jdbc bağlantısı ile DAO katmanı yazmak >>> arasındaki >>> artı ve eksiler nelerdir? >>> >>> İnternette araştırdım ancak sadece genel bilgilere ulaşabildim. Bu konuda >>> tecrübe sahibi arkadaşlar >>> yorum yazabilirlerse sevinirim. >>> >>> Teşekkürler, >>> -- >>> M. ONUR CANCI >>> >>> _______________________________________________ >>> Linux-programlama mailing list >>> [email protected] >>> http://liste.linux.org.tr/mailman/listinfo/linux-programlama >>> >>> >>> >> >> >> > > _______________________________________________ > Linux-programlama mailing list > [email protected] > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > -- Serdar Güler _______________________________________________ Linux-programlama mailing list [email protected] http://liste.linux.org.tr/mailman/listinfo/linux-programlama
