[Zend] Uitwisseling met Google onwijs traag

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • orange.x
  • Registratie: Maart 2002
  • Laatst online: 18-07 10:57
Het probleem is dat ik voor een applicatie gebruik maak van het Zend framework en dat wordt gebruikt om te verbinden met Google zodat events toegevoegd gewijzigd en verwijderd kunnen worden.

Niet zo gek spannend opzich. Werkt ook al geruime tijd maar de laatste tijd, vanaf deze week zeg maar, is het echt tergend langzaam! Iedere actie die uitgevoerd wordt duurt echt secondes waar het voorheen alles bij elkaar ongeveer een seconde in beslag nam denk ik...

Mensen met zelfde soort problemen? Mijn google skills zijn dan weer niet zo dat ik ergens kan vinden waar of er problemen kunnen zitten of dat er iets met google aan de hand zou zijn ofzo. Of ik vind topics die erg verouderd zijn.

In de code wordt een functie aangeroepen die het hele Google gedeelte afhandelt.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
function find_google_event($event_name)
{
    // include de gegevens
    require_once 'Zend/Loader.php';
    Zend_Loader::loadClass('Zend_Gdata');
    Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
    Zend_Loader::loadClass('Zend_Gdata_Calendar');
    Zend_Loader::loadClass('Zend_Http_Client');
    
    // verbinding maken
    $gcal = Zend_Gdata_Calendar::AUTH_SERVICE_NAME;

    $settings_class = new settings();
    $google_user = $settings_class->get_by_description("google_user");
    $google_pass = $settings_class->get_by_description("google_pass");
    $google_calendar = $settings_class->get_by_description("google_calendar");

    $client = Zend_Gdata_ClientLogin::getHttpClient($google_user, $google_pass, $gcal);
    $gcal = new Zend_Gdata_Calendar($client);
    
    // juiste agenda zoeken
    $calFeed = $gcal->getCalendarListFeed();
    foreach($calFeed as $calendar)
    {
        if($calendar->title->text == $google_calendar)
        {
            $appCalUrl = $calendar->content->src;
            $calendar_id = end(explode('/', (string) $calendar->id->text));

            $query = $gcal->newEventQuery();

            $query->setUser($calendar_id);
            $query->setVisibility('private');
            $query->setProjection('basic');
            $query->setQuery($event_name);
            if(!empty($date_from))
            {
                $query->setStartMin($date_from);
                $query->setStartMax($date_from);
            }
            if(!empty($date_to))
            {
                $query->setStartMin($date_to);
                $query->setStartMax($date_to);
            }
            
            try
            {
                $feed = $gcal->getCalendarEventFeed($query);
            }
            catch (Zend_Gdata_App_Exception $e)
            {
                return "Error";
            }
            foreach($feed as $event)
            {
                return "Event";
            }
        }
    }
    return 'Error';
}


Het bepalen van de $client gaat langzaam en verdere acties die echt iets met de server van Google doen zijn ook langzaam.

Acties:
  • 0 Henk 'm!

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Run eens een wireshark (client <-> own web server <-> google server) en kijk waar de vertraging lijkt te zijn :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Acties:
  • 0 Henk 'm!

  • orange.x
  • Registratie: Maart 2002
  • Laatst online: 18-07 10:57
BtM909 schreef op maandag 11 juni 2012 @ 10:30:
Run eens een wireshark (client <-> own web server <-> google server) en kijk waar de vertraging lijkt te zijn :)
Ik ga even uitzoeken wat dat is en hoe dat werkt :P