similar to: epoll increasing latency big time

Displaying 20 results from an estimated 10000 matches similar to: "epoll increasing latency big time"

2007 Sep 14
3
epoll appears to break
The following program is a minor variant on the sample given in the README with eventmachine-0.8.1. I am running under CentOS 4.5 (kernel 2.6.9-55.0.2.plus.c4) with a ruby-1.8.5 RPM from the CentOS testing repository. When I run it, I find that set_comm_inactivity_timeout doesn''t do anything. That is, if I client opens a connection, it stays open indefinitely. However, if I comment out
2008 Jan 06
5
Having very odd problems with UDP.
I am using eventmachine 0.8.1 on windows XP and am having very odd problems. This snippet of code gives the error that follows it. class EchoServer def receive_data data puts data send_data ">>>you sent: #{data}" if data =~ /quit/i puts "quitting" close_connection EventMachine::stop_event_loop end end end
2007 May 24
4
Multiple EM connections on separate threads
Hi EM Gurus, I''m hoping someone can shed some light on the following... I''m using a 3rd party (legacy) server that can accept up to 8 simultaneous connections on one port. I''ve been able to make multiple connections to this server from within one call to EventMachine::run {...}. Specificaly, I can access each connection separately using: em_thread = Thread.new do
2007 Nov 07
4
Gracefully stopping EventMachine?
Hello all, I''ve been learning Ruby and playing with a chat server I built using GServer. After into an issue I found with GServer, that no one else seemed to notice (actually, similar to this question, GServer is hard to kill nicely, especially when you want to.), I found references to EventMachine, and rebuilt my server using it. I much prefer EventMachine''s model. The
2008 Aug 06
6
Event loop responsiveness + client
Hello, on the application that I''m working on, we are using Thin. The server implements long polling and commands that alter its internal state. Connecting to the long poll is a very fast operation, while updating the state of the server is a relatively slow operation. The long poll connection is held open until there is a change to be sent to the connection. Here is my current
2006 Nov 03
6
How to send data,
Hello, First of all I''m new to working with sockets, so the problems I''m having are probably because of my lack of understanding. What I''m trying to accomplish is to create a mac os x client gui to ruby-debug. When a application that includes ruby-debug is started, it starts listening for 2 connections; 8989, 8990 The connection is made by calling the connectToApp
2006 Aug 08
11
Core dump using sample DumbHttpClient
I''m using the current release branch from the repository (version_0) on freebsd 6.1 with ruby 1.8.4. This is the error that is generated when running the code below at the bottom of the message, plus a gdb bt. Sorry no debugging symbols built into ruby but maybe the bt will help anyways. terminate called after throwing an instance of ''std::runtime_error'' what():
2006 Dec 15
5
Testing event driven Socket classes
Ok, here is the class, I want to Unit Test, its part of a large app and is based on EventMachine library. I want to mock the class TickServer ( i.e not stub it) . Since in actual scenario, you can''t do this on this class: @server = TickServer.new # will toss an exception at your face you must initialize the server like this: EventMachine.run {
2008 Feb 11
1
unable to delete epoll event: Bad file
I know this error has been reported before, but a couple ppl have reported getting this randomly when running Thin and it crashed the server: terminate called after throwing an instance of ''std::runtime_error'' what(): unable to delete epoll event: Bad file descriptor I think it''s fixed on trunk now so I''m telling people that have this issue to checkout
2008 Jan 04
13
Unable to delete epoll event
I occasionally get a fatal error unable to delete epoll event: Bad file descriptor I think the attached patch will fix it. The patch does two things: 1) changes the error we look for from ENOENT to EBADF. It is hard to reproduce this error, but if I change the epoll_ctl line to epoll_ctl(epfd, EPOLL_CTL_DEL, 666, ed->GetEpollEvent()); it does return -1 with errno = EBADF on my Linux 2.6.9
2007 Dec 09
38
libevent
Hello, I have been looking at the Ruby/EventMachine. First let me say it look very good. Reactor model with no threads makes for fast reliable server, and I have read about marvelous Twisted framework for Python and am glad to see something similar for Ruby. I am writing network app with Ruby threads now and it very slow, and I try new Ruby 1.9 with native threads that make it much slower.
2007 Feb 26
9
libevent
Francis, I read in the list archives back that a future EventMachine release will support epoll on Linux (i.e., it''s in the trunk). Better still, is there a possibility that EM will rely on libevent so that it will be architecture independent (i.e. epoll on Linux, kqueue on FreeBSD/Mac OS X, /dev/poll on Solaris)? This is how memcached is implemented, and it would be helpful to be able
2008 Mar 18
1
Eventmachine utils
I''m working on StrokeDB* right now and put pieces of networking stuff into a separate repository "Eventmachine utils". There are 3 useful libs already: protocol chaining, messaging protocol and marshalled messaging protocol. Check them out :-) Overview: http://gitorious.org/projects/eventmachine-utils Files:
2008 Feb 07
6
Buffer flushing
Short question: is there way to tell EM to actually send data after send_data call? I''m building a file transferring app. I send Mashal.dump''ed metadata first, and then - the file contents (chunked). I found a silly bug: receive_data() gets marshalled metadata and the first chunk of the file in a single variable. Like that: c1.send_data("meta")
2006 Aug 20
14
http parser
Just thought I''d let you know that your http parser worked great for creating an http protocol handler for Eventmachine. It wouldn''t take that much effort to use Eventmachine for Mongrel, might be worth a shot just to see how it does. A few things would need to be restructered, like HttpRequest where you read the rest of the body, and calling the handler. But it
2007 Dec 14
21
Some silly benchs (was: 1.9)
Guys, Just for fun, I tried to see (I know, a silly way to test it) how much overhead we have calling the C functions of the extensions. the benchmark script and the results: http://pastie.caboo.se/128646 The naive C extension: http://pastie.caboo.se/128647 I compared 1.8.6 (VC6 and mingw builds) against a fresh checkout of ruby trunk. What I understand from that is 1.9 is slower than 1.8
2007 Nov 09
1
EventMachine::run - How can I ensure that this
Friends, I am writing an event system which has an interface on a web site which can create events. The creation of events opens up EventMachine::run and connects to the event server, and sends messages. The problem comes if this is run inside of say, event driven mongrel, where it will crash fatally, the same as: EventMachine::run { EventMachine::run { } } The only solution that
2007 Feb 25
6
Crash occurs where EventMachine.connect is
Hi everyone, If you subclass EventMachine::Connection and call it outside an EventMachine::run event loop, EventMachine crashes! Example: class Put < EventMachine::Connection include EventMachine::Deferrable HOST="localhost" PORT=8080 def self.request(data) EventMachine.connect(HOST, PORT, self) {|c| c.instance_eval { @data = data } } end #
2008 Apr 23
2
Status of EventMachine.fork
Hi All, I''m currently looking into doing a bit of evented network programming in ruby and i''m currently looking into packet, eventmachine and rev. The problem is that I need to be able to fork and start a new reactor within the forked child (it also should open a socket and write status information back to the main process). I have not been able to do this with EventMachine.
2008 Jan 14
10
Using EventMachine to listen from non-network
I''ve actually found a way to make EventMachine listen to events from a serial port, but only by using the pure Ruby version, using Guilliame Pierronnet''s Ruby/SerialPort library. It turned out to be simpler than I thought it would be: require ''serialport'' $eventmachine_library = :pure_ruby require ''eventmachine'' module EventMachine class