![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 532 Pomógł: 24 Dołączył: 15.04.2011 Skąd: Kalisz Ostrzeżenie: (0%) ![]() ![]() |
Co będzie szybsze w aplikacji z około 20-30 pluginami (zakładając, że jeden plugin to jeden plik PHP) a ten plugin zawiera co najmniej jeden Hook:
1. Podczas instalowania pluginu wywoływać specjalną metodę (np. install), która za pomocą jakiegoś wrappera doda do bazy danych hooki, które ten plugin uzywa i później pobierać z bazy danych wszystkie rekordy z pluginami, które używają ten hook. 2. Podczas inicjalizacji systemu ładować wszystkie pliki pluginów i wywoływać ich metody (np. init), które to dodają na poczekaniu, do listy hooków, te, z których będą korzystać, i w tedy będziemy mieli wszystkie te, które będziemy mieli użyć już w tablicy. Obydwa wyjścia mają wadę. Pierwsze - niepotrzebne zapytania do DB, tyle zapytań, ile wywołań hooków. Drugie - niepotrzebne ładowanie tylu plików i odpalanie tylu metod z każdym requestem. Jak można to rozwiązać, by zwiększyć szybkość tego działania, jakie zastosować Cachowanie? Ten post edytował adbacz 19.08.2014, 14:20:13 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
obojętnie jakie, zapisujesz sobie wynik w pliku jako serializowana tablica i działasz potem na niej.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Warto poczytać o wzorcu obserwator i lazy loading (IMG:style_emoticons/default/smile.gif)
Ten post edytował CuteOne 19.08.2014, 14:32:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 00:09 |