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; }
*/ //------------------------------------------------------------------------------ $profiler->clear(); $profiler->start('read_frl_mem'); $cnt = 0; sleep(1); /* while ( $users = $ms->getData() ) { $cnt += count($users); sleep(1); unset($users); } */ $profiler->stop('read_frl_mem'); //$results['getData'] = print_r($ms->getData(),true); $results['isExistData'] = (int) $ms->isExistData(); $results['-'] = true; $results['Read all from mem cnt'] = $cnt; $results['read_frl_mem execution_time (sec)'] = number_format($profiler->get('read_frl_mem'), 5); $results['getDebugInfo'] = $ms->getDebugInfo(); $results['-'] = true; $memBuff = new memBuff(); $results['memBuff'] = $memBuff->get('mem_storage-newsletter_freelancer-pages'); $results['getMemBuff'] = $ms->getMemBuff()->get('mem_storage-newsletter_freelancer-pages'); //------------------------------------------------------------------------------ //$profiler->stop('read_frl_mem'); //$results['ID found in mem page'] = $ms->isExistItem(333); //------------------------------------------------------------------------------ /* $results += array( 'read_frl_mem execution_time (sec)' => number_format($profiler->get('read_frl_mem'),5)
} 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) { $to_storage[$user['uid'] . '-' . $i] = $user;