Kiedy pyta, co jest „najlepsze” rozwiązanie, że to dobry pomysł, aby to kryteria oceny - prędkość, koszt, prostota, konserwacji, itp
Odpowiedź Mikko Maunu dał dość dużo na pieniądze. Nie używałem Informix od 20 lat, ale większość baz danych jest nieco powolna, gdy mamy do czynienia z BLOB-em, zwłaszcza że krok na drodze do przeniesienia BLOBa do bazy danych może być powolny.
Ten problem jest coraz gorszy, ponieważ coraz więcej użytkowników uzyskuje dostęp do systemu w tym samym czasie, zwłaszcza jeśli używa aplikacji internetowej - serwer aplikacji musi dość ciężko pracować, aby pobrać i wyrzucić pliki z bazy danych, prawdopodobnie zużywa znacznie więcej pamięci dla tych próśb niż normalnie i prawdopodobnie zajmuje więcej czasu, aby ukończyć żądania związane z plikami niż dla "normalnych" stron.
Może to prowadzić do spowolnienia serwera WWW przy tylko umiarkowanym obciążeniu. Jeśli zdecydujesz się na przechowywanie dokumentów w bazie danych, zdecydowanie zaleciłbym przeprowadzenie testów wydajności, aby sprawdzić, czy masz problem - takie rozwiązanie może ujawnić błędy w konfiguracji, które w innym przypadku nie mogłyby wyjść na jaw (powolna sieć połączenie z serwerem bazy danych, niewystarczająca ilość pamięci RAM na serwerach internetowych itp.)
Aby tego uniknąć, zachowałem "master" kopie dokumentów w bazie danych, aby wszystkie zostały połączone, a ja może zadawać pytania bazy danych, takie jak "czy mam wszystkie dokumenty dla użytkownika x?".Jednak użyłem pamięci podręcznej na serwerze internetowym, aby uniknąć konieczności czytania dokumentów z bazy danych bardziej, niż było to konieczne. Działa to dobrze, jeśli masz rozwiązanie "napisz raz, czytaj wiele", takie jak system zarządzania treścią, w którym pamięć podręczna może zarobić na swoje utrzymanie.
Jakiej bazy danych zamierzasz użyć? –
Dobrze, to Informix 10.X –
Przypuszczam, że jedyną punktową bazą danych byłby dostęp do współbieżności ... Ale w każdym razie, bazy danych również używają plików (niektóre z nich najczęściej korzystają z pamięci RAM, ale po wypełnieniu buforują pliki). Bezpośrednie użycie plików zapisze zasoby DB (połączenia, zapytania itp.) – PEM