Replace IO.select server loop with EventMachine reactor pattern #89
Labels
No labels
Blocked
Duplicate
MoSCoW/Could Have
MoSCoW/Must Have
MoSCoW/Should Have
Points/1
Points/13
Points/2
Points/21
Points/3
Points/5
Points/8
Priority/Backlog
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
State/Completed
State/In progress
State/In review
State/Paused
State/Unverified
State/Verified
State/Wont Do
Type/Bug
Type/Epic
Type/Feature
Type/Legendary
Type/Task
Type/Testing
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#88 Epic: EventMachine Network Migration
aethyr/Aethyr
Reference: aethyr/Aethyr#89
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Metadata
feat(server): replace IO.select with EventMachine reactorfeature/m1-eventmachine-migrationBackground and Context
The current
Server#initialize(inlib/aethyr/core/connection/server.rb) runs aloop dowithIO.select(read_array, nil, error_array, SELECT_TIMEOUT)for socketmultiplexing. This must be replaced with
EventMachine.runandEventMachine.start_serverfor the reactor pattern.Expected Behavior
Server#initializecallsEventMachine.runwith a blockEventMachine.start_server(address, port, ConnectionHandler)accepts connections$manager.pop_action) is drained via an EM periodic timerAcceptance Criteria
IO.selectloop completely removed from server.rbEventMachine.runEventMachine.start_serverSubtasks
EventMachine.runEventMachine.start_serverDefinition of Done
This issue is complete when:
Commit Message in Metadata exactly.
master, reviewed, and merged.