Post
#1
|
|
|
Grupa: Przyjaciele php.pl Postów: 790 Pomógł: 7 Dołączył: 6.02.2003 Skąd: Polska Ostrzeżenie: (0%)
|
Zbudowałem mechanizm kolejki ale mam kilka pytań.
Co do dodawania zadań: Zapisuje zadania w tablicy. Moje pytanie: Czy bardziej opłaca się dodawać zadania na początku tablicy i potem usuwać wykonane zadania funkcją array_shift :? Czy też może lepiej dodawać zadania na końcu tablicy i wykonywać zadania czytając tablicę od końca :?: Kolejkę wykorzystuję wtedy, gdy jakiś moduł wymaga, aby użytkownik był zalogowany. Wtedy dodaję do kolejki zadanie, a następnie odsyłam na stronę logowania. Po zalogowaniu user zostaje automatycznie przeniesiony na właściwą stronę. Ale moje drugie pytanie brzmi: Czy można wykorzystać kolejkę jeszcze do innych modułów, zadań :?: I trzecie: Co, jeśli w kolejce są zadania, a użytkownik przegląda inne strony :?: (bo np. zrezygnował z oglądania strony zastrzeżonej dla użytkowników) Co zrobić z takimi zadaniami :?: Skasować je, przedstawić użytkownikowi, przymusowo go tam odesłać :wink: :?: Czwarte: Gdzie przechowywać kolejkę :?: Bo ja wymyśliłem, że przechowuję ją w tablicy, a następnie zapisuję reprezentację zmiennej (funkcja serialize i unserialize) w bazie danych. Czy to jest optymalne rozwiązanie :?: Czy raczej powinienem zastosować inny zapis danych z kolejki :?: Na koniec. Nie jestem przekonany do tego, żeby temat leżał na php Pro, ale może się tu nadaje. Przeczytałem chyba wszystko co było na temat kolejki na forum, ale nadal mam pewne wątpliwości. Wybaczcie, że tak dużo czytania :wink: |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław |
Czy bardzeij opłaca się dawać zadania na początku?
Są dwa tyty kolejki: 1. First In First Out (stos) 2. First In Last Out (przynajmniej o takich mnie w szkołach uczyli) Musisz się zdecydować na jeden z nich. Ja lubię FILO. Każdy moduł/zadanie może mieć kolejkę podzadań - i tak w kółko, aż do elementarnej operacji. Kolejkę możesz użyć np. do zapisu templatesów, które należy wyświetlić, lub do ustalenia kolejności wyświetlania jakiś formularzy. Jeśli użytkownik wyjdzie ze strefy strzeżonej, wciąż masz jego status jako "logged". Więc może wrócić. Kolejkę przechowujesz w sesji, np.: [php:1:3ce031af9c]<?php $_SESSION['Queue'] = array ('task_name', 'task_params') ?>[/php:1:3ce031af9c] |
|
|
|
seaquest Kolejka - rozważania. 30.01.2004, 11:56:06
radziel Dorzuce tutaj link do dość ciekawej klasy, do obsł... 30.01.2004, 12:31:12
seaquest hmmm 30.01.2004, 18:50:54
lolo @scanner: pomyliles troche oba pojecia.
Otoz stos... 31.01.2004, 15:42:30
hawk lolo:
Kolejka może mieć strategię (dyscyplinę obsł... 31.01.2004, 23:13:59
lolo Masz racje, zapomnialem. Przeciez po to sie mowi k... 1.02.2004, 00:50:00
seaquest no dobrze 1.02.2004, 10:02:49
lolo Ja tez duzo sie tutaj naczytalem o kolejkach FIFO ... 1.02.2004, 13:10:38
seaquest hmmm 1.02.2004, 15:39:32
Seth CytatOtoz jezeli mamy jakiegos niezalogowanego uzy... 2.02.2004, 12:57:46
lolo Hmm... no nie brzmi to optymistycznie. Ale wlasnie... 2.02.2004, 17:11:28
seaquest seth 2.02.2004, 20:02:11
Seth @lolo: Redirect bylby dobrym rozwiazaniem.
Najwie... 2.02.2004, 21:54:13
lolo Tez tak sadze. Doszedlem do wniosku, ze najlepiej ... 3.02.2004, 12:48:54
squid Cytat1. First In First Out (stos)
2. First In Last... 7.02.2004, 08:57:05
Bora Czy jest sens budowania wielkich stosów do logowan... 1.03.2004, 23:37:03 ![]() ![]() |
|
Aktualny czas: 13.06.2026 - 20:04 |