![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam formularz, gdzie robię upload plików ajaxem, więc pliki przed wysłaniem formularza, już fizycznie lecą na serwer, a przechowywane są w folderze tymczasowym (nazwijmy go temp). Dopiero po przesłaniu całego formularza, lądują w oczekiwanym miejscu i są usuwane z temp. Teraz zagadka... Wiadomo, że ktoś może formularz zacząć wypełniać, zrobi upload, ale anuluje przesłanie całości. W tym momencie, zostaje śmietnik w temp. Coś trzeba z tym robić (IMG:style_emoticons/default/smile.gif) Ja widzę takie rozwiązania: - sprawdzać, czy ktoś zamyka okno przeglądarki z poziomu JS i wysyłać ajaxem żądanie czyszczenia tempa (bardzo kiepskie rozwiązanie, ewentualnie jako dodatek) - czyścić cronem tymczasowy folder, usuwając stare* pliki - czyścić przed każdym uruchomieniem formularza stare* pliki * stare pliki, mam namyśli takie, które np. są dłużej niż 24h, wiadomo - aby nie usunąć czegoś w trakcie wypełniania formularza. Jednak mimo takiego zabiegu, zawsze będą tam zbędne śmieci, chociażby z tych wspomnianych 24h Więc teraz pytanie do Was, czy widzicie inne możliwości? Może jakieś ciekawe pomysły, a może już gdzieś stosujecie jakieś ciekawe rozwiązania takiego problemu? Ten post edytował Daimos 17.06.2011, 16:31:54 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 675 Pomógł: 286 Dołączył: 15.06.2009 Skąd: Wieliczka Ostrzeżenie: (0%) ![]() ![]() |
zdecydowanie opcja druga (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
hehe nie pytałem o to która (IMG:style_emoticons/default/smile.gif) mimo wszystko dzięki (IMG:style_emoticons/default/wink.gif) Tylko opcja druga, z cronem, ma swoją wadę - jeśli przyjdzie zainstalować taki skrypt na serwerze bez crona (zdarzają się niestety (IMG:style_emoticons/default/sad.gif) ) to wtedy temp rośnie
Ale nie o tym, interesuje mnie, czy może widzicie jakieś inne opcje, oprócz tych, które wymieniłem? Ten post edytował Daimos 17.06.2011, 16:39:31 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 675 Pomógł: 286 Dołączył: 15.06.2009 Skąd: Wieliczka Ostrzeżenie: (0%) ![]() ![]() |
rzeczywiście, jakoś mi to umknęło - jeżeli robisz coś na poważnie to raczej wykupujesz taki serwer, który ma crona, więc nie widzę tutaj problemu (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Wiesz, jak robię coś dla siebie, to nie martwię się o takie rzeczy. Jeśli jednak mechanizm ma być później masowo wdrażany w wielu serwisach, to już muszę brać pod uwagę wiele możliwości, no ale EOT (IMG:style_emoticons/default/smile.gif) nie o tym dyskusja
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 483 Pomógł: 50 Dołączył: 15.03.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Hm pewien pomysł mam ale nie wiem czy jest on adekwatny.
Jeśli formularz jest np do zalogowanych użytkowników, to byś mógł w TMP dawać przedrostek np z id'kiem użytkownika, i w czasie uruchamiania np index'u , sprawdzać czy istnieją pliki z prefixem id uzytkownika którzy nie są zalogowani i w tym momencie pozbywać się plików? Nie jest to do końca przemyślana koncepcja można by nad tym pogłówkować troszkę i lepiej rozwiązać ale taki pomysł mi wpadł do głowy. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
No jest to jakiś pomysł, ale w sumie podobny jest to metody, gdzie kasowałbym stare pliki, tylko tutaj faktycznie, mogę kasować pliki, które są świeższe. Ale...
Kiedy dużo osób będzie zalogowanych, może się to wiązać z większymi operacjami (no bez przesady, ale wiadomo (IMG:style_emoticons/default/smile.gif) ) W końcu muszę sprawdzić wszystkie pliki, które się tam znajdują |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
CRON + ręczne wywołanie czyszczenia.
Cron będzie raczej wszędzie, a gdy go nie ma (serio rzadko się to zdarza), albo ktoś go nie będzie umiał włączyć (to już prędzej) to po prostu co niedziele sobie będzie włączał zakładkę "Optymalizacja". Możesz dodać alert w oknie powitalnym, że "Nie masz ustawionego CRONa, aby zmniejszyć zajętość dysku dokonaj optymalizacji". |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 890 Pomógł: 65 Dołączył: 13.11.2005 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Imho @markonix ma rację, nawet na darmowych hostingach cron jest juz standardem, na płatnych wręcz nie może go nie być.
Takie podejście - zostawienie (w sytuacji awaryjnej) optymalizacji (tu: czyszczenie tempa) administratorowi systemu jest rozwiązaniem akceptowalnym. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
No to jest dobry pomysł, aby połączyć funkcjonalności tzn Cron + czyszczenie przez admina. W przypadku braku crona, sprawa też jest tak załatwiona
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.09.2025 - 13:18 |