![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 3.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Cześć!
Piszę małą aplikację, której zadaniem jest pobieranie maili z danej skrzynki, formatowanie jej i przesyłanie do chmury(np Dropbox). Odnośnie formatowania: - tekst zapisywany w formacie html - załączniki(rar, zip) rozpakowywane do danego folderu - całość przesyłana i tutaj pojawia się moje pytanie: Czy dla php wielkość powyżej 20Mb będzie miała tutaj znaczenie(określony czas wykonywania skryptu)? Np jakbym chciał taki załącznik 200mb pobrać, rozpakować i przesłać do chmury? Czy lepiej coś takiego pisać w innym języku? Pozdrawiam, szubi |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 385 Pomógł: 26 Dołączył: 22.03.2008 Skąd: TM Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
ogólnie pewnie będzie miał znaczenie. Zrób to może tak że pobranie elementów wydeleguj do jakiejś kolejki zadań.. Np Celery ![]() Ten post edytował kajzur 20.03.2016, 22:57:08 -------------------- Zapraszam na mojego bloga. Dowiedz się jak uzyskać darmowy, zaufany certyfikat albo jak rozpoznawać głos ;)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 3.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
A czy mógłbyś mi to troszkę rozwinąć? Jakiś mały przykład z php?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 385 Pomógł: 26 Dołączył: 22.03.2008 Skąd: TM Ostrzeżenie: (0%) ![]() ![]() |
W swoim pliku z PHPa stwórz tylko tablicę z danymi które pozwolą jednoznacznie określić jaki plik należy ściągnąć (np. nazwę czy ID wiadomości email). Taką mapę podajesz jako parametr do zadania w Celery. Zadanie w Celery to kawałek kodu w Pythonie który pobierać będzie Ci ten plik na podstawie podanych parametrów.
Celery to implementacja kolejki zadań, więc kilka plików może być jednocześnie pobieranych a jeśli zadań jest zakolejkowanych więcej niż jest workerów które je przetwarzają - będą one czekać w kolejce. Nie musisz martwić sie czasem wykonania bo dzieje się to asynchornicznie. Pierwszy lepszy klient do Celery w PHPie -https://github.com/gjedeer/celery-php -------------------- Zapraszam na mojego bloga. Dowiedz się jak uzyskać darmowy, zaufany certyfikat albo jak rozpoznawać głos ;)
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%) ![]() ![]() |
Cytat Czy dla php wielkość powyżej 20Mb będzie miała tutaj znaczenie(określony czas wykonywania skryptu)? Np jakbym chciał taki załącznik 200mb pobrać, rozpakować i przesłać do chmury? Czy lepiej coś takiego pisać w innym języku? Tak, będzie miało znaczenie. Będzie miało znaczenie dla każdego dowolnie wybranego języka. Natomiast czas pobierania i wysyłania pliku przez sieć będzie na tyle duży, że szybkość środowiska w jakim to wykonasz schodzi na drugi plan. Rozpakowywanie też nie będzie wolniejsze od innych środowisk bo i tak nie jest zaimplementowane w php. Jeżeli znasz php to nie ma potrzeby szukać innych języków. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 385 Pomógł: 26 Dołączył: 22.03.2008 Skąd: TM Ostrzeżenie: (0%) ![]() ![]() |
Odkopuję gdyż napisałem na temat kolejek wpis na blogu, więc może się przydać - https://mmazur.eu.org/asynchroniczna-kolejk...ej-pliki-wideo/
-------------------- Zapraszam na mojego bloga. Dowiedz się jak uzyskać darmowy, zaufany certyfikat albo jak rozpoznawać głos ;)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 16.07.2025 - 19:56 |