Hafif bir alışveriş sitesinde XML aksine veritabanları Faydaları?

9 Cevap php

Ben JSP ve XML tabanlı hafif bir online alışveriş sitesi var, ve ben PHP ve MySQL, diyelim ki, aksine bu sistemin özellikle zayıf yönleri nelerdir merak ediyorum?

JSP Java API'lerini kullanabilirsiniz biliyorum, ama ben PHP HTML ile bir daha "doğal" bir ilişki vardır ve aynı zamanda dinamik yazdığınız olma faydaları vardır, ve çok daha yaygın ve talep olduğunu hissediyorum. Bunun bir nedeni var mı?

9 Cevap

Ben bir olacak bir veritabanı üzerinde XML çözümün ana dezavantajları söyleyebilirim:

  1. arama hızı
  2. güncelleme hızı
  3. ölçeklenebilirlik
  4. eşzamanlılık (teşekkürler Jonathan)

Hafif görecelidir. Veritabanı çözümü için gidin. Lütfen "hafif" site "misyon-kritik" olduğunda asla bilemezsiniz

Bu çok küçük bir öğrenme eğrisi vardır ve rahat bir geliştirici almak ve kullanmaya başlamak için kolaydır çünkü PHP genellikle daha yaygın ve talep edilir. Aynı zamanda en Apache linux tabanlı sunucularda yükler ile genellikle birlikte geliyor zarar vermez.

Yukarıdaki sonucunda, sadece bir kartopu etkisi yaratır orada herhangi bir dilde, yaklaşık PHP için bir yavru kuş geliştirici yardımcı olmak için pek fazla iyi (ve kötü!) Kaynaklar vardır.

Özgün soru ile ilgili XML, çok az ürün muhtemelen açıklayan mimarisini kullanarak yıkmak değil, ama, bir öğe veritabanı arama stok takibi ve bu gibi eylemler ile düşük hacimli mağaza temel bir alışveriş sepeti uygulaması cevaplamak için iyi bir veritabanına yaptı.

İşte o zaten çalışıyorsanız buysa JSP kapalı taşımak gerekir anlamına gelmez bir veritabanına değişen dedi.

Ben JSP ve XML tabanlı hafif bir online alışveriş sitesi var, ve ben PHP ve MySQL, diyelim ki, aksine bu sistemin özellikle zayıf yönleri nelerdir merak ediyorum?

JSP ve PHP hem görünümü teknolojilerdir. JSP güçlü bir dil ve platform Java (EE) tarafından desteklenen olma avantajına sahiptir. PHP hiç kolay ve çoğu kamu uyarlanamıyor web programlama dili olma avantajına sahiptir. Dezavantajları kendisi için konuşur.

, OO ideoloji aşağıdaki sağlam bir Web uygulaması geliştirmek JSP'yi almak için (sürece kullanarak içinde 90'larda şekilde ham Java embed kodu yok gibi scriptlets ). Eğer aceleniz ve / veya gelecekteki sürdürülebilirliği umurumda değil ve bir gün bir e-ticaret web sitesi geliştirmek istiyorsanız, o zaman PHP almak.

XML ve RDBMS veri depolamak için iki yolu vardır. Sırayla RDBMS, ancak, son derece daha verimli hiç mümkün XML ile daha yapılabilir belirli verileri seçmek ve işlemek için dili olarak SQL kullanmak için yeteneği sunar.

PHP + MySQL ile JSP + XML karşılaştırma biraz portakal ile elma karşılaştırmak gibidir. XML, ancak bir veri deposu olarak çok daha fazla ısırır, böylece gerçekten PHP ile gider "rağmen" MySQL tercih ederim. Ancak Java ile iyi gibi veritabanlarına erişebilirsiniz. Başlatmak için, orada JDBC API için var. Tüm tüm, ben JSP + SQL tercih ederim.

JSP Java API'lerini kullanabilirsiniz biliyorum, ama ben PHP HTML ile bir daha "doğal" bir ilişki vardır ve aynı zamanda dinamik yazdığınız olma faydaları vardır, ve çok daha yaygın ve talep olduğunu hissediyorum. Bunun bir nedeni var mı?

Bu programlama hakkında hiçbir şey bilmeden olanlarla pikap için en kolay. Eğer olması gereken tüm basit bir web sunucusu ve bir texteditor olduğunu. Bu anında geri bildirim vardır ve sayısız öğreticiler ve internet üzerinde mevcut kod parçacıkları olduğu gibi PHP ile geliştirmek için çok hızlı. Dahası size sağlam bir JSP / Servlet hosting için biraz daha fazla ödemek zorunda iken free PHP web hosting de çok fazla seçenek var.

Eğer varlıklar arasındaki ilişkileri olan tahmin bir durumda iseniz, ben çok daha zor bir ilişki veritabanı daha çalışmak olmak için XML bulduk. XML ile korkunç bir ağrı olduğunu ilişkiler (bellekte bu ilişkilerin bir harita korumak ya da tekrar tekrar dosyaların büyük setleri okumanızı gerektiren) sorunlara neden var ne belirleyici, ama bilgi tutarlılığını korumak değil sadece. Hatta bazı taksonomisine göre öğeleri sınıflandırmak gibi basit bir şey (X bir çim biçme olan dış donanımları bir tür ... bir tür olduğunu) sen olduğundan emin olmak için bazı dış araçlar geliştirmek zorunda kalacak gibi XML, bir sorun olur tutarlı bir kelime kullanıyor. Bir RDBMS ile, sadece ebeveyn ve çocukların kimlikleri açısından bir tablo var. Deposunda herhangi bir madde sadece taksonomi kimlikleri başvurabilirsiniz.

XML ile çok yapmaya çalıştım zaman, kendimi kabaca dış araçları özensiz bir koleksiyon ile bir RDBMS en kullanışlı özelliklerinden bazıları yeniden buldum.

(My) SQL çok iyi çalışır çünkü bir e-ticaret için veri depolama olarak XML kullanarak, performans sorunları nedeniyle bu olağan değildir ve iyi. Eğer yeni bir şey denemek istiyorsanız, MySQL ile XML takas. Ben aslında, ben dili değiştirmek eğer önemli bir verimlilik dalış farkedeceğiniz düşünüyorum, programlama dilini değiştirme ile herhangi bir gerçek fayda görmüyorum.

İlgili, ama konu dışı: Eğer "hafif" dedin? Bu durumda, sqlite XML ve veritabanı hem de yenebilir ..

Sadece işlem veri depolamak ediyorsanız bir RDB çözmek olmaz herhangi bir sorun yok. Veri daha belge odaklı (messier) Ama eğer, birkaç yerli xml veritabanları ve XQuery arayüzleri herhangi bir bakmak isteyebilirsiniz.

, (büyük şeyler için) Documentum XDB, Oracle Berkeley, MarkLogic var sadece bir kaçıdır. Ayrıca http://en.wikibooks.org/wiki/XRX ilginizi çekebilir

Farklı bir çivinin üzerine, sen CouchDB json bakmak olabilir.