Accessing services#
An OrangeQS Juice installation consists of multiple distinct OrangeQS Juice services running simultaneously. There are several ways to interact with and access these services. This tutorial covers the following methods:
Through Client.execute. Use the
ClientAPI to send requests to a service.Through a proxy kernel. Directly connect to IPython services using a Jupyter notebook or console.
Through Client.execute#
TODO
This features has yet to be implemented and documented.
Through a proxy kernel#
Some OrangeQS Juice services are running an IPython kernel. It’s possible to directly connect to this kernel directly from the JupyterLab UI. Having direct kernel access allows to execute arbitrary Python code in the context of that service.
OrangeQS Juice makes proxies for services available from the JupyterLab Launcher. To open the Launcher, press the + icon to the right of all open tabs. From the Launcher , select Service: <service name> under either the Notebook or Console section. This will open a new notebook or console that connects to the IPython kernel from that service.
Any code that is executed in a proxy kernel will run directly on the respective service. This is really useful to have direct control or to debug an issue. At the same time, having arbitrary code access make it possible to break things! Use this function with great care.
Connecting to a busy kernel
While an IPython kernel is busy executing a code cell, it is unable to respond to new connection requests. This means that the service might appear to be offline, while in reality it is just busy with executing some code!