To jest dyskusja, którą prowadzę i niektórzy z moich współpracowników sądzili, że przyjdę tutaj i zobaczę, czy uda się osiągnąć ogólny konsensus.
Zasadniczo sprowadza się do następujących 2 opinii na temat wywołań bazy danych: 1. Wykonaj jedno duże połączenie, aby uzyskać wszystko, co może być potrzebne do zmniejszenia liczby wywołań bazy danych 2. Wykonaj mniejsze oddzielne połączenia w oparciu o to, co jest wymagane, aby zmniejszyć rozmiar Wywołania DB
Szczególnie dotyczy to wspólnego kodu. Skorzystamy z przykładu klasy pracowniczej, ponieważ jest to dość proste.
Powiedzmy, że twoja klasa pracownika ma 10 atrybutów wartości (imię, nazwisko, wynajęty itp.), A następnie 2 atrybuty klasy ... 1 wskazujący klasę działu, a następnie 1 przełożonego, który wskazuje na inny obiekt pracownika.
W myśleniu nr 1 wykonałeś jedno połączenie, które zwraca dane pracownika, a także pola potrzebne do wypełnienia atrybutów działu i przełożonego ... lub przynajmniej pola najczęściej używane z tych podobiektów.
W myśleniu nr 2 najpierw wypełniasz obiekt pracownika, a następnie wypełniasz obiekty Departamentu i Inspektora tylko wtedy, gdy są one faktycznie wymagane.
Postawa 2 jest dość prosta ... zminimalizuj rozmiar żądań i liczbę obiektów bazy danych, które muszą zostać trafione za każdym razem, gdy zostanie wykonane jedno z tych żądań. # 1 polega na tym, że nawet gdyby można go poprawnie zaimplementować, sam fakt, że kod musiałby nawiązywać wiele połączeń, spowoduje większe obciążenie połączenia między serwerem internetowym a bazą danych, zamiast zmniejszać go.
Siłą napędową badań jest to, że ilość ruchu między naszym serwerem a serwerem bazy danych wymyka się spod kontroli.