Live data from Hacker News

My startup is Microsoft-based, here's why

jitbit.com

201–209 of 209 posts

Re: My startup is Microsoft-based, here's why

#201
post #28

Earlier quoted context omitted.

$200 is a m.large instance (7.5.GB) plus the "provisioned i/o" charges (EBS volume). MS SQL is free since we're in BizSpark.

but one instance on Amazon is not high availability. The rest of your post could be read as apples with oranges, Charm was expensive because they made massive architectural mistakes. End of story. This is not to say that what you are doing/saying is incorrect. Your stuff works and is able to cope with the load thrown at it on one server. To be honest I'm quite mystified why startups boast about using n instances to s…

I'm a little late to the party, but can't believe so few people brought up the lack of availability admitted in this article. The OP is admitting that the company's official stance of availability is that it will restore from 1 hour ago ... and lose client data.

Losing client data is the worst thing you could do as a SaaS. The second worst thing you could do is to not be online - e.g., as someone pointed out; because one app (or even something out of your control) took out all your services.

MS is not really the story here. Cost of HA in typical Linux vs. MS stacks, which wasn't addressed at all in the article, is what is relevant.

Re: My startup is Microsoft-based, here's why

#202
post #138

Earlier quoted context omitted.

In 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 o…

Last I saw cassandra and pgsql were pretty close to even on single systems, but you can push as many shards in a cassandra cluster as you want. Where are you getting 5% from? Do you mean to imply sql is typically 20x faster than NoSQL on comparable hardware prior to clustering?

They provide similar performance where there features overlap but Cassandra is still missing important RDBMS optimizations. A great example being transactions, if you actually need that type of protection it takes a lot more overhead to fake if you don't have DB support. That said I am a believer in mixing both approaches it takes a little more thought and effort, but the benefits can be dramatic.

Re: My startup is Microsoft-based, here's why

#203
post #202

Earlier quoted context omitted.

Last I saw cassandra and pgsql were pretty close to even on single systems, but you can push as many shards in a cassandra cluster as you want. Where are you getting 5% from? Do you mean to imply sql is typically 20x faster than NoSQL on comparable hardware prior to clustering?

They provide similar performance where there features overlap but Cassandra is still missing important RDBMS optimizations. A great example being transactions, if you actually need that type of protection it takes a lot more overhead to fake if you don't have DB support. That said I am a believer in mixing both approaches it takes a little more thought and effort, but the benefits can be dramatic.

I agree with you here, NoSQL can't be used for everything yet, maybe one day, hyperdex + acid looks promising, we'll see. But even restricting the field back to first tier SQL based solutions, you're still talking MS SQL vs PostgreSQL, and the associated licensing fees involved in both scenarios (expensive vs free).

I think performance is pretty similar between the two also last I checked. And you can setup PGSQL with a drbd failover without that much hassle. What are the licensing implications of running two windows servers with an MS SQL server failover? Do you actually need to purchase two copies for that?

Re: My startup is Microsoft-based, here's why

#204
post #146

Earlier quoted context omitted.

>Edit: FWIW it doesn't test Microsoft SQL Server. Still, for most simple-ish web applications I can't imagine MSSQL server being significantly faster than Postgres or MySQL. Its selling point is really its feature set as opposed to its performance anyway. More than just that, they tested mono, which sadly is often very slow, and didn't test on IIS.

The ASP.NET tests run on Windows (EC2) used IIS. We have a SQL Server pull request [1] but haven't been able to incorporate it yet and this will not be included in the upcoming Round 6. https://github.com/TechEmpower/FrameworkBenchmarks/pull/336

Had a little look at this whilst waiting for a shower, so I was on my phone, apologies if I missed anything.

My understanding is Node.js is caching the same read requests to avoid having to hit the DB?

ApiController does not do that by default in MVC4, for reasons best known to themselves, regular vanilla controllers do.

However, this: https://github.com/filipw/AspNetWebApi-OutputCache

Fixes that.

I appreciate it might be cheating a bit to bring in a 3rd party library when looking at a full stack provider, but it would explain the discrepancy between Read and Write performances.

Additionally, with the EntityFramework (MS's ORM) when the security you are using is not that of the SQL back end, it can be beneficial to 'cache' it, rather than use a session each time. There are obvious cons to this, but it is a very real world scenario, one of the nice things about an ERM (Entity-Relationship-Model), well the only nice thing, is that it ensures the integrity of the data. Assuming you defined it correctly, which is sometimes an arse, in the same way you don't end up with the perfect 3NF design the academics taught us.

I've put a reminder in my calendar once I'm done on this project (all hands on deck time, as the business has imposed a deadline, without consulting...) I feel I could give a more realistic example.

Re: My startup is Microsoft-based, here's why

#205

Earlier quoted context omitted.

Go was about 20% of the speed of the java one You're probably doing something wrong. Go tops the techempower benchmarks for concurrent db access and page rendering, and for pure math performance, it has an average case performance of 17% slower than Java( highly dependent on problem chosen of course ) refs: http://www.techempower.com/benchmarks/ http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?t...

And that's with Go 1.1 vs. Java 6 or 7.

Quite, Go 1.1 wasn't released 6 months ago. People were reporting 20-40% performance improvements[1] in 1.1 so maybe it would be faster now.

It is also certainly going to do with the fact I learn Java first some 13 years ago. C# some 8 years ago (I didn't care for it before it had generics / nullables, CamL 10 years ago etc.

Plus I can't find the tutorial I was using to let people tell me how bad it is.

The thing is, go back to something which was been hyped 6 months ago, as super-everything. You use it, and it isn't. Then 3 months later you see (unfairly!) the headline zomfg it's 40% faster, I can't help but feel 'meh', fool me once....

That said I will look at it again, its just today the tooling is certainly not as rich as I'd like, the libraries aren't there yet and I don't have the time to help make it better.

I do like learning new languages, even if you go back to the older one, it often helps shape new thought processes, and whilst I really do try to think in the manner fitting for it, it is very possible I went in with the whole when you only use a hammer, everything looks like a nail approach.

[1] - http://dave.cheney.net/2013/05/21/go-11-performance-improvem...

Re: My startup is Microsoft-based, here's why

#206
Ok, so I'm on about day 3 of trying to get a MS ASP.NET 4.5 environment set up, and I feel like killing myself. Every download is gigabytes and gigabytes. It feels like everything wants me to reboot my PC. Installations take hours at a time. On opening the project, half the references are gone, and I have to rebuild (takes ages) the solution to figure out what exactly is missing. Using NuGet doesn't seem to actually install many of the things and so I have to manually do it and wonder why some need me to put -pre on the end. SQL Server is a ~4GB download. Everything is hidden away in weird little dialogs and installation steps that if you mess up you have no idea how to fix. Windows is now taking up about 50GB and it's rising. Install steps appear to do nothing and then spring a window up after about five minutes. I don't know what is going on.

My co-worker and I just want to sob and have this nightmare finish. I never want to use Windows ever again. I need a fucking drink.

I miss being able to `apt-get install python-virtualenv postgresql-9.1 virtualenvwrapper; mkvirtualenv derp; pip -r requirements.txt` and be pretty much set up.

On the plus side I've read quite a lot of this book...

Re: My startup is Microsoft-based, here's why

#207
post #133

Earlier quoted context omitted.

I've worked in IT for more than 15 years. More often than not, Microsoft's enterprise products do "just work." In fact, due do volume pricing (making server 2008/2012 licenses very cheap), around here I recommend Server 2012 w/ standalone LDAP role when people need an LDAP server. Why? Because it just works. An a related note, I, too, am in the process of building a new video management system based on windows (why a…

Have you ever had Active Directory go sideways? I mean, really badly? In a large (100+ employee) setting? If not, please don't say "it just works", especially when you're calling to get "enterprise support" from Microsoft and not even the engineer you're on the phone with can explain why your configuration is failing. Microsoft might have had its place. On the desktop. 5-10 years ago. But for environments where you n…

100+ Employees? Well, my current environment is about 500,000 users across 3 campuses, and 4 domains. Throw in federated authentication (shibboleth), custom apps, *nix auth, etc.

With that in mind: It just works!

With any large deployment (100 users isn't large) there are bound to be difficulties. That isn't the exclusive realm of Microsoft. As mentioned elsewhere, have you ever done a large deployment of kerberos? I have. I'll take AD on the infrastructure side any day. "Sideways" AD is a whole lot easier to manage than a sideways MIT Kerberos5 KDC.

Microsoft does have its place. In the enterprise, in the server room, today.

Re: My startup is Microsoft-based, here's why

#208

Earlier quoted context omitted.

Agree'd. Anyone who doesn't agree, hasn't tried to setup the Kerboros LDAP crap on Linux.

Kerberos and LDAP are two different things. You are aware Active Directory is just LDAP with extensions, correct?

Not really. AD is krb5 mutual auth backed by an LDAP datastore. LDAP is also used for storing various bits of other metadata. You can (with much pain and sadness) implement a AD-like system using MIT Kerberos5 and OpenLDAP (I've done it)

In fact, even saying that the LDAP portion is extended is a bit misleading. In fact, AD implements a fully compliant LDAP interface. It does lack the more common LDAP Schemas (though they can be installed if you wish), and relies on a schema that MS developed, but the LDAP server is not, itself, extended.

Re: My startup is Microsoft-based, here's why

#209
post #184
post #114

Why do some people just love locking themselves into closed platforms?

Because of return on investment.

You can have return on investment without locking yourself into a closed platform. You don't have to lock yourself into a closed platform for ROI.
Post reply on HN