views:

112

answers:

2

I have a field device which keeps on sending data over to any designated port using sockets. I am planning to use GAE for server-side infrastructure.

I read GAE does not support sockets. But i can configure the device to send the data over port 80. so we wrote a genericservlet to capture this data on GAE. But it is not obtaining any values from the client.

any suggestions to fix this issue?

+1  A: 

What is not working?

The data you are sending over port 80 is still HTTP, right? Otherwise, that is not going to work.

Alternative incoming protocols that GAE can handle are email and XMPP.

Thilo
The data is not HTTP format, so I think it won't work. :(
Vinod
Thank you very much. Unfortunately my devices cannot be configured for HTTP. Only sockets. So I guess I need to use a separate gateway to accept those data and then batch them to GAE for further processing.
Vinod
+3  A: 

You can only do processing on a whole of request basis using GAE. your request is buffered (up to a maximum of 10MB) then passed to your servlet complete. If you can configure your device to send http requests with the data as a parameter, or even to batch these then you can process these requests using GAE. GAE only process input as HTTP requests, XMPP, and email.

Geoff
"anything that is not HTTP cannot be processed using GAE": GAE also supports incoming XMPP and email.
Thilo
Updated, thanks for the info.
Geoff
Unfortunately my devices cannot be configured for HTTP. Only sockets.
Vinod
Then you can't use App Engine - just because it comes in on port 80 doesn't mean it will reach your app!
Nick Johnson
Seconded, you'll have to find another way. Even a hosted PHP script cannot process the type of data you're talking about. Consider writing a bridge application that can listen on the socket and then buffer the data and post it in batches to the Servlet. What sort of connection does the field device have to the internet? (does it come through your office?), if you're unable to set up a bridge application in your organisation/home then a VPS or dedicated server could be required. You can get a VPS pretty cheap these days, even if you just used it to buffer the data and pass it on to GAE.
Geoff
Since it is a hardware sensor device which sends information, without much of a management options to change the format to HTTP, I've resorted to a Gateway approach.
Vinod