• [^] # Re: Bonne idee mais...

    Posté par . En réponse à la dépêche B2i. Évalué à 10.

    Abstraction DB: ça me fait rire.

    J'ai fait un gros site en PHP et je me suis dit, je vais en profiter pour mettre une surcouche abstraction DB (j'ai utilisé ADODB). Le temps de passage de mon site entre MySQL et ADODB prend 5 minutes (essentiellement 2 rechercher-remplacer dans de multiples fichiers). Après j'ai fait des analyses de vitesse et j'ai pu remarquer qu'en gros l'ajout d'ADODB ralentissait d'environ 25% la création des pages PHP et les requêtes SQL 5% plus lente. Le ralentissement des pages est du à une seule chose: les libs ADODB sont des fichiers passablement gros et l'interprêteur PHP perd du temps à les charger.

    En conclusion, pourquoi mettre ADODB alors que je peux garder des performances optimales comme je suis actuellement, et en cas de besoin, en très peu de temps (5 minutes tjs) je pourrai passer à ADODB pour utiliser une autre DB, ou faire du rechercher-remplacer pour passer de MySQL à la DB X très rapidement également.

    Le problème de compatibilité entre les DB, est une problème minimum au niveau des appels de fonctions PHP, le vrai problème c'est l'incompatibilié de _MEMES_ requêtes SQL. Je ne connais pas de couche d'absraction pour PHP qui permette de voir qu'une requête pour la DB X pourrait être incompatible avec la DB Y et être capable de la transformer directement.