Channel API alternatives

1,933 views
Skip to first unread message

PK

unread,
Oct 29, 2016, 9:58:41 PM10/29/16
to Google App Engine
Google is shutting down the Channel API. I had found the existing API difficult to use but after I had figured out my patterns it has been working well for my purposes. In fact the biggest annoyance has been that it does not work as reliable on the dev server as it works in production making me many times chase dev server only issues. I am wondering how many people just gave up when it was not working for them on the dev server.

Google is recommending to use Firebase but is seems a bit more heavyweight that what the Channel API was. Are there any alternatives for lightweight callback communication similar to what the Channel API has been providing that you would recommend?




Nick

unread,
Oct 31, 2016, 5:27:39 PM10/31/16
to Google App Engine
It would be great if google could provide a porting guide at the least.

I also agree that once you got them working they're great, wasn't so happy to hear they're out the window. Why couldn't you just move the infrastructure underneath to share firebase tech instead of gtalk and leave it integrated to the platform?

Alexey

unread,
Oct 31, 2016, 11:01:07 PM10/31/16
to Google App Engine
I was just discussing this very point with someone today.  Firebase and Channel are not equivalent, which is why Google appears to be pushing this API change.  Otherwise what is the point of having API, if implementation details cannot be addressed seamlessly?

Jordan (Cloud Platform Support)

unread,
Nov 1, 2016, 10:25:49 AM11/1/16
to Google App Engine
Our goal is to continue to do a better job of delivering reliable, performant, and full featured services. This means deprecating those APIs that have little to zero usage on our system to free up resources for newer, better performing products.

The Channel API actually runs on the XMPP API which is also being deprecated.  If you wish to continue using an XMPP system, you can always run your own XMPP server on Google Compute Engine using a third party XMPP library

A better alternative though might be to use Socket.IO on a GCE or Google App Engine Flexible instance as shown in our example guide for real time gaming

Note, the above two alternatives along with Firebase are indeed heavier integrations. For the best light weight alternative, I would highly recommend switching over to Google Cloud Pub/Sub for real time messaging, as it supports the fan-out messaging pattern much better than Channel API. 

 

PK

unread,
Nov 1, 2016, 12:05:32 PM11/1/16
to google-a...@googlegroups.com
Thanks Jordan.

How were you thinking that pubsub will work all the way out to the browsers?

PS I could write a lot about the first two sentences of your response but I will skip it. I will just say that it is ironic that a low usage platform like GCP makes such bold deprecation statements at a moment when it should be convincing customers that is here to stay so that they do not deploy with the default choice, the competitor who has 95% of the market.


--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-appengi...@googlegroups.com.
To post to this group, send email to google-a...@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/bc03a52d-c7e5-4907-822c-9029c8b7b9ba%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Zachary Yaro

unread,
Nov 1, 2016, 12:34:52 PM11/1/16
to google-a...@googlegroups.com
Jordan,

Is there a pricing comparison anywhere for those different options?  As an independent developer, I appreciated that the Channel API had a free quota I could use during smaller-scale testing so my App Engine resources were not cutting into my budget prior to launch.

Thank you,
Zachary Yaro
--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscribe@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.


--
Zachary Yaro

Jordan (Cloud Platform Support)

unread,
Nov 1, 2016, 3:39:35 PM11/1/16
to Google App Engine
Google Cloud Pub/Sub makes use of Topics and Subscribers. Publishers post messages to a Topic, and the message is either Pushed or Pulled to/by the Subscribers who are subscribed to the Topic. The client Publisher and Subscribers can be run from a web application hosted on Google App Engine and served via the browser, by simply calling the Pub/Sub API using any of the supported languages.  

Jordan (Cloud Platform Support)

unread,
Nov 1, 2016, 3:56:37 PM11/1/16
to Google App Engine
Hey Zachary,

You are correct that we always try to offer a Free Quota for our services, along with the Free Trial credit. In depth pricing information and estimates for each of our products and services can be seen using our Pricing Guide. Information on Sockets pricing can also be seen here

Alexey

unread,
Nov 3, 2016, 7:49:18 PM11/3/16
to Google App Engine
Cloud Pub/Sub works only between servers -- it doesn't seem like there's server-to-browser push functionality with this, correct?  Also, this is explicitly meant for static topic, whereas the old Challen/XMPP stack supported ad-hoc and stateless topic/channel selection and a push from server to client Javascript.  Seems that Firebase is the only thing that covers that aspect of it, though it's stateful and requires knowing when to kill off a piece of state so as not to have unbounded growth.  Is that a fare assessment?

PK

unread,
Nov 3, 2016, 7:53:28 PM11/3/16
to google-a...@googlegroups.com
Hi Alexey,

this has been my understanding too but have never had direct experience with it. I was surprised that Google Support suggested it as an alternative. I still do not think it is.

PK 

Jordan (Cloud Platform Support)

unread,
Nov 4, 2016, 12:27:14 PM11/4/16
to Google App Engine
Hello Alexey,

You are correct that Pub/Sub is not a complete replacement to the Channel API, and was recommended as a simple lightweight callback communication alternative. The intended replacement is indeed Firebase. 

As you mentioned, Pub/Sub is designed for pre-defined Topic/Subscriptions, and would need to be accessed from a web application using a language like Node.js, rather than embedded JavaScript running from the browser. Of course you can always attempt to access Google APIs via the browser using the Beta JavaScript Client Library; simply using the Pub/Sub Discovery URL







Strom

unread,
Nov 6, 2016, 11:23:33 PM11/6/16
to Google App Engine
How nice, another piece of GAE being shut down.

As for alternatives, I've found the following four that I'll be looking into:

Morgan Hallmon

unread,
Nov 7, 2016, 11:05:58 AM11/7/16
to Google App Engine
Strom,

We're recommending Firebase as an alternative to the Channel API. Please have a look at this article on how to use it with App Engine: https://cloud.google.com/solutions/using-firebase-real-time-events-app-engine. As it connects to all manner of clients (web, Android, iOS), we believe it's a robust solution for Channel API users. Please have a look at it in addition to the other investigations you mentioned.

Kind regards,
Morgan
Reply all
Reply to author
Forward
0 new messages