Автор Тема: обработчики базы  (Прочитано 2590 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн disgorge

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
обработчики базы
« : 08 Января 2006, 18:36:53 »
Здравствуйте! С  perl я знаком плохо. Подскажите, как организовать несколько обработчиков, работающих с базой одновременно. Работа их заключается в извлечении строк
таблицы, причем одна и та же строка не должна быть извлечена более одного раза. Таблица при этом не меняется. База mysql, если это важно. Спасибо.

Оффлайн swop

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 6
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.ppe-group.ru
обработчики базы
« Ответ #1 : 18 Января 2006, 23:23:05 »
Вариант №1

Вы запускаете несколько процессов которые знают смещение в таблице с которого надо читать. На примере таблицы

table1  CREATE TABLE `table1` (                        
          `id` int(11) NOT NULL auto_increment,        
          `message` varchar(255) NOT NULL default \'\',  
          PRIMARY KEY  (`id`)                          
) ENGINE=InnoDB

1 процесс делает такой запрос

select * from `test`.`table1` limit 0, 1

второй

select * from `test`.`table1` limit 5, 1

как и где хранить счётчик ваше дело.

Вариант №2

1 Процесс читает всю таблицу (или равными кусками) и шарит массив данных между процессами.

прочитайте вот что perldoc perlipc perlthrtut

 

Sitemap 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