• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Expose API in the cloud: please help to understand

 
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello!
I'm reading this article on WSO2, and they say:

you can easily expose your API in the cloud



What it means? "your API" is a set of my web-services with specified URLs, right? If I deploy it in a cloud, then it means that my services will be propagated to a set of servers which can be accessed by unified URL. Is it right understanding?
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Or something else behind exposing API in the cloud?
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Still want to know about this, any help?
 
Bartender
Posts: 11497
19
Android Google Web Toolkit Mac Eclipse IDE Ubuntu Java
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

surlac surlacovich wrote:What it means? "your API" is a set of my web-services with specified URLs, right? If I deploy it in a cloud, then it means that my services will be propagated to a set of servers which can be accessed by unified URL. Is it right understanding?



Yes. Essentially you are exposing some functionality over the web (might not be web service everytime (as in the XML sense). for e.g. it can be a servlet which returns some JSON)
Safely ignore the "cloud" part. It is just a buzz word. Think of it as a remote server which can be access from your client (browser. mobile etc)

To summarize, "exposing the API in the cloud" would mean making some functionality available over the web, typically using HTTP
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Maneesh. So it means the client sends HTTP request to some server (cloud entrance), which redirects it to another server (for load-balancing, or it is closer to the client geographically) and all that servers have an instance of my web-service, which needs to be executed, something like that?
 
Maneesh Godbole
Bartender
Posts: 11497
19
Android Google Web Toolkit Mac Eclipse IDE Ubuntu Java
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Essentially yes.
The redirect and load balancing part are not essentially because its a cloud service. From the consumer (client) perspective, these things are transparent and of no concern. The client just makes a request and receives a response back.

Consider this URL https://api.stackexchange.com/2.1/badges?order=desc&sort=rank&site=stackoverflow which is part of the API exposed by that site. If I point my browser (client) to the URL, I get a response back. I do not know or care how and if the request was redirected to which node and was it even geographically close to me.
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Awesome, that's definitely makes sense for me.

The redirect and load balancing part are not essentially because its a cloud service


Just please clarify for me, do you mean that load balancing and redirecting are under the hood of a cloud but it's not seen by ordinary client, am I correct? Cloud term is pretty vague. So if I want to build my cloud, I put one load balancer and specify multiple servers to provide payload, is this what they mean by "cloud"?
 
Maneesh Godbole
Bartender
Posts: 11497
19
Android Google Web Toolkit Mac Eclipse IDE Ubuntu Java
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

surlac surlacovich wrote:
Just please clarify for me, do you mean that load balancing and redirecting are under the hood of a cloud but it's not seen by ordinary client, am I correct? Cloud term is pretty vague. So if I want to build my cloud, I put one load balancer and specify multiple servers to provide payload, is this what they mean by "cloud"?


Yes.

surlac surlacovich wrote: So if I want to build my cloud, I put one load balancer and specify multiple servers to provide payload, is this what they mean by "cloud"?


No. You can offer hosting facilities without the loadbalancer and other facilities and it will still be a "cloud" Of course this might lead to latency and other issues and your customers might not be happy, but it's still a cloud ;)
More on cloud here http://en.wikipedia.org/wiki/Cloud_computing
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Unfortunately the word "cloud" is so overused that it has become meaningless. Right now , it seems like you are in the "cloud" if you have a HTTP server. Or you have a standalone app that stores data on a server, then you are in the "cloud". Bah!
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Jayesh A Lalwani wrote:Right now , it seems like you are in the "cloud" if you have a HTTP server. Or you have a standalone app that stores data on a server, then you are in the "cloud". Bah!


Thanks Jayesh, I agree that term "cloud" is too wide. Could you please tell us what parts are essential to name the system "cloud"?
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I mean, how you distinguish between cloud system and plain old client-server system?
 
Ranch Hand
Posts: 177
Hibernate Python Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I think the definition for a cloud is that you cannot define it. ;)
In my opinion you need some kind of load-balancing/ sharding to be a cloud.
You can do that on one physical server or many of them.
I think its the most fuzzy word in computer science.
 
surlac surlacovich
Ranch Hand
Posts: 296
Spring
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Manuel Petermann wrote:In my opinion you need some kind of load-balancing/ sharding to be a cloud.


Good point. And what do you mean by "sharding"? Is this something related to load-balancing?
 
Hot dog! An advertiser loves us THIS much:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic