![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 15.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Prowadzę serwis turystyczny i mam kilkudziesięciu klientów którzy dają mi na mojej stronie ogłoszenia, reklamy itp. Odbywa się to zasadzie abonamentu - czyli np. włączam komuś reklamę na rok lub pół roku lub kwartał a on raz na okres opłaca mi abonament za tę usługę. Piszę teraz na własne potrzeby system, który pilnowałby mi terminów, wystawiał fakturki proforma, powiadamiał mailem kogo trzeba o fakcie fakturowania itd. Całości koniec końców pilnuje jeden plik uruchamiany cronem raz dziennie. W pliku tym wykonuję kilka zadań i mam wrażenie, że nie jest on optymalnie przemyślany od strony wydajności ponieważ z logu, który sobie tworzę podczas jego wykonania widzę, iż nie wszystkie zadania wykonywane są płynnie. Krytycznym momentem jest jak sądzę moment gdzie: - pobieram z bazy wszystkie abonamenty - rekordy jeden po drugim sprawdzam z pomocą:
- jeśli w danym rekordzie występuje konieczność fakturowania - sprawdzam to po datach: dzisiejszej i przechowywanej w tabeli abonamentów (końca abonamentu) wykonuję kolejne kroki: 1) wygenerowanie faktury i dodanie jej do bazy 2) wygenerowanie faktury do pfd (robię to za pomocą klasy którą znalazłem w sieci a działa ona na zasadzie takiej iż na podstawie htmla generuje pdfa - czyli najpierw funkcją generuję sobie kompletny html faktury z pełnymi danymi a następnie zapodaję to do tej klasy czego wynikiem jest plik pdf) 3) plik pdf zapisuję na dysku w katalogu tymczasowym 4) uaktualniam dany abonament o informację iż został on zafakturowany 5) za pomocą pear mail (pear-mime) tworzę maila którego wysyłam do klienta i do mnie (bcc) - do maila dodaję załącznik pdf (wygenerowany wcześniej) 6) kasuję z dysku pdf który już nie jest potrzebny Punkty 1-6 wykonuję w pętli while() i z tego co widzę w logu skrypt przycina się podczas fakturowania więcej niż 2 abonamentów. Przycina się na wysyłaniu maila. Generowanie pdf zajmuje około 2 sekund I teraz pytanie - jak od strony koncepcyjnej podejść to tego tematu tak by mój ISP nie wywalił mnie z serwera jak zapodam do zafakturowania jednocześnie powiedzmy 30 abonamentów (obciążenie serwera) a dwa by skrypt wykonywał się płynnie. Ten post edytował mosky 4.05.2006, 09:03:03 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 11:58 |