Ma première approche a été de créer un TRIGGER sur les INSERT qui appelle une procédure stockée contenant la logique de nettoyage.
Cependant MySQL renvoie :
ERROR 1442 (HY000): Can't update table 'test_table' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Du coup il faut gérer ca par une tâche cron, ou alors le gérer directement au niveau applicatif.
Je n'ai aucun problème de performance avec MySQL.
Les configs InnoDB et MyISAM sont tunées à mort, et effectivement quand j'ai vraiment un souci particulier sur une requête, le EXPLAIN est très utile pour repérer les index manquants.
En fait mon problème avec MySQL est qu'il manque de fonctionnalités, par exemple, j'aimerais bien ajouter des contraintes CHECK pour m'assurer que tous les enregistrements d'une table ont une date de début supérieure à la date de fin. Ou alors une contrainte CHECK pour vérifier que ((champ1 IS NULL AND champ2 IS NULL) OR (champ1 IS NOT NULL AND champ2 IS NOT NULL))
Le support des procédures stockées n'est pas encore très mature, par exemple tu ne peux pas appeler de procédures à l'intérieur d'un curseur défini dans une première procédure,
Les index fulltext ne sont pas supportés par InnoDB (du coup pas de transactions, row level locking etc) pour les tables qui comportent ces index
Mais clairement, d'un point de vue performances je n'ai absolument rien à redire.
Ce qu'il me faudrait idéalement c'est les perf de MySQL et les fonctionnalités de pgSQL avec un support Linux pour un prix raisonnable
Le but de ma question est de pouvoir assurer au client qu'il aura les sources du produit dans l'éventualité ou le fournisseur (donc moi) ferait défaut.
Ce serait un simple argument commercial.
[troll]
Libérer les sources serait certes dans l'intérêt du client, cela dit ce n'est pas l'intérêt de mon client que je défends mais le mien.
[/troll]
Ce serait pour du SaaS (logiciel en tant que service), donc on ne communique les sources a aucun moment, le client est abonné et a accès au service que nous hébergeons.
Donc si je comprends bien la seule solution serait de libérer la source avant dissolution de la société ?
Ca pourrait être condamnable non ? Surtout s'il est prouvé que ca a été fait avec la connaissance ou du moins la forte présomption d'une liquidation prochaine ?
Les binaires ne sont pas eux mêmes chrootés, dans le tuto que j'ai suivi tu lui passes juste une option au moment de son démarrage pour lui dire de se chrooter lui même en user bind/named.
Et après il faut juste lui créer deux trois répertoires dont il a besoin, déplacer les fichiers de config (en faisant un lien symbolique du répertoire des confs vers /etc/bind) et puis après ca roule.
Avec cette méthode, dans quelle mesure ca pourrait poser un problème lors de l'upgrade du paquet si presqu'aucun fichier ne bouge ?
Je ne connais pas vraiment Python, donc je ne pourrai pas vraiment t'éclairer sur ce point, d'après ce que j'en entends on tombe facilement amoureux des deux.
Maintenant du point de vue des frameworks (Ruby on Rails et Django) ils semblent plutôt similaires. La seule différence que je verrais étant que :
- Il semble généralement admis que Django est meilleur en performance pure que RoR.
- Ruby on Rails utilise les conventions plutôt que la configuration (c'est l'inverse chez Django), du coup, tu te retrouves avec moins de code et plus de rapidité à développer.
... mais Ruby on Rails mériterait de faire partie de la liste, il te permet de développer super rapidement comporte énormément de plugins qui te permettent de ne pas réinventer la roue.
Avec Rails tu codes en Ruby, si tu connais déjà Python ou que tu souhaites vraiment l'utiliser pour ton projet le framework Django offre sensiblement les mêmes services (persistance et mapping ORM, modèle MVC et composants réutilisables)
La communauté t'aidera sans problème pour tous les soucis et questions que tu pourrais avoir concernant ton système.
L'important à savoir est que quand tu poses une question, il est de bon ton de montrer que soit :
1. tu ne vois pas du tout comment faire ce que tu veux, auquel cas c'est une piste de recherche que tu souhaites
2. tu sais à peu près comment répondre à ton besoin et tu as déjà fait la démarche de chercher sur google et/ou lire les documentations pertinentes =)
tu peux aussi te trouver un gourou linux dans ton entourage qui t'aidera a faire les premiers pas !
Au plaisir !
Il faut dire à apache (car j'imagine que c'est apache que tu utilises) qu'il est nécessaire de traiter les fichiers *.php3 comme les fichiers *.php, en les pré-processant et cela se règle dans les fichiers de config dont l'emplacement dépend de ta distribution.
Ca me semble être le cas, les labels ont l'air d'être filtrés au niveau du code d'AS, oui j'ai directement mis du HTML dans la sortie de ma méthode, saymal certes =)
Je surcharge la méthode pour qu'elle soit utilisée par ActiveScaffold, c'est peut-être dans le code d'ActiveScaffold que se fait le filtrage par h()
Mais donc à priori, Rails lui-même n'y touche pas ?
Bon ben j'imagine qu'il ne me reste plus qu'à aller poser la question sur les forums d'AS si mes recherches dans son code source ne donnent rien...
[^] # Re: ssl apache
Posté par David FRANCOIS (site web personnel) . En réponse au message Achat d'un certificat SSL et hébergement. Évalué à 0.
# Le cron semble la seule solution à peu près propre
Posté par David FRANCOIS (site web personnel) . En réponse au message mysql - vidage de table après un certain temps. Évalué à 1.
Cependant MySQL renvoie :
ERROR 1442 (HY000): Can't update table 'test_table' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Du coup il faut gérer ca par une tâche cron, ou alors le gérer directement au niveau applicatif.
[^] # Re: sans être un expert en SCM
Posté par David FRANCOIS (site web personnel) . En réponse au message Quel SCM ?. Évalué à 0.
[^] # Re: quelle version ?
Posté par David FRANCOIS (site web personnel) . En réponse au message Comparaison SGBDR. Évalué à 1.
Les configs InnoDB et MyISAM sont tunées à mort, et effectivement quand j'ai vraiment un souci particulier sur une requête, le EXPLAIN est très utile pour repérer les index manquants.
En fait mon problème avec MySQL est qu'il manque de fonctionnalités, par exemple, j'aimerais bien ajouter des contraintes CHECK pour m'assurer que tous les enregistrements d'une table ont une date de début supérieure à la date de fin. Ou alors une contrainte CHECK pour vérifier que ((champ1 IS NULL AND champ2 IS NULL) OR (champ1 IS NOT NULL AND champ2 IS NOT NULL))
Le support des procédures stockées n'est pas encore très mature, par exemple tu ne peux pas appeler de procédures à l'intérieur d'un curseur défini dans une première procédure,
Les index fulltext ne sont pas supportés par InnoDB (du coup pas de transactions, row level locking etc) pour les tables qui comportent ces index
Mais clairement, d'un point de vue performances je n'ai absolument rien à redire.
Ce qu'il me faudrait idéalement c'est les perf de MySQL et les fonctionnalités de pgSQL avec un support Linux pour un prix raisonnable
# Merci
Posté par David FRANCOIS (site web personnel) . En réponse au message Comparaison SGBDR. Évalué à 1.
Est-ce que pgSQL gère les index fulltext comme mysql le fait avec le moteur MyISAM ?
[^] # Re: Jointure externe
Posté par David FRANCOIS (site web personnel) . En réponse au message Implémentation d'une agrégation 0...1 et comptage des éléments agrégés. Évalué à 1.
# cd
Posté par David FRANCOIS (site web personnel) . En réponse au message Empecher le checkout automatique des tags en svn. Évalué à 2.
[^] # Re: lvs/rsync/script/...
Posté par David FRANCOIS (site web personnel) . En réponse au message Architecture web. Évalué à 1.
Ou alors j'ai l'option de prier pour que le datacenter ne parte jamais en flammes ce qui peut être acceptable
[^] # Re: *PUB*
Posté par David FRANCOIS (site web personnel) . En réponse au message Questions signatures électroniques et certificats. Évalué à 1.
[^] # Re: https, certificats...
Posté par David FRANCOIS (site web personnel) . En réponse au message Questions signatures électroniques et certificats. Évalué à 2.
C'est pour sécuriser un back office sur lequel j'impose un navigateur à mon client, donc de ce côté la pas de problème =)
Merci beaucoup pour toutes les réponses !!
[^] # Re: Reverse SSh
Posté par David FRANCOIS (site web personnel) . En réponse au message Acces à distance SSH. Évalué à 1.
[^] # Re: Double licence
Posté par David FRANCOIS (site web personnel) . En réponse au message Passage de code sous licence GPL. Évalué à 1.
Ce serait un simple argument commercial.
[troll]
Libérer les sources serait certes dans l'intérêt du client, cela dit ce n'est pas l'intérêt de mon client que je défends mais le mien.
[/troll]
[^] # Re: Double licence
Posté par David FRANCOIS (site web personnel) . En réponse au message Passage de code sous licence GPL. Évalué à 0.
[^] # Re: seule solution ?
Posté par David FRANCOIS (site web personnel) . En réponse au message Passage de code sous licence GPL. Évalué à 1.
# seule solution ?
Posté par David FRANCOIS (site web personnel) . En réponse au message Passage de code sous licence GPL. Évalué à 1.
Ca pourrait être condamnable non ? Surtout s'il est prouvé que ca a été fait avec la connaissance ou du moins la forte présomption d'une liquidation prochaine ?
[^] # Re: ulimit
Posté par David FRANCOIS (site web personnel) . En réponse au message Monitoring de process. Évalué à 1.
[^] # Re: Parce que
Posté par David FRANCOIS (site web personnel) . En réponse au message Pourquoi chrooter bind ?. Évalué à 1.
Et après il faut juste lui créer deux trois répertoires dont il a besoin, déplacer les fichiers de config (en faisant un lien symbolique du répertoire des confs vers /etc/bind) et puis après ca roule.
Avec cette méthode, dans quelle mesure ca pourrait poser un problème lors de l'upgrade du paquet si presqu'aucun fichier ne bouge ?
[^] # Re: Loin de moi l'idée de troller ...
Posté par David FRANCOIS (site web personnel) . En réponse au message Langage de programmation pour un stage ... PHP vs Python. Évalué à 2.
Maintenant du point de vue des frameworks (Ruby on Rails et Django) ils semblent plutôt similaires. La seule différence que je verrais étant que :
- Il semble généralement admis que Django est meilleur en performance pure que RoR.
- Ruby on Rails utilise les conventions plutôt que la configuration (c'est l'inverse chez Django), du coup, tu te retrouves avec moins de code et plus de rapidité à développer.
# Loin de moi l'idée de troller ...
Posté par David FRANCOIS (site web personnel) . En réponse au message Langage de programmation pour un stage ... PHP vs Python. Évalué à 2.
Avec Rails tu codes en Ruby, si tu connais déjà Python ou que tu souhaites vraiment l'utiliser pour ton projet le framework Django offre sensiblement les mêmes services (persistance et mapping ORM, modèle MVC et composants réutilisables)
Bien à toi et bonne chance !
# ...
Posté par David FRANCOIS (site web personnel) . En réponse au message parser un fichier texte. Évalué à 2.
# fatigue...
Posté par David FRANCOIS (site web personnel) . En réponse au message merci. Évalué à 3.
# Communauté
Posté par David FRANCOIS (site web personnel) . En réponse au message Initiation, formation pour débutant. Évalué à 2.
L'important à savoir est que quand tu poses une question, il est de bon ton de montrer que soit :
1. tu ne vois pas du tout comment faire ce que tu veux, auquel cas c'est une piste de recherche que tu souhaites
2. tu sais à peu près comment répondre à ton besoin et tu as déjà fait la démarche de chercher sur google et/ou lire les documentations pertinentes =)
tu peux aussi te trouver un gourou linux dans ton entourage qui t'aidera a faire les premiers pas !
Au plaisir !
# Serveur web
Posté par David FRANCOIS (site web personnel) . En réponse au message php 3 et php 4. Évalué à 3.
[^] # Re: Panne
Posté par David FRANCOIS (site web personnel) . En réponse au message Ruby on Rails, désactiver l'échappement des caractères HTML. Évalué à 1.
[^] # Re: Panne
Posté par David FRANCOIS (site web personnel) . En réponse au message Ruby on Rails, désactiver l'échappement des caractères HTML. Évalué à 1.
Mais donc à priori, Rails lui-même n'y touche pas ?
Bon ben j'imagine qu'il ne me reste plus qu'à aller poser la question sur les forums d'AS si mes recherches dans son code source ne donnent rien...