Example #1
0
    def __init__(self, computers = None, default_computer_config = None,
                 max_kernel_timeout = 0.0, tmp_dir = None):

        self._kernel_queue = Queue()

        self._kernels = {} #kernel_id: {"comp_id": comp_id, "connection": {"key": hmac_key, "hb_port": hb, "iopub_port": iopub, "shell_port": shell, "stdin_port": stdin, "referer": referer, "remote_ip": remote_ip}}
        self._comps = {} #comp_id: {"host:"", "port": ssh_port, "kernels": {}, "max": #, "beat_interval": Float, "first_beat": Float, "resource_limits": {resource: limit}}
        self._clients = {} #comp_id: {"ssh": paramiko client}
        self._sessions = {} # kernel_id: Session

        self._sender = sender.AsyncSender() # Manages asynchronous communication

        self.context = zmq.Context()
        self.default_computer_config = default_computer_config

        self.max_kernel_timeout = float(max_kernel_timeout)
        self.tmp_dir = tmp_dir

        if computers is not None:
            for comp in computers:
                comp_id = self.add_computer(comp)
                preforked = comp.get("preforked_kernels", 0)
                if preforked:
                    for i in range(preforked):
                        self.new_session_prefork(comp_id = comp_id)
                    logger.debug("Requested %d preforked kernels"%preforked)
Example #2
0
    def __init__(self,
                 computers=None,
                 default_computer_config=None,
                 kernel_timeout=None):
        self._kernels = {
        }  #kernel_id: {"comp_id": comp_id, "connection": {"key": hmac_key, "hb_port": hb, "iopub_port": iopub, "shell_port": shell, "stdin_port": stdin}}
        self._comps = {
        }  #comp_id: {"host:"", "port": ssh_port, "kernels": {}, "max": #, "beat_interval": Float, "first_beat": Float, "resource_limits": {resource: limit}}
        self._clients = {}  #comp_id: {"ssh": paramiko client}
        self._sessions = {}  # kernel_id: Session

        self._sender = sender.AsyncSender(
        )  # Manages asynchronous communication

        self.context = zmq.Context()
        self.default_computer_config = default_computer_config

        self.kernel_timeout = kernel_timeout
        if kernel_timeout is None:
            self.kernel_timeout = 0.0

        if computers is not None:
            for comp in computers:
                self.add_computer(comp)