class MemcacheServer(object): def __init__(self, logdir, reliable='no'): self.queue_factory = QueueFactory(logdir) if reliable in ('yes', 'sync'): self.queue_factory.queue_class = ReliableQueue if reliable == 'sync': ReliableQueue.addlog = ReliableQueue.addlog_sync else: self.queue_factory.queue_class = Queue self.watchers = {} def notify(self, key): if key in self.watchers: ioloop.IOLoop.instance().add_callback(self.watchers[key].check) def handle_accept(self, fd, events): conn, addr = self._sock.accept() p = MemcacheProtocol(iostream.IOStream(conn)) p.server = self def start(self, host, port): self.queue_factory.scan_journals() self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0) self._sock.setblocking(0) self._sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self._sock.bind((host, port)) self._sock.listen(128) ioloop.IOLoop.instance().add_handler(self._sock.fileno(), self.handle_accept, ioloop.IOLoop.READ)
class MemcacheServer(object): def __init__(self, logdir, reliable="no"): self.queue_factory = QueueFactory(logdir) if reliable in ("yes", "sync"): self.queue_factory.queue_class = ReliableQueue if reliable == "sync": ReliableQueue.addlog = ReliableQueue.addlog_sync else: self.queue_factory.queue_class = Queue self.watchers = {} def notify(self, key): if key in self.watchers: ioloop.IOLoop.instance().add_callback(self.watchers[key].check) def handle_accept(self, fd, events): conn, addr = self._sock.accept() p = MemcacheProtocol(iostream.IOStream(conn)) p.server = self def start(self, host, port): self.queue_factory.scan_journals() self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0) self._sock.setblocking(0) self._sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self._sock.bind((host, port)) self._sock.listen(128) ioloop.IOLoop.instance().add_handler(self._sock.fileno(), self.handle_accept, ioloop.IOLoop.READ)
def __init__(self, logdir, reliable='no'): self.queue_factory = QueueFactory(logdir) if reliable in ('yes', 'sync'): self.queue_factory.queue_class = ReliableQueue if reliable == 'sync': ReliableQueue.addlog = ReliableQueue.addlog_sync else: self.queue_factory.queue_class = Queue self.watchers = {}
def __init__(self, logdir, reliable="no"): self.queue_factory = QueueFactory(logdir) if reliable in ("yes", "sync"): self.queue_factory.queue_class = ReliableQueue if reliable == "sync": ReliableQueue.addlog = ReliableQueue.addlog_sync else: self.queue_factory.queue_class = Queue self.watchers = {}