Ostatnie wiadomości

Strony: 1 ... 8 9 [10]
91
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez falcon dnia Czerwiec 29, 2016, 20:51:31 »
https://github.com/phalcon/cphalcon/issues/11337#issuecomment-229451388
zgłoszone, tylko, że mam teraz dosyć pilny temat, mój projekt generuje mnóstwo procesów bazodanowych, jak najlepiej usprawnić mój kod (może dodać destruktora w każdym modelu z metodą close()? ), aby phalcon zamykał połączenia, a nie usypiał ;)
92
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez mruz dnia Czerwiec 28, 2016, 10:37:24 »
To wychodzi na to, że połączenie nie jest zamykane automatycznie na końcu requesta jak sugeruje komentarz
Cytuj
Closes the active connection returning success. Phalcon automatically closes and destroys active connections when the request ends

Trzeba by napisać w #11337.
93
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez falcon dnia Czerwiec 26, 2016, 10:58:20 »
Stworzyłem klasę MySQL na wzór przykładowej z Postgresa:
<?php

class MySQL extends \Phalcon\Db\Adapter\Pdo\Mysql {

/**
 * Creates the Adapter
 */
public function __construct(array $descriptor)
{
    error_log("MySQL::__construct()", 3, "xxxx/public/logs/error-log.log");
    parent::__construct($descriptor);
}

/**
 * Connect
 */
public function connect($descriptor=null)
{
    error_log("MySQL::connect()", 3, "xxxxx/public/logs/error-log.log");
    return parent::connect($descriptor);
}

/**
 * Close
 */
public function close()
{
    error_log("MySQL::close()", 3, "xxxx/public/logs/error-log.log");
    return parent::close();
}

}

w kontrolerze:
use xx\Backend\Models\MySQL;

  public function mysqltestAction()
      {
$dane = array(
                   "host" => "fal",
                   "dbname" => "con",
                   "username" => "fal",
                 "password" => "con",
               
             

      );
          $mysql = new MySQL($dane);
          //uruchamiamy konstruktor tworzący połączenie (connect()) w bazie danych i po wykonaniu powinien zamknąć połączenie (close())
      }


W logach mam tylko:
Cytuj
MySQL::__construct()MySQL::connect()

Gdy uruchomię metodę close() własnoręcznie

 
$mysql = new MySQL($dane);
$mysql->close();

mam:
Cytuj
MySQL::__construct()MySQL::connect()MySQL::close()
94
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez mruz dnia Czerwiec 21, 2016, 09:49:41 »
A próbowałeś rozszerzyć mysql, tak jak ten postgre i sprawdzić ligi, czy close jest wywoływane?
95
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez falcon dnia Czerwiec 20, 2016, 11:54:34 »
Coś jest nie tak...
zarówno jak ustawię
$di->set('db', function() {
return new \Phalcon\Db\Adapter\Pdo\Mysql(array(
                        "host" => "localhost",
                "username" => "",
                "password" => "",
                "dbname" => "",
                'charset' => 'utf8',
                'persistent' => 'false'
//albo true
));

liczba błędów wzrasta przy dowolnych instrukcjach MySQL
Cytuj
Aborted clientsDokumentacja   52249   Liczba połączeń, które zostały przerwane, ponieważ klient zmarł bez poprawnego zamykania połączenia.

--update--

Moja baza danych:
Cytuj
Oprogramowanie: MySQL
Wersja oprogramowania: 5.6.30-76.3-log - Source distribution

Cytuj
PHP Version 5.6.19

Cytuj
Author   Phalcon Team and contributors
Version   2.0.9
Build Date   Nov 30 2015 09:47:49
Powered by Zephir   Version 0.8.0a

Cytuj
mysql.allow_local_infile   On   On
mysql.allow_persistent   On   On
mysql.connect_timeout   60   60
mysql.default_host   no value   no value
mysql.default_password   no value   no value
mysql.default_port   no value   no value
mysql.default_socket   no value   no value
mysql.default_user   no value   no value
mysql.max_links   Unlimited   Unlimited
mysql.max_persistent   Unlimited   Unlimited
mysql.trace_mode   Off   Off

W statystykach PHPMyadmin mam 4 procesy uśpione:

Procesy   ID   Użytkownik   Host   Baza danych   Polecenie   Czas   Status   Zapytanie SQL  Pokaż pełne zapytania
Zabij   17212642   falcon   localhost   falcon1   Sleep   103   ---   ---
Zabij   17213243   falcon   localhost   falcon1   Sleep   141   ---   ---
Zabij   17213298   falcon   localhost   falcon1   Sleep   8   ---   ---
Zabij   17214411   falcon   localhost   falcon1   Sleep   80   ---   ---
Zabij   17217782   falcon   localhost   Żaden   Query   0   init   SHOW PROCESSLIST

które znikają po pewnym czasie powodując 'zerwania' zamiast zakończenia, przy ustawieniu persistant => false

Phalcon nie zamyka mi połączeń :>

Spróbuję ustawić allow.persistant na off

--update--

po zmianie dalej mam procesy uśpione

Procesy   ID   Użytkownik   Host   Baza danych   Polecenie   Czas   Status   Zapytanie SQL  Pokaż pełne zapytania
Zabij   17240488   falcon   localhost   falcon1   Sleep   3   ---   ---
Zabij   17256814   falcon   localhost   falcon1   Sleep   2   ---   ---
Zabij   17256923   falcon   localhost   falcon1   Sleep   2   ---   ---

96
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez mruz dnia Czerwiec 17, 2016, 11:36:15 »
Spróbujcie ustawić 'persistent' => 'true', #11337 i pdo.zep#L123

//Make a connection
$connection = new \Phalcon\Db\Adapter\Pdo\Mysql(array(
    'host' => '192.168.0.11',
    'username' => 'sigma',
    'password' => 'secret',
    'dbname' => 'blog',
    'persistent' => 'true',
));

--edit--
Cytuj
Closes the active connection returning success. Phalcon automatically closes and destroys active connections when the request ends

dajcie 'persistent' => 'false', i sprawdźcie czy close jest wywoływane na końcu requesta

class MyPostgresql extends Postgresql {

/**
 * Creates the Adapter
 */
public function __construct(array $descriptor)
{
    error_log("MyPostgresql::__construct()");
    parent::__construct($descriptor);
}

/**
 * Connect
 */
public function connect($descriptor=null)
{
    error_log("MyPostgresql::connect()");
    return parent::connect($descriptor);
}

/**
 * Close
 */
public function close()
{
    error_log("MyPostgresql::close()");
    return parent::close();
}

}
97
Dla początkujących / Odp: Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez falcon dnia Czerwiec 17, 2016, 08:10:20 »
98
Dla początkujących / Duża ilość połączeń bazy danych
« Ostatnia wiadomość wysłana przez nansss dnia Czerwiec 16, 2016, 10:07:54 »
Witam.

Napotkałem problem ilości połączeń bazy danych.
Aktualna ilość to: 2248

Zastanawia mnie to. Phalcon nie kończy połączeń z bazą danych. Coś typu mysql_close(); z mysql?

Z góry dziękuje za odpowiedź.
99
Serwery, hosting, domeny / Odp: Phalcon w Progreso
« Ostatnia wiadomość wysłana przez falcon dnia Maj 20, 2016, 10:36:43 »
Linuxpl także włącza dodatek Phalcon,
Trzeba napisać ticketa z prośbą o włączenie dodatku. Jeżeli użyjemy słowa 'instalację' życzą sobie dopłaty ;-)
100
Dla początkujących / Odp: Instalacja na openSUSE
« Ostatnia wiadomość wysłana przez mruz dnia Maj 20, 2016, 07:15:41 »
Od teraz ice dla openSUSE Tumbleweed dostępny jest w oficjalnym repozytorium php5-ice.

Aby zainstalować, wystarczy więc odpalić:
zypper install php5-ice
Strony: 1 ... 8 9 [10]