WordPress en tant qu’application Web gourmande en données
J’aimerais avoir une opinion sur l’utilisation de WordPress en tant qu’application Web intense en données, disons comme Rememberthemilk où un utilisateur peut avoir plusieurs publications (tâches) en une seule journée. Ou peut-être comme Twitter où l’on peut même avoir plusieurs messages (twitter) en une heure. Un autre point est que ces applications Web sont ouvertes au public, et non à un groupe limité d’utilisateurs.
S’il est téléchargé et essayé, le thème P2 est la référence la plus proche, mais je ne sais pas comment il fonctionne avec un grand nombre d’utilisateurs.
Et la question est;
- est-il conseillé de créer ce type d’application dans WordPress ?
- Quels sont les inconvénients s’il est construit avec WordPress ?
Mise à jour :
Actuellement, j’expérimente un thème WordPress personnalisé qui peut être utilisé comme journal de finances personnelles. Cela a été lancé uniquement en tant qu’expérience wp-ajax.
Le thème a un formulaire de téléchargement frontal, pour enregistrer chaque transaction et les placer dans la taxonomie « budget » (catégorie de transaction) et « compte » à interroger. Chaque utilisateur a son propre budget principal et son propre type de publication personnalisé avec des budgets et des comptes enfants.
Mais au cours de cette expérience, j’ai commencé à me demander si une seule installation de WordPress convenait en tant que blog privé auquel n’importe qui pouvait s’inscrire comme celui-ci. Est-il possible de gérer un grand nombre d’utilisateurs ? Et jusqu’où puis-je pousser un WordPress en tant que framework d’application ?
Solution n°1 trouvée
Ce n’est pas vraiment une question de performances, c’est une question de performances fonctionnelles. Vous devez mieux définir vos besoins exacts. Twitter ne prend pas plusieurs messages par heure, il gère plus de 3 000 tweets par seconde en moyenne avec des pics allant jusqu’à 30 000 par seconde, un WordPress par défaut ne le fera pas.
En fin de compte, si vous finissez par devoir étendre votre code loin de WordPress, comme le suggère userabuser, vous devez vous demander pourquoi utiliser WordPress en premier lieu, il existe de nombreux frameworks qui ont des abstractions de base de données, des API http, du routage, etc. .
Après votre modification
Étant donné que vous semblez utiliser la fonctionnalité intégrée de WordPress, je ne vois aucun problème particulier. Cela étant dit, une fois que vous commencez à évoluer dans les dizaines de milliers de catégories et de taxonomies de CPT, vous pourriez commencer à voir apparaître des zones lentes qui doivent être optimisées, mais cela dépend de votre requête et de ce qu’elle fait.
Dans votre cas, il serait vraiment avantageux de créer un script de serveur de développement qui imite l’utilisation réelle, crée 10k+ CPT/ avec des données et la taxe/cat appropriée. Lancez ensuite des tests via curl ou des outils de référence et voyez ce qui se passe avec différentes quantités de paramètres de RAM et de cache. À moins que vous ne fassiez quelque chose de bizarre/unique, je ne vois aucun problème, surtout si vous êtes sur un serveur/cluster solide.
Solution n°2 trouvée
Il est plus que possible de créer une application Web gourmande en données, même en temps réel, en utilisant la plate-forme WordPress comme cadre de base.
L’architecture de la base de données WordPress est telle qu’elle convient aux sites Web qui sont soit des blogs, soit des systèmes de gestion de contenu quelconques.
Ce qui est défini comme étant un site de type CMS peut être large et varié, mais aucun des éléments susmentionnés n’est vraiment lié à des applications Web gourmandes en données telles que vous le mentionnez, Remember The Milk ou Twiiter .
Pour cette raison, cela ne va pas être sans beaucoup d’efforts de votre part pour comprendre vos options et également savoir comment les exécuter sous la forme d’une stratégie qui complète votre application maintenant et à l’avenir en étant capable d’évoluer vers le haut avec toute croissance que vous rencontrez.
Dans cet esprit, la structure de table de base de données existante peut ne pas convenir à ce que vous voulez réaliser, mais l’une des grandes capacités que nous avons lorsque nous travaillons avec PHP et dans ce cas WordPress, est que nous pouvons définir des tables de base de données qui ont une structure/schéma alternatif qui correspond mieux à nos besoins.
En fait, non seulement vous pouvez définir vos propres tables dans la base de données WordPress par défaut de votre installation, mais vous pouvez également aller bien au-delà et…
- accéder à des bases de données externes, secondaires, troisième ou quatrième
- accéder à des alternatives NoSQL telles que MongoDB, CouchDB ou des magasins de clés/valeurs comme Redis
Je dois cependant mentionner que toutes les données contenues dans des bases de données externes, en particulier de différentes variétés (NoSQL, Key/Val) ne seront pas accessibles directement via vos fonctions API WordPress habituelles, mais je suppose que si vous allez trop loin, vous savoir comment interroger vos ensembles de données en conjonction avec l’utilisation de fonctions de modèle/thème pour la présentation.
Un autre aspect important à considérer est,
- hébergement web (Cloud ? Dédié ? PaaS ?)
Votre plateforme d’hébergement jouera un rôle tout aussi important dans la performance, il est donc essentiel de faire le bon investissement pour soutenir votre projet.
Le plus grand inconvénient de tout cela est plutôt simple et si l’un des éléments ci-dessus semble déroutant et / ou complexe, la création d’une application Web de haute qualité n’est peut-être pas le meilleur choix avec WordPress.
Au lieu de cela, vous feriez peut-être mieux d’utiliser un framework PHP et de créer votre application à partir de zéro, où vous pourrez avoir un contrôle précis sur les subtilités de chaque couche et composant. Vous serez confronté à des défis similaires, cependant, dans ce choix de base de données, l’architecture/structure, etc. jouera un rôle important dans les performances de votre application.
Solution n°3 trouvée
@ifdion, Matt a annoncé que WordPress offrirait bientôt des fonctionnalités/fonctions qui le qualifieraient de moteur d’application. Je pense que c’est évolutif avec le bon fournisseur d’hébergement ; Vous pouvez consulter wpengine, page.ly ou zippykid (tous les hôtes spécifiques à wordpress)
Quoi qu’il en soit, je construis quelque chose de similaire sur WordPress. Le seul problème est que je suis plus un concepteur qu’un développeur de bout en bout. Pouvez-vous expliquer comment vous avez réussi à créer la page du gestionnaire de budget et à l’enregistrer pour chaque utilisateur ?
Je serais heureux si vous pouviez m’apprendre à implémenter quelque chose de similaire sur WordPress. Je veux une fonctionnalité où les gens peuvent enregistrer et suivre leurs dépenses avec leurs budgets.
0 commentaire