Описание тега eventmachine

EventMachine - это быстрая библиотека шаблонов реакторов для программ Ruby. Он предоставляет неблокирующие API-интерфейсы ввода-вывода с прозрачными внутренними буферами и стандартными функциями реактора (такими как defer, next_tick и таймеры). (примечание для будущих редакторов: сама Eventmachine не использует волокна, а ядро ​​не использует потоки для любых операций ввода-вывода, таймеров или базовой инфраструктуры).
1 ответ

Использование EventMachine для настройки бесконечного цикла для генерации случайных данных

Я пытаюсь настроить автоматический стресс-тест и передать случайно сгенерированные данные в Redis, а затем заставить потребителя (как другой компонент, считываемый из Redis) обрабатывать случайные данные. Чтобы симулировать случайно сгенерированные …
26 мар '14 в 06:47
1 ответ

Остановите даже машину после всех данных, загруженных многими волокнами

Я пытался получить данные из остальных API, используя запросы HTTP и даже машины. Для этого используйте em-net-http, fiber (ruby1.9.2p290). Мой псевдокод выглядит так: EM.run do Fiber.new do api_client.get_data_1 end.resume Fiber.new do api_client.g…
09 авг '12 в 01:29
2 ответа

Ruby SMPP с RabbitMQ и Eventmachine, проблемы после AMQP.stop

У меня есть небольшая проблема с rabbitmq, которую я не понимаю. Я использую: Ruby Version 1.8.7 AMQP GEM Версия 0.7.0 RabbitMQ v2.3.1 ruby-smpp v0.4.0 Мой код выглядит так: loop do AMQP.start do EventMachine::run do @@tx = EventMachine::connect( co…
27 мар '11 в 20:48
2 ответа

Запуск EventMachine в новом потоке после загрузки Rails с использованием Thin

У меня есть приложение Rails 3.2, работающее на тонком сервере, и в application.rb я хочу запустить EventMachine: # application.rb config.after_initialize do if ENV['EM'] EM.run do host = '0.0.0.0' port = 3001 # hit Ctrl + C to stop Signal.trap("INT…
19 май '13 в 16:02
4 ответа

Почему задержка EventMachine медленнее, чем Ruby Thread?

У меня есть два сценария, которые используют Mechanize для получения страницы индекса Google. Я предполагал, что EventMachine будет быстрее, чем поток Ruby, но это не так. Стоимость кода EventMachine: "0.24s user 0.08s system 2% cpu 12.682 total" Ru…
17 июн '10 в 23:34
2 ответа

Ruby неблокирующие библиотеки против Node

Я оцениваю Ruby EventMachine (и подобные неблокирующие фреймворки, такие как Cramp) против Node.js. Я работал с Node раньше, но никогда не работал с EventMachine. Одна из идей, которую поддерживает Райан Даль, заключается в том, что экосистема библи…
1 ответ

Пустые модели в рельсах бегуна

Я использую Rails 3.2 и хотел бы, чтобы побочный процесс отслеживал TweetStream с помощью rails runner, к сожалению, мои Модели кажутся пустыми, пока я не получу к ним доступ с помощью отладчика. Что вызвало бы это? Нужно ли повторно подключаться к …
0 ответов

Как создать ссылку на опубликованную запись в WordPress в Rails?

У меня есть следующая задача: Пользователь вводит какое-то ключевое слово, а затем текст, например "КОД", некоторый код "". Мне нужно опубликовать этот код "некоторый код" в моей учетной записи WordPress в определенной категории, а затем дать ссылку…
03 окт '12 в 20:14
1 ответ

Использование EventMachine с Thin

Недавно я перешел с монгрела на тонкий при обновлении до рельсов 3. До перехода мы использовали EventMachine без каких-либо проблем. После переключения на thin при каждом вызове EventMachine сервер будет бомбить и сообщать, что возвращаемая нами пер…
26 янв '12 в 18:05
1 ответ

EventMachine не может ответить при использовании отложенного

Это мой сервер require 'rubygems' require 'benchmark' require 'eventmachine' class Handler < EventMachine::Connection def initialize(*args) super end def receive_data(data) @state = :processing EventMachine.defer(method(:do_something), method(:ca…
25 дек '11 в 14:25
2 ответа

Построение асинхронной очереди в Ruby

Мне нужно обрабатывать задания вне очереди внутри процесса, при этом ввод-вывод выполняется асинхронно. Это довольно просто. Суть в том, что эти задания могут добавлять дополнительные элементы в очередь. Я думаю, что слишком долго возился с этой про…
3 ответа

Как решить "Mysql2:: Ошибка: это соединение все еще ждет результата" с mysql2 и activerecord

Не дублируйте этот вопрос с тем же названием Я использую activerecord с mysql2, и я разрабатываю для обработки 10 запросов к одной и той же модели / классу activerecord одновременно. Обратите внимание, что я использую строгую activerecord и не испол…
12 дек '11 в 11:25
3 ответа

Можно ли отслеживать процесс EventMachine с помощью NewRelic?

У меня есть процесс Eventmachine, который я начинаю с моего Procfile на Heroku. Мне интересно, если кто-нибудь разобрался, чтобы контролировать это с NewRelic? Я заинтересован в том, где оптимизировать запросы к базе данных и т. Д. И просто вообще п…
0 ответов

stop_server(@signature) не закрывает порт: EventMachine:Ruby

Я работаю на eventmachine . И необходимо перезагрузить серверы с портом в цикле. Я пытаюсь остановить серверы с кодом stop_server(@signature) идентификатор, но если я снова подключить его, это дает мне ошибку /gems/eventmachine-1.0.0/lib/eventmachin…
30 авг '13 в 07:06
1 ответ

Ruby EventMachine последовательное подключение к Arduino?

У меня есть приложение Ruby, которое подключается к последовательному устройству через USB(Arduino, не фирма). Я изучаю возможность использования EventMachine для неблокирующего двунаправленного ввода-вывода, но не могу найти никаких примеров. EvenM…
23 мар '15 в 23:14
1 ответ

Волокно в EM: соединение (em-синхрония)

Кто-нибудь может мне объяснить, почему драйвер синхронизации Redis (redis-rb) работает непосредственно в блоке EM.synchrony, но не в EM:Connection? Учитывая следующий пример EM.synchrony do redis = Redis.new(:path => "/usr/local/var/redis.sock") …
09 янв '12 в 19:45
0 ответов

RabbitMQ прекращает публиковать сообщения

Я пишу скрипт для отправки настраиваемых push-уведомлений нашим пользователям нашего приложения. Я использую драгоценный камень amqp. Я установил тестовый обмен (прямой) и привязал к нему одну очередь. Когда я запускаю скрипт, я вижу, что первые нес…
27 мар '14 в 00:43
2 ответа

Как запустить Net::SSH и AMQP в одном и том же реакторе EventMachine?

Немного предыстории: Геррит предоставляет поток событий через SSH. Это милый трюк, но мне нужно преобразовать эти события в сообщения AMQP. Я пытался сделать это с помощью ruby-amqp и Net::SSH, но, похоже, субкомпонент AMQP вообще не запускается воо…
28 сен '11 в 23:16
5 ответов

Удастся ли Синатре работать вместе с EventMachine WebSockets?

Я уже некоторое время пользуюсь Sinatra, и я хотел бы добавить некоторые функции реального времени в свое веб-приложение, передавая данные через веб-сокеты. Я успешно использовал гем 'em-websocket' сам по себе, но не смог написать один файл ruby, ко…
08 июн '10 в 16:46
1 ответ

Один вопрос с EventMachine

require 'eventmachine' module EchoServer def post_init puts "-- someone connected to the echo server!" end def receive_data data send_data ">>>you sent: #{data}" close_connection if data =~ /quit/i end def unbind puts "-- someone disconnec…
21 окт '10 в 07:08