示例#1
0
文件: utils.py 项目: jusbrasil/nydus
def peek(value):
    generator = iter(value)
    prev = next(generator)
    for item in generator:
        yield prev, item
        prev = item
    yield prev, None
示例#2
0
文件: base.py 项目: thoas/nydus
    def _route(self, attr, args, kwargs, **fkwargs):
        now = time.time()

        for i in xrange(len(self.cluster)):
            db_num = next(self._hosts_cycler)

            marked_down_at = self._down_connections.get(db_num, False)

            if not marked_down_at or (marked_down_at + self.retry_timeout <= now):
                return [db_num]
        else:
            raise self.HostListExhausted()
示例#3
0
文件: base.py 项目: jusbrasil/nydus
    def _route(self, attr, args, kwargs, **fkwargs):
        now = time.time()

        for i in xrange(len(self.cluster)):
            db_num = next(self._hosts_cycler)

            marked_down_at = self._down_connections.get(db_num, False)

            if not marked_down_at or (marked_down_at + self.retry_timeout <=
                                      now):
                return [db_num]
        else:
            raise self.HostListExhausted()