be careful with azure functions. it’s what i used. it was triggered by IoTHub_EventHub and saved data to storage tables. all was going well until i started testing ONE single IoT device in earnest. bang, the bill went up to $20 in a week. why? accessing node.js modules files, apparently. been over a month and they still haven’t figured it out. imagine if i had 1,000 devices. that’s why i don’t use azure functions. and because i used node.js, i was able to port over the code to my gateway in about 2 hours. i’ve spent, i’d say, over 7 full days dealing with microsoft’s billing & tech support (the former needs the latter in these complicated situations). i am not going to waste any more time on it. tech problems on a VPS are easier to handle than an accounting issue which is based on microbilling resulting from the number of transactions and god knows how many log files and where.
from a cost perspective, accountants aren’t any cheaper than techies. tech problems, once solved, tend to not recur. accounting problems do. and there is no stackexchange for billing that everyone can consult.
and, once again, the microsoft people are super nice and try to be helpful. google? good luck trying to get to a real person. from a business perspective:
microsoft: has always been focused on creating value for the small-to-mid sized business customer. i think, as a startup, we’re too small. real people available, paid support starts at about $25 and you don’t even really need that. forums are good. decent api.
ibm: only useful for the big clients. you can get to a real person. api is harder than azure’s. they lost out on the PC revolution, they’re going to lose out on the IoT one, too. and they still keep going and going and going… pretty amazing.
google. their focus hasn’t been business, it’s been about selling ads to consumers and on the side make geeky, fun, cool things. and it shows. you can’t get to a real person easily. their api and doc is godawful and out-of-date.
aws. didn’t try it. several colleagues advised me to stay away because it’s highly complicated and can get expensive very, very easily. that’s it’s more fun to get a tooth pulled without anaesthesia.
digital ocean. haven’t tried but have heard good things about them and their virtual servers seem to be very nicely priced.
mongo. i can’t really find a use for it because azure tables works well enough. besides, mongo, in the past, seem to have had problems with losing data.
if anything else comes to mind, i’ll post.
does anyone have any recommendations for gateway/linux server management? i’m playing with balena and it’s quite good. dataplicity is unreliable, i think it only works well when you have a good router – something beyond my control. remote.it is not much more reliable either. both dataplicity and remote.it have an intersection of unreliability and then other situations where one works and the other doesn’t. balena is pretty rock-solid thus far. and they’re designed, it seems, from the ground up to manage server groups. i’m still playing with it…