it-swarm.dev

Warum führen so wenige große Websites einen Microsoft-Stack aus?

Auf den ersten Blick fällt mir eine Handvoll großer Websites ein, die den Microsoft-Stack verwenden

  • Microsoft.com
  • Dell
  • Mein Platz
  • Viel Fisch
  • Paketüberfluss
  • Hotmail, Bing, WindowsLive

Basierend auf Beobachtungen scheinen jedoch fast alle Top 500 Websites andere Plattformen zu betreiben. Was sind die Hauptgründe für die geringe Marktdurchdringung?

  • Kosten?
  • Technologieeinschränkungen?
  • Bietet Microsoft mehr für Unternehmens-/Intranetumgebungen als für öffentliche Websites?

Ich bin nicht auf der Suche nach Marktanteilen, sondern nach einer groß angelegten Übernahme des MS-Stacks.

33
realworldcoder

Ich gehe davon aus, dass die meisten "großen Websites" klein angefangen haben. Google, Youtube, Facebook et al. waren alle auf einmal Single-Server-Sites, die jemand als Hobby gebaut hat. Sie verwendeten LAMP-ähnliche Stapel, weil: 1) sie billig und die Entwickler arm waren und oft 2) weil sie an einer Universität waren und die Universitätsumgebung dazu neigte, [~ # ~] oss [~ # ~] zu bevorzugen .

Nachdem die Websites zu wachsen begannen, hielten die Entwickler einfach an dem fest, was sie wussten. In den Anfangsjahren gab es nicht genug Zeit oder Geld, um ein großes System neu zu schreiben. Wann und wenn dies jemals eine Option wurde, warum zu einer völlig anderen Basis wechseln?

Ich sage es, weil sie genau das wussten und hatten, als sie anfingen. SO ist nicht anders, wenn ich mich richtig an diese Geschichte erinnere. Die SO Gründer kannten den MS-Stack und hatten Zugriff auf die Tools/Lizenzen/etc, um zu starten es zu benutzen, und so haben sie es benutzt!

(Ich habe auch gehört, dass sie auch beweisen wollten, dass der MS-Stack für große Websites genauso gut ist wie LAMPE , aber das kann apokryphisch sein.)

39
CodexArcanum

Kosten

Darauf setze ich mein Geld. Facebook hat 60k Server , was kostet die Lizenz dafür im Vergleich zu Linux?

Schauen Sie sich den "offenen Stapel" an, wie wir ihn nennen können:

  • Apache - Kostenlos
  • PHP - Kostenlos
  • MySQL - Kostenlos
  • Linux - Kostenlos

Kontrast zum MS-Stack:

  • IIS - $$$
  • Visual Studio - $$$ (aber es ist großartig)
  • Betriebssystem - $$$
  • SQL Server - $$$
26
Josh K

Ich denke nicht, dass die Kosten der Hauptgrund sind, aber Websites wie Google benötigen ein hohes Maß an Kontrolle darüber, was auf ihren Servern ausgeführt wird. Sie verwenden keine Standardinstallation von Ubuntu auf ihren Servern. Die Verwaltung von Tausenden von Servern bedeutet, dass sehr viele Verwaltungsaufgaben automatisiert werden müssen. Befehlszeilenorientierte, modulare Open Source-Betriebssysteme wie Linux oder * BSD eignen sich wahrscheinlich besser für die Anpassungsmöglichkeiten, die eine Website wie Google erfordert.

EDIT: Und vergessen wir nicht, dass viele dieser Top500-Websites auf eine oder mehrere Arten mit Microsoft konkurrieren. Daher möchten sie sich wahrscheinlich nicht auf die Technologie eines Konkurrenten verlassen, wenn sie dies vermeiden können.

25
user281377

Kultur

Große Hacker fordern Kontrolle. Große Hacker teilen Sachen.

Alle coolen Spielzeuge stammen von großartigen Hackern und sie teilen und verbessern sich gegenseitig.

Denken Sie an all die coolen, glänzenden Sachen, die kürzlich herausgekommen sind: Python, Ruby, Rails, Django, Flask, Node.js usw.

Alle stammen von Personen, die ein Unix-System (Linux oder Mac) verwenden.

Unix-Systeme bieten eine großartige Plattform und großartige Tools für ernsthafte Programmierer, um ihre Arbeit zu erledigen.

Windows-Systeme und Visual Studio werden in der Regel eher von Personen verwendet, die nur auf die etablierte Weise "Dinge erledigen" und ihren Lebensunterhalt verdienen möchten.

Das liegt nicht nur daran, dass sie klein anfangen, wie die Antwort von CodexArcanum nahe legt. Es ist nicht wie "Oh, sie würden gerne zu Fenstern ziehen, aber es ist zu spät". Sie wollen wahrscheinlich nicht zu Windows wechseln. Es mangelt stark an Tools und Leistung für die Art von Dingen, die beim Ausführen eines Web-Startups erforderlich sind.

Für den Anfang verwenden die meisten neuen glänzenden OSS-Projekte git zur Versionskontrolle und haben wahrscheinlich ihr offizielles Code-Repository bei github oder so ähnlich.

Um Paul Graham zu zitieren:

Was wollen Hacker? Wie alle Handwerker mögen Hacker gute Werkzeuge. In der Tat ist das eine Untertreibung. Gute Hacker finden es unerträglich, schlechte Werkzeuge zu verwenden. Sie werden sich einfach weigern, an Projekten mit der falschen Infrastruktur zu arbeiten.

(.....)

Vor ein paar Jahren erzählte mir ein Freund eines Risikokapitalgebers von einem neuen Startup, an dem er beteiligt war. Es klang vielversprechend. Aber als ich das nächste Mal mit ihm sprach, sagte er, sie hätten beschlossen, ihre Software unter Windows NT zu erstellen, und gerade einen sehr erfahrenen NT-Entwickler als Chief Technical Officer eingestellt. Als ich das hörte, dachte ich, sind diese Jungs zum Scheitern verurteilt. Erstens konnte der CTO kein erstklassiger Hacker sein, denn um ein hervorragender NT-Entwickler zu werden, hätte er NT mehrmals freiwillig verwenden müssen, und ich konnte mir keinen großartigen Hacker vorstellen, der das tut. und zweitens, selbst wenn er gut wäre, würde es ihm schwer fallen, jemanden einzustellen, der gut für ihn arbeitet, wenn das Projekt auf NT aufgebaut werden müsste.

20
hasen

Also wenige? Ich glaube nicht, dass 34% Marktanteil wenige sind.

http://w3techs.com/technologies/overview/operating_system/all

Es ist die Studie mit dem niedrigsten Ergebnis für Windows, das ich gefunden habe.

Es gibt andere Studien, die Windows einen umsatzbasierten Marktanteil von mehr als 60% gewähren.

Wenige ist definitiv nicht das gute Wort.

Weitere Studien :

Reuters: http://www.reuters.com/article/idUSN2748543820080228

Netcraft: https://ssl.netcraft.com/ssl-sample-report//CMatch/osdv_all

Wikipedia: http://en.wikipedia.org/wiki/Usage_share_of_operating_systems#Servers

Können auf Microsoft-Technologien basierende Websites tatsächlich skaliert werden?

www.live.com (5. Alexa), www.msn.com (11. Alexa), www.Microsoft.com (21. Alexa) oder www.bing.com (25. Alexa) Webmaster;)

MySpace basiert auch auf Windows.

19
user2567

Die (Web-) Start-up-Welt ist stark Open-Source-basiert, da hervorragende Tools wie Memcache, noSQL-Datenbanken wie Cassandra, MongoDB usw. und umfangreiche Datenverarbeitungstools wie Hadoop/MapReduce kosten- und verbreitet sind. Bis vor kurzem hatte Microsoft angehenden Start-up-Enthusiasten nicht viel Lippenbekenntnis gegeben und erst kürzlich ihr "Webentwickler" -Programm zur Unterstützung von Start-ups gestartet. Außerdem waren ihre umfangreichen Datenverarbeitungsbemühungen etwas langsam ... Dryad/DryadLINQ, ihre Alternative zu MapReduce, hat nicht den gewünschten Akzeptanzgrad erreicht (der immer noch auf Forschungsschulen außerhalb von Microsoft beschränkt ist), und die Dinge sind plötzlich verschwunden leise auf ihrem (experimentellen) Datenbanksystem Hyder, das angeblich das Skalieren von Datenbanken ohne Partitionierung erlaubt. Während dieser ganzen Zeit hat Google erstklassige Tools wie Dremel, Sawzall usw. übertrieben, um Wettbewerbsvorteile im Web zu erzielen, und Amazon macht seine Webdienste und Cloud-Computing-Dienste für ein durchschnittliches Start-up immer leichter zugänglich.

Dies hängt auch mit einer Frage zusammen, die ich vor einiger Zeit gestellt habe: Abgesehen von Microsoft veröffentlichen alle anderen Web-Unternehmen wie Google, Amazon, Yahoo, Facebook, Ebay usw. Stellenangebote, in denen sie den LAMP-Stack speziell als den für sie erforderlichen Tech-Stack auflisten ihre Software-Ingenieur-Positionen. Offensichtlich haben Leute, die sich mit dem LAMP-Stack auskennen, bei vielen Startups und großen Web-Unternehmen einen Vorteil, während der .NET-Stack hauptsächlich für Unternehmensumgebungen reserviert zu sein scheint.

3
fjxx

Der Kostenfaktor trägt definitiv zur erstmaligen Einführung von Open Source-Technologien bei.

Aber selbst wenn sie wirklich sehr, sehr groß werden, bleiben sie bei Open Source. Wenn Sie auf Facebook oder Google Videos gesehen haben, in denen die Skalierung erklärt wird, investieren sie viel technischen Aufwand in die Verbesserung der von ihnen verwendeten Technologien (unbeladene Schwalbe für Python, HipHop für PHP). Auch wenn sie feststellen, dass etwas völlig Neues oder eine bessere Implementierung erforderlich ist (Sparsamkeit, Protokollpuffer, Cassandra, große Tabelle), erstellen sie es nicht nur, sondern öffnen es auch als Open Source.

Ich denke, der Grund ist die Kontrolle und Minimierung des Risikos, da Sie nicht auf einen Anbieter angewiesen sein müssen, um eine Lösung für Sie bereitzustellen.

2
aufather

Ich interessiere mich besonders für diese Frage und finde die obigen Antworten sehr nachdenklich. Ich habe spezielle Erfahrungen mit der Verwaltung von Windows-Servern.

Ich werde sagen, dass der Kommentar zu Befehlszeilentools ein wenig daneben liegt: Befehlszeilentools sind bei der Verwaltung von Windows-Servern genauso häufig wie bei der Verwaltung von Unix. Die Tools der Wahl wären OpenSSH für Windows, psexec zur Not, WMI-Tools und in jüngerer Zeit Powershell mit Remoting. Windows 2003 Enterprise wurde mit einem SMS-Verwaltungssystem namens ADS geliefert. Eine der Hauptfunktionen von ADS, die es nutzbar machte, war die Befehlszeilenschnittstelle zum Verwalten von Remote-Jobs.

Was die Kontrolle darüber betrifft, was im Betriebssystem läuft: Ja, absolut. Microsoft hat gerade erst den Punkt verstanden, da Windows 2008 Server eine abgespeckte (wie es ist) Variante hat, die viel weniger Dienste/Funktionen bietet. Dies war auch ein Kontinuum - Sie konnten sehen, in welche Richtung MSFT mit dem 2003 Server-Versand ging, wobei viele seiner Dienste standardmäßig deaktiviert waren.

Kosten sind der interessanteste Faktor. Die Lizenzgebühren für Windows Server sind der größte Unterschied zwischen der LAMP-Lösung und einer Windows ASP.NET-Lösung. Die Geburt so vieler Startups aus der Wissenschaft ist ein weiterer wichtiger Grund für den Einsatz von LAMP.

Die Konvertierung großer Websites von LAMP nach Windows ASP.NET ist möglich. Dies erfordert jedoch einen enormen Aufwand. Oft erfolgt die Konvertierung erst dann wirklich, wenn die nächste Hauptversion der Website von Grund auf neu geschrieben wurde. Zu diesem Zeitpunkt wird sie in Windows geschrieben. Das Unternehmen mit der größten Erfahrung bei diesen Konvertierungen ist Microsoft. Hotmail, WebTV und Tellme sind drei Beispiele.

Ich habe diesen Beitrag damit begonnen, dass ich in dieser Frage besonders interessant bin. Der Grund, warum ich mich so für die Verwendung von Windows in Websites interessiere, ist, dass ich ein Microsoft-Mitarbeiter bin, der an einer wichtigen Website arbeitet. Und ich muss sagen, dass ich ein wenig enttäuscht bin, zu erkennen, wie wenig Karrieremöglichkeiten ich in Bezug auf nicht auf Microsoft Windows basierende Websites habe, zu denen ich wechseln könnte.

2
user19465

Ich werde für "Tradition" stimmen. Während des gesamten Dotcom-Vorlaufs "wusste jeder", dass Sie einen großen Sun- oder HP-Server haben müssen, auf dem Apache ausgeführt wird. Das haben die Leute also gekauft. Und als Start-ups versuchten, die erfolgreichen Unternehmen zu emulieren, verwendeten sie das gleiche Material. Und da IIS keine wirklich überzeugenden Funktionen bot (es sei denn, Sie berücksichtigen Erweiterungen der Startseite ...)), gab es für niemanden einen Grund, einen MS-Stack in Betracht zu ziehen. Besonders wenn Sie konnten Führen Sie Apache- und/oder Perl-CGI-Skripte auf einer Sun-Box mit 4 CPUs aus, während Pentium II-Windows-Boxen mit zwei Kernen ziemlich exotisch waren. Jetzt, da die Hardware keine Barriere mehr darstellt, sehen wir mehr große Sites auf dem MS-Stack. aber ich denke, dass es für die meisten immer noch keinen zwingenden Grund gibt, darauf umzusteigen (oder damit zu beginnen).

2
TMN

Sprechen Sie über Microsoft Platform oder IIS Platform?). Viele Webserver von Drittanbietern werden darauf ausgeführt. Wie Apache auch auf Windows-Plattformen. Es gibt viele öffentlich zugängliche Bankenseiten wie citibank.com und usw. unter Verwendung von Java als Plattform. Es gibt einige technologische Einschränkungen. Das Ausführen von Java on IIS ist eine große schwierige Aufgabe, aber =) IIS verbessert sich und ist jetzt für größere Unternehmen skalierbar. PHP on IIS funktioniert jetzt einwandfrei mit Fastcgi-Unterstützung ist schneller. Mit IIS 7/7.5 SEO-freundliche und Open-Source-Software wie PHP ist das Ausführen einer Website möglich.

Wenn Sie überprüfen, ob Microsoft 34% des gesamten Webserver-Betriebssystems dominiert, ist dies im Vergleich zu Unix die Hälfte, aber sie haben sich im Vergleich zu den vergangenen Jahren stark verbessert, und Sie können sehen, dass IIS) sich stark verbessert. Sie können folgende URL überprüfen:

http://w3techs.com/technologies/overview/web_server/all

Kosten?

Ja, Microsoft-Lizenzen sind im Vergleich zur NIX-Umgebung teuer, aber wenn Sie vergleichen, sind die Gesamtbetriebskosten unter Linux höher. Normaler Systemadministrator unter Liux kostet im Vergleich zu Windows-Systemadministrator viel mehr.

Technologieeinschränkungen?

Bis jetzt hat MS technologische Einschränkungen für große Unternehmen. Java funktioniert sehr gut auf Websites von Unternehmen und Finanzsektoren, aber nach IIS 7/IIS 7.5-Szenario ändert sich) Mit einer Webentwicklungsumgebung wie .Net Framework und einem Portal wie Share Point Portal verbessert sich Microsoft erheblich.

Bietet Microsoft mehr für Unternehmens-/Intranetumgebungen als für öffentliche Websites ?

Ja, mit einer neueren Version von Windows und IIS Microsoft bietet öffentliche Websites an, und diese werden sicherlich in Zukunft gut abschneiden.

Gaurav Maniar MCP | MCSE | MCST | MCITP | ITILv3-zertifiziert

1
maniargaurav