December 8, 2015 | Written by: Abtin Assadi
Share this post:
Bluemix started as IBM’s Cloud Platform as a Service for software developers with a variety of build packs and a well equipped set of DevOps tools. In the short time since its inception, Bluemix has expanded its cloud platform to include OpenStack, Docker and virtual machines, further extending its ability to service workloads.
Bluemix is now the hub for many services that have grown up around the core of central credential authentication, billing, and secure data integration. It is now the main entry point for credentials to access to a variety of service end-points and APIs offered by IBM and its partners on Bluemix Marketplace.
There are two models for access to these cloud services, Replay request via a proxy and Direct interaction. Let’s use IBM Watson Dialog Service as an example. Dialog, a rules-based user response system, allows you to script conversations to answer questions or walk through a process.
Replaying request via a proxy
Replaying request requires all data to be exchanged through a server side proxy residing in Bluemix. In this model, the client and the service do not communicate directly. Instead, they relay all communications through the Bluemix proxy. The proxy is responsible for receiving requests from the client, passing them to the service, getting a response from the service, and passing the results to the client. The proxy must include the authentication credentials in each request sent to the service.
For more information see Obtaining Credential for Watson Service.
Direct interaction with service
Direct interaction lets the client directly communicate with the service without going through a server-side proxy in Bluemix, relying on authentication tokens to enable secure communications. A server-side application still resides in Bluemix, but acts only as an authentication proxy for the client. The client sends a request to the proxy when it needs to obtain or refresh its token. The proxy in turn forwards a request to the Edge Router to obtain the token. In addition to transparently routing all requests to Watson services, the Edge Router includes a component that handles authentication for all services, including granting and validating tokens. The client must include the token in all requests that it sends to the service.
To learn more see Using tokens in Watson Services.
Reply request and Direct interaction could be used with variety of services available on Bluemix. There are too many services to enumerate; however, here are a few:
- Data and analytics services including Rational and NoSQL databases, data warehouses, cache engines as well as BI, Predictive, Streaming, Geospatial, Hadoop and Spark for analytics. Twitter and Weather data are also available to enhance your analytics applications.
- Cognitive computing services including Watson services such as Dialog, Natural Language Classifier, Relationship Extraction, Concept Insight and Expansion, Language Translation and many more.
- The Internet of Things (IoT) Foundations and IoT Real-Time Insight to provide secure data collection, monitoring and management for connected devices.
- A variety of tools to aid with mobile application development for iOS, Android and Windows.
So, whether you plan to develop and deploy your code on Bluemix, or just intend to add services like Watson to your applications, and regardless of development and deployment location — Bluemix, on premises, third party clouds — Bluemix has become the entry point to gain access to cloud services from IBM and its partners.