public function process_event(&$event) { $this->force_connect(); switch ($event->type) { case 'newsletter_freelancer': $uid = (int) $event->data['uid']; //$op = $event->data['op']; $ms = new MemStorage('newsletter_freelancer'); if ($ms->isExistData()) { $item = freelancer::GetPrjRecp($uid); $page_id = $ms->isExistItem($uid); $this->log->notice('getDebugInfo: ' . $ms->getDebugInfo()); $this->log->notice('BEFORE: ' . print_r($ms->getItem($uid), true)); if ($item) { if ($page_id === false) { //insert $ms->insertItem($uid, $item); $this->log->notice("insertItem {$uid}"); } else { //update $ms->updateItem($uid, $item, $page_id); $this->log->notice("updateItem {$uid}"); } } elseif ($page_id) { //delete $ms->deleteItem($uid, $page_id); $this->log->notice("deleteItem {$uid}"); } $this->log->notice('AFTER: ' . print_r($ms->getItem($uid), true)); } break; } return PGQ_EVENT_OK; }
$test = array( 11 => 'aa', 22 => 'bb' ); unset($test[11],$test[22]); var_dump(isset($test)); exit; */ //------------------------------------------------------------------------------ $results = array(); $profiler = new profiler(); $profiler->start('update_frl_mem'); //------------------------------------------------------------------------------ $ms = new MemStorage('newsletter_freelancer'); //$results['ID found in mem page'] = $ms->isExistItem(333); //------------------------------------------------------------------------------ //update /* $uid = 333; $item = freelancer::GetPrjRecp($uid); //print_r($item); //exit; $item['login'] = '******'; $item['email'] = '*****@*****.**';
$_SERVER['DOCUMENT_ROOT'] = rtrim(realpath(pathinfo(__FILE__, PATHINFO_DIRNAME) . '/../../'), '/'); } require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/config.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/profiler.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/freelancer.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/mem_storage.php'; //------------------------------------------------------------------------------ $results = array(); $profiler = new profiler(); //------------------------------------------------------------------------------ /* $page = 0; $page_size = 200; $cnt = 0; */ $ms = new MemStorage('newsletter_freelancer'); $results['isExistData'] = $ms->isExistData() ? 'TRUE' : 'FALSE'; //$ms->clear(); //------------------------------------------------------------------------------ //$profiler->start('fill_frl_mem'); //------------------------------------------------------------------------------ /* while ( $users = freelancer::GetPrjRecps($error, ++$page, $page_size) ) { //@todo: fill more more for testing for($i = 0; $i < 30; $i ++) { $to_storage = array(); foreach($users as $user) {
error_reporting(E_ALL ^ E_NOTICE); ini_set('max_execution_time', 0); ini_set('memory_limit', '512M'); if (!isset($_SERVER['DOCUMENT_ROOT']) || !strlen($_SERVER['DOCUMENT_ROOT'])) { $_SERVER['DOCUMENT_ROOT'] = rtrim(realpath(pathinfo(__FILE__, PATHINFO_DIRNAME) . '/../../'), '/'); } require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/config.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/profiler.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/freelancer.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/mem_storage.php'; //------------------------------------------------------------------------------ $results = array(); $profiler = new profiler(); $profiler->start('read_frl_mem'); //------------------------------------------------------------------------------ $ms = new MemStorage('newsletter_freelancer'); //------------------------------------------------------------------------------ /* $profiler->start('read_frl_db'); $page = 0; $cnt = 0; while ( $users = freelancer::GetPrjRecps($error, ++$page, 200) ) { $cnt += count($users); unset($users); } $profiler->stop('read_frl_db'); $results['Read all from db cnt'] = $cnt;
ini_set('memory_limit', '512M'); if (!isset($_SERVER['DOCUMENT_ROOT']) || !strlen($_SERVER['DOCUMENT_ROOT'])) { $_SERVER['DOCUMENT_ROOT'] = rtrim(realpath(pathinfo(__FILE__, PATHINFO_DIRNAME) . '/../../'), '/'); } require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/config.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/profiler.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/freelancer.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/mem_storage.php"; //------------------------------------------------------------------------------ $results = array(); $profiler = new profiler(); //------------------------------------------------------------------------------ $page = 0; $page_size = 200; $cnt = 0; $ms = new MemStorage('newsletter_freelancer'); $ms->clear(); //------------------------------------------------------------------------------ $profiler->start('fill_frl_mem'); //------------------------------------------------------------------------------ while ($users = freelancer::GetPrjRecps($error, ++$page, $page_size)) { //@todo: fill more more for testing for ($i = 0; $i < 1; $i++) { $to_storage = array(); foreach ($users as $user) { $to_storage[$user['uid'] . '-' . $i] = $user; $cnt++; } $ms->addData($to_storage); unset($to_storage); }