2010-11-19 4 views
0

J'ai vu cette comparaison: http://www.microsoft.com/sqlserver/2008/en/us/editions-compare.aspxQuelle est la taille maximale d'un site Web pouvant s'exécuter correctement sur MS SQL Server Express?

Et je voudrais savoir la taille d'un site Web est qui peut fonctionner sur SQL Server Express prenant en acount qu'il permet seulement 1 CPU et son utilisation de la mémoire est de 1 Go?

+2

Cela va dépendre entièrement de ce que fait le site web et comment il utilise SQL, n'est-ce pas? – JNK

+1

Définir "grand". Nombre de pages? Quantité de données? Nombre d'utilisateurs? Taille physique du serveur web? – Donnie

+0

Nombre d'utilisateurs et de pages. Imaginez que c'est un forum, combien de messages peuvent-ils gérer et les utilisateurs? – Goma

Répondre

1

Cela dépend. La seule réponse qui peut vraiment être donnée est "aussi grande que peut être supportée par 1 processeur, 1 Go de RAM et 10 Go de taille maximale de la base de données", et cela dépend vraiment de ce que vous faites.

Les show-stoppers immédiats incluraient si vous savez que votre taille de DB dépassera 10GB. Si la performance est cruciale, et que vous savez que vous avez 2 Go de données/index "de travail" (c.-à-d. Commun/fréquemment accédé/requis), cela ne correspondra pas à la restriction de mémoire de 1 Go. augmentation des entrées/sorties, ce qui est coûteux et affectera les performances). Reportez-vous à cette référence MSDN sur estimating database size - lisez-le et vous pouvez estimer la taille de votre base de données. Mais ce n'est qu'un aspect - il n'y a pas de "vous pourriez supporter 1000 utilisateurs et 1000000 messages", je crains, car cela dépend complètement de la façon dont le forum est consulté, les charges de pointe, quelles données seront stockées, il ... etc etc

+0

En plus, à quelle fréquence devez-vous frapper la base de données? CMS ... peut vous faire mal pendant 60 secondes (comme la plupart des newsppaers le peuvent) ... vous n'utilisez pas vraiment le db BEAUCOUP, même pour un grand site. Trading en temps réel? jeu différent. Je connais un système qui POUVAIT fonctionner sur Express (db, ram) mais utilise 8 processeurs (tous les cœurs) pour gérer la charge. D'autres sont limités par la RAM. TOTALEMENT dépend. – TomTom

1

SQL Server 2008 express peut prendre en charge un forum de cette taille:

  • 250m Nombre total d'utilisateurs
  • 100 connectés simultanément, les utilisateurs actifs
  • clic/taux post moyen de 1 à 2 par seconde par utilisateur actif
  • Taille maximale du message de 6 Ko à 8 Ko, langue anglaise seulement
  • Max 800K au total Messages désarchivés

Cette W.A.G. complète et totale est basé sur ces chiffres approximatifs:

  • Diverses références Web citant SQL Server Express frapper au moins 400 transactions/seconde
  • ~ 3-4 DB appelle par requête utilisateur
  • ~ 80% du stockage du DB passe à des postes
  • tenir à ye Olde VARCHAR à travers le fil
  • messages max = ~ (80% de 10 Go)/(taille de post 8.5kB + poste de tête (y compris les filets))

Et ces hypothèses:

  • Votre forum n'a pas de beaucoup de « calculer lourd » caractéristiques
  • Vous disposez d'un matériel décent (à savoir, Pas le P4 indésirable w/512MB pourrir dans le placard)
  • Le serveur DB est distinct du serveur Web
  • Vous avez au moins la mise en cache semi-efficace
  • Vous servir du contenu statique hors serveur web, pas de DB
  • que vous utilisez (et à s'accrocher) a préparé des déclarations
  • Vous utilisez des paramètres sql au lieu de concaténer dans vos arguments de requête
  • Vous éviter de faire plusieurs appels micro DB par requête de l'utilisateur
  • Vous avez l'indexation et statis approprié tics
  • Vous avez une conception de DB simple, OLTP convivial
  • Vous êtes conscient de l'endroit où est le bon endroit pour effectuer des calculs sur les ensembles de données

BTW, juste parce que je faire ont un " vous pourriez supporter 1000 utilisateurs et 1000000 messages "réponse ne signifie pas que AdaTheDev est faux. Il a raison, comme tout le monde qui dit que vous ne pouvez pas être précis du tout. Il y a beaucoup, beaucoup de facteurs impliqués dans ceci. En fait, la plupart des développeurs ne seront probablement pas en mesure de tirer le meilleur parti de la base de données car ils feront pire que ce qui est conseillé dans les hypothèses ci-dessus. (Alors que d'autres devs seront en mesure de faire un peu mieux que je l'ai dit.)

Je pense qu'il est sage de ne pas dépend sur un gustimate comme celui-ci. Je veux dire, c'est pratiquement une opinion et ne peut certainement pas être prouvée avant de l'essayer. Il y a trop de variables, trop de scénarios, YMMV, etc. Vous devriez avoir un plan pour gérer la croissance de toute façon, comme au bon moment pour passer à SQL Server Standard, ou quand/comment introduire des instances Express supplémentaires.

Cependant, les chiffres vous aident à obtenir une idée de parc à billes. Si pressé, je me sentirais bien en disant Express pourrait probablement gérer, disons, le forum de TechReport.com (avec l'archivage) mais probablement pas Anandtech.com.

Questions connexes