L'auteur a utilisé la base de données Access pour créer un site Web, mais a découvert plus tard que la quantité de données augmentait et que la vitesse était lente, de sorte que tout le monde doit faire des plans à long terme avant de créer un site Web.
Combien d’enregistrements une base de données Access peut-elle contenir ? , quelle est la taille maximale du fichier Accsee ?
Théoriquement, il n’y a pas de limite, mais elle n’est généralement pas utile si elle dépasse 100 000.
Access ne prend pas très bien en charge de grandes quantités de données. Le plus gros fichier mdb est 1G. Cela ne fonctionnera pas, quelle que soit la manière dont vous ajoutez des enregistrements, il n'y aura aucune erreur ni aucune invite, mais les données ne pourront pas être ajoutées. Le nombre spécifique d'enregistrements dépend de la taille de l'enregistrement. J'ai des enregistrements contenant plus d'une douzaine de champs, et il existe environ 500 000 enregistrements comme celui-ci.
Je n'ai pas beaucoup réfléchi à ce problème avant de commencer à créer un site Web, car le site Web d'une entreprise moyenne ne contient pas beaucoup de données et le fichier mdb ne dépasse généralement pas 100 Mo, mais récemment, j'ai été troublé par ce problème.
Le site Web d'un client contient plus de 3 W d'enregistrements et une taille d'environ 300 M. Après plusieurs compressions, il fait toujours plus de 280 M. La vitesse est maintenant très lente.
Recherchez les raisons, analysez les deux points suivants :
1. Access ne prend pas très bien en charge de grandes quantités de données et n’a pas été pleinement pris en compte avant de créer le site Web. Ne pas bien comprendre les besoins des clients. Pour les besoins de gros volumes de données, une base de données SQL ou MYSQL doit être envisagée. Autrement dit, la version ASP+ACCSEE ne peut pas être utilisée.
2. Il y a eu des problèmes avec les modules de conception et la classification d'origine. L'ensemble du site n'a qu'un seul module article, et tout le reste est classé sous ce module, ce qui conduit directement à une quantité excessive de données dans la table jtbc_article. Fondamentalement, plus de 30 000 enregistrements sont tous dans cette table. Provoque un ralentissement de la vitesse des requêtes.
Par conséquent, lors de la création d'un site Web, des articles de même nature mais de catégories différentes doivent être construits dans différents modules, c'est-à-dire cloner plusieurs modules d'articles, ce qui peut non seulement résoudre efficacement les problèmes ci-dessus, mais aussi mieux transmettre l'index des nœuds du modèle de page d'accueil du module. pour personnaliser des pages d'accueil personnalisées pour différentes catégories.
Mais maintenant, je suis toujours aux prises avec ce problème, car il est très gênant de séparer à nouveau les modules avec autant de données, et ce n'est pas la solution la plus efficace en fin de compte, car les données continuent de croître chaque jour, et il y aura au moins 100 000 données. La base de données ACCESS devrait donc être abandonnée.
Plus important encore, je souhaite abandonner IIS et le remplacer directement par PHP+MYSQL. De cette façon, lors du déploiement du serveur, je n'ai pas besoin d'installer l'ennuyeux IIS, je peux simplement utiliser Apache ou Nginx, qui est plusieurs fois plus efficace. que IIS. Mais le problème maintenant est que les fonctions de la version PHP ne sont pas aussi puissantes que celles de l'ASP. Ce n'est pas un problème, car ce site n'a pas besoin de fonctions puissantes. L'essentiel est que la génération HTML peut être utilisée, mais la version PHP I. testé n'a pas pu générer de statique. C'est ce qui me dérange vraiment.