InfiniSQL  v0.1.2-alpha
Massive Scale Transaction Processing
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Listener.cc File Reference

On each host, this actor accepts new connections and distributes incoming network traffic from clients to Transaction Agents. More...

#include "Listener.h"
Include dependency graph for Listener.cc:

Go to the source code of this file.

Macros

#define EPOLLEVENTS   1024
 

Functions

void * listener (void *identity)
 launch Listener actor More...
 

Detailed Description

On each host, this actor accepts new connections and distributes incoming network traffic from clients to Transaction Agents.

Author
Mark Travis mtrav.nosp@m.is15.nosp@m.432+s.nosp@m.rc@g.nosp@m.mail..nosp@m.com
Date
Tue Dec 17 13:27:04 2013

There is only one listener per host. It takes a small amount of coding effort to allow for multiple listeners per host. But no workload as yet (benchmarked on 12-core Xeon) has been shown to warrant multiple listeners. It's very possible that larger hosts may benefit from distributing incoming TCP/IP traffic across multiple listeners, and the effort to allow that won't be difficult to implement.

Definition in file Listener.cc.

Macro Definition Documentation

#define EPOLLEVENTS   1024

Definition at line 39 of file Listener.cc.

Function Documentation

void* listener ( void *  identity)

launch Listener actor

Parameters
identityhow to identify Listener instance
Returns

Definition at line 201 of file Listener.cc.

Referenced by TopologyMgr::TopologyMgr().

202 {
203  new Listener((Topology::partitionAddress *)identity);
204  while (1)
205  {
206  sleep(250000);
207  }
208  return NULL;
209 }

Here is the caller graph for this function: