4 ms·
2 SP3's from OVH would be both cheaper (89*2) and have way, way more bang for the buck than a single weak amazon instance. (E3 1245v2 8 ht cores @ 3.4ghz , 2 x
by etherael 13y ago
2 SP3's from OVH would be both cheaper (89*2) and have way, way more bang for the buck than a single weak amazon instance. (E3 1245v2 8 ht cores @ 3.4ghz , 2 x 120GB SSD in soft raid and 32gb memory) If you wanted to run windows on those, you'd need to buy two licenses pushing an extra 50$ a month onto the price. You also wouldn't need to screw around with spawned instances in failover, and you could actually use the capacity of both systems at the same time to massively increase your initial capacity before it becomes necessary to expand that investment again and get more steel.
None of your windows based software will scale well horizontally, especially at the storage layer compared to the competition, and if you're relying on bizspark for the price advantage, you should also mention it expires in 3 years and you then either have to go full in to microsoft licensing and massively increase your software spend, or drop your engineering investment in the past three years and go with something off the MS stack. It sure is a neat trap from microsoft's perspective, but it's a pretty shitty deal for anyone that actually looks at it economically and long term.
On the other hand, if you build your apps around a horizontally scalable storage solution (of which there are about fifty hojillion these days on open source stacks) you have near infinite ability to scale upward by just throwing more boxes at the problem. Visual Studio may be very pretty but for a nice IDE you drop a well behaved git, and everything that goes with it.
You also lock your software engineer options to people that are satisfied working on the MS stack, which whilst acknowledging that anecode is not data and all, in my experience means that you will get poor results.
If you look around and all you see is masses upon masses of startups pursuing fairly similar infrastructure strategies, you should probably think very hard about why everyone else thinks you're wrong before you're certain you're not.
From my perspective the equation looks like this;
Pros;
Visual studio.
MS CLR performs well against python / ruby / php.
In a single server environment, you can probably get away without any sysadmin expertise.
Cons;
Everyone has to use Windows.
Storage layer doesn't scale well horizontally.
Git not so great. (apparently this no longer applies and msysgit works perfectly well now)
CLR may perform well compared to interpreted languages, but not so great if you're willing to go a bit more esoteric or if you're happy with boring old java.
Application server scaling is largely the easiest part of any horizontal scaling stack at any rate, minimising the significance of your competition using even extremely slow interpreted languages.
Licensing fees are infinitely more than the (typically free) competition. When BizSpark expires, even moreso. And you bought yourself a nice solid vendor lockin by using their sandpit in the meantime.
You're stuck with microsoft monoculture and all the associated baggage that implies from a HR and strategy perspective.
Most of the stuff everyone else is using that you might want access to works either not at all or poorly on windows, meaning when you run up against the same problems as your competition, they'll have more ground on you from the get-go. (ansible, redis, practically every NoSQL db in existence, etc etc etc, pick a problem space you need to find a solution in and compare the MS CLR based options to "everything else" and MS rarely comes out on top unless it's dealing with MS proprietary formats or interfaces in some way)
- jf22 13y ago>"but for a nice IDE you drop a well behaved git, and everything that goes with it." ? What about Visual Studio makes git behave badly?
- etherael 13y agoNothing particularly about Visual Studio, and I know msysgit does work, but it worked absolutely terribly back when I tried it. That wasn't intended to be a mark against Visual Studio in any way, I agree completely it's a very nice IDE and the statement about it maybe being the best in the world is probably quite defensible. I just don't think that alone is a good reason to ignore all the other things about the MS stack that don't compare well to the competition, and the first example that sprung to mind was real git vs msysgit.
- jf22 13y ago>"On the other hand, if you build your apps around a horizontally scalable storage solution" I'm assuming you're talking specifically about Sql Server because there is no technical reason you can't use MS tech with Node, Mongo or MySql. What about Sql Server doesn't scale horizontally? Sql Server was scaling horizontally in the enterprise space since 2005. And also, all the fancy middleware ( memcache, lucene, whatever ) that we put in front of MySql to scale it these days work just fine with Sql Server.
- etherael 13y agoSQL databases in general don't scale well once they've maxed out a single machine, cross server joins are never going to be pretty and there's a pretty good reason why denormalising data and the adoption of NoSQL solutions with baked in clustering is taking off in a big way. Re NoSQL solutions on windows, theoretically possible, sure, but which NoSQL solution targets windows as its primary platform rather than an afterthought? If you file a bug report, will they notice or care?
- Retric 13y agoIn our tests NoSQL was far slower than SQL solutions the advantage was it dealt with hardware failures more easily, but if you use 5% as much hardware it's far less of an issue. Edit: I think one of the largest probmems is most developers doin't understand SQL or databases that well. Indexed Views for example are an incredibly efficient tools that allow you to avoid a lot of expensive joins without the normal risks of denormalizing your data. However, try and think of the last time a developer mentioned them.