Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] imap library - bardzo wolna aplikacja
Wolfie
post 16.10.2009, 11:06:02
Post #1





Grupa: Zarejestrowani
Postów: 686
Pomógł: 0
Dołączył: 10.11.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


Witam,

Mam taki problem ze buduje klienta poczty elektronicznej, no i teraz za kazdym razem gdy wysylam jakies żądanie przechodzi przez bootstrap'a wszystko leci przez kontrolery i tam zostaje wywolany model oraz widoki. Sęk w tym ze za kazdym żądaniem musze od poczatku uzywac funkcji imao_open, wyglada to mniej wiecje tak :

Oto kawalek kontrolera :

  1. function mailbox() {
  2. //echo 'MailboxController action mailbox!';
  3. print_r($_SESSION);
  4. $this->model->connect('gmail.com',$_SESSION['login'],$_SESSION['pass'],'993','imap');
  5. $this->model->reconnect($_POST['mailbox']);
  6. $view = new LoginView;
  7. $boxes = $this->model->getMailboxes();
  8. $msgsParts = $this->model->getMsgsParts(3);
  9. $view->setVars('boxes', $boxes);
  10. $view->setVars('parts',$msgsParts);
  11. $view->display($_POST['action']);
  12. }
  13.  
  14. function message($params) {
  15. print_r($params['id']);
  16. $view = new LoginView;
  17. $this->model->connect('gmail.com',$_SESSION['login'],$_SESSION['pass'],'993','imap');
  18. $view->setVars('message', $this->model->getMessage($params['id']));
  19. $view->display('message');


Linijka
  1. $this->model->connect('gmail.com',$_SESSION['login'],$_SESSION['pass'],'993','imap');


Odpowiada za polaczenie sie do skrzynki imap (w modelu jest to imap_open()) a to trwa przynajmniej 5 sekund, i za kazdym razem gdy np chce wyswietlic inna skrzynke musze czekac az zainicjuje sie kolejne polaczenie, to samo gdy chce zobaczyc dana wiadomosc, w w/w przykladnie funkcja message($params) tez musi połączyć sie od nowa poprzez imap_open i przez to aplikacja jest strasznie wolna, jak moznaby poprawic szybkosc aplikacji ?

Ktos kto pisal kiedykolwiek klienta pocztowego moze cos podpowiedziec ?

Edit----------------------------------------------
Moje pytanie jest tak proste czy tak trudne ze nikt nie chce odpowiedziec ? dry.gif
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:19