PostgreSQL & Rails

Posted by Fabien Jakimowicz Sat, 10 May 2008 10:13:00 GMT

Après migration sur PostgreSQL et discussions avec koollman connaissant bien cette base de données, j’ai pu faire quelques optimisations. L’authentification installée par défaut avec macports se fait par la méthode ‘trust’, ce qui permet à tous les utilisateurs locaux passant par une socket de se faire passer pour un autre utilisateur.

En passant sur une authentification ‘ident sameuser’, on se protège donc de cette faille et cela permet toujours d’accéder à la base de données sans mot de passe. Modifiez ceci dans le fichier pg_hba.conf dont le path est /opt/local/var/db/postgresql83/defaultdb/pg_hba.conf :

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
local   all         all                               ident sameuser

 

On précise au serveur qu’il faut reload le fichier :

$> sudo su postgres
$> pg_ctl reload -D /opt/local/var/db/postgresql83/defaultdb

 

La création de l’utilisateur en super-utilisateur peut se faire en utilisateur normal ayant le droit de créer des base de données. Le script createuser posera les questions sans que vous ayez à spécifier de flag avec la commande.

Enfin, une entrée database.yml peut maintenant être simplifiée : l’utilisateur / mot de passe ainsi que l’hostname ne sont plus nécessaire.

development:
  adapter: postgresql
  encoding: utf8
  database: my_great_project_development

Posted in | no comments |

RAILS sur PostgreSQL pour léopard

Posted by Fabien Jakimowicz Fri, 09 May 2008 11:57:00 GMT

 Vous avez déjà franchi le pas du système d’exploitation en passant sur un vrai système pleinement utilisable en tant que développeur mais aussi utilisateur final voulant du fonctionnel sans taper 15k commandes, c’est bien.

Vous avez aussi fait l’étape d’arrêter d’essayer de refaire le monde avec votre framework web et utilisez un vrai framework objet comme il se doit, c’est bien.

Il ne reste plus qu’à faire de même avec votre base de données. Seul soucis, mysql (voir sqlite) est agréable par sa simplicité et son zeroconf ou presque. Mais installer postgreSQL n’est pas si difficile que cela … en quelques étapes. De plus, RoR offrant maintenant des rake tasks pour créer et supprimer les base de données, vous n’aurez pas ou presque pas de commande spécifique à mémoriser.

Posted in | no comments |

dynamisme du langage et patch

Posted by Fabien Jakimowicz Thu, 17 Apr 2008 22:32:00 GMT

 Développant un projet faisant un appel à un webservice pour un client, je dois passer des Arrays tel un formulaire html classique. J’ai donc naturellement utilisé les fonction réseau du langage Ruby, vu que le framework que j’utilise pour ce projet n’est autre que le Ruby on Rails. Je me retrouve donc avec une librairie maison pour gérer mes appels vers ce webservice, mais petite surprise dans l’encodage des fameux Arrays : les entrées du tableaux sont simplement concaténées les unes aux autres.

On est loin de ce que devrait faire un Array dans ce cas précis !

Posted in | 2 comments |

Paris, 7 avril 2008

Posted by Fabien Jakimowicz Mon, 07 Apr 2008 00:15:00 GMT

 il neige !

Posted in | no comments |

timemachine & samba sous linux

Posted by Fabien Jakimowicz Fri, 28 Mar 2008 17:00:00 GMT

Timemachine est un outil très pratique mais un peu contraignant : il faut brancher son disque externe pour profiter des sauvegardes. Ce qui amène le risque d’oublier de le brancher surtout sur un ordinateur portable. Cependant, la beta de léopard avait offert la possibilité de sauvegarder sur un serveur de fichiers type samba, mais cette fonctionnalité fut rapidement bloquée lors du lancement officiel pour des raisons de soit disante sécurité (les sauvegardes seraient non fiables).

Posted in | no comments |

afficher ses filers dans le finder

Posted by Fabien Jakimowicz Sun, 16 Mar 2008 23:33:00 GMT

Je possède quelques serveurs de fichiers sous linux diffusant en samba et nfs. J’ai recemment découvert que sous léopard la vitesse était x10 en utilisant nfs plutôt que samba.

Afin d’obtenir un montage systématique de mes serveurs sur mes workstations léopard, j’ai fouillé un peu sur le google pour trouver qu’il existait un service d’annonce de service sous linux que léopard peut comprendre : avahi.

Posted in | no comments |

joyeux anniversaire !

Posted by Fabien Jakimowicz Sun, 16 Mar 2008 19:52:00 GMT

Un tout petit billet pour souhaiter un joyeux anniversaire à ma compagne naïma qui fête son premier quart de siècle.

Posted in | 1 comment |

Installation de léopard sur pc x86, 2e round

Posted by Fabien Jakimowicz Fri, 14 Mar 2008 11:55:00 GMT

Après avoir testé avec succès l’installation de la version iATKOS sur ma configuration :

  • Asus P5B Deluxe
  • Intel Core 2 Duo 6300
  • 4Go 800Mhz
  • GeForce 7600GT
  • 300Go sata

J’ai décidé de tenter une autre version de l’installer et ce pour plusieurs raisons. La première est un problème qui devient gênant dès lors qu’on possède plus d’une machine à démarrer : il faut démarrer à l’aide du CD. Certes, des méthodes permettant de s’affranchir de cette méthode existe, mais pourquoi ne pas les avoir incluses au DVD d’installation ? Mes autres problèmes sont plus d’ordre de performance :  je sens qu’il doit traîner encore quelques phases d’émulation dans la machine, ce qui serait normal vu que je n’ai pu choisir le kernel vanilla. Enfin, après quelques tests et prises de renseignements sur divers forums, les drivers du dvd kalyway sont plus récents que ceux fournis sur l’iATKOS. J’ai pu constater que le driver vidéo détecte la bonne quantité de mémoire vidéo sur le système kalyway, alors que du coté iATKOS cela n’était pas le cas. Bien sur, cela est uniquement dû au driver et non à la méthode d’installation (NVInject dans les 2 cas, version 0.1.3 contre 0.1.5). Pour en finir, j’ai aussi testé le multi carte graphiques sans succès avec l’iATKOS et j’aimerai bien savoir si il est possible de faire fonctionner plusieurs cartes pour un même système, je pense que cela pourrait intéresser certaines personnes qui me lise ici.

Posted in | no comments |

image science vs image magick

Posted by Fabien Jakimowicz Mon, 10 Mar 2008 02:54:00 GMT

Si vous avez du resizer des images sous rails, vous avez probablement touché à ce merveilleux gouffre de consommation mémoire qu’est Rmagick, binding ruby de la librarie image imagick. J’ai même entendu dire que certaines personnes tourneraient encore avec du fastcgi ce qui les écarte de ce problème, pas comme ceux qui doivent relancer leurs serveurs mongrel dans un cron (toute ressemblance avec des personnes réelles n’est que fortuite).

Il existe pourtant des alternatives … 2 dont une utilisant … image magick en ligne de commande. Ce qui en laisse une dernière : image science. La page du projet résume bien les choses :

Hate RMagic? Get Science! ImageScience!

ImageScience is a clean and happy Ruby library that generates thumbnails – and kicks the living crap out of RMagick. Oh, and it doesn’t leak memory like a sieve. :)

Posted in | 3 comments |

monitoring externe

Posted by Fabien Jakimowicz Sun, 09 Mar 2008 18:59:00 GMT

Toutes les entreprises proposant un service ou plus directement leur site internet corporate veulent avoir comme garantie un service continu sans aucune coupure. Cela implique dans la majorité des cas, que l’entreprise gère elle même son matériel ou qu’elle loue une prestation, la mise en place de service de monitoring complexe, difficile à maintenir et mettre en place pour s’adapter parfaitement aux différentes spécificité des produits vendus.

Dans la plupart des cas, on se retrouve avec une machine trop très proche du réseau de l’entreprise pour effectuer la surveillance et avec de la chance, on a quelques alertes SMS pour réveiller les admin-{sys,net}. Mais rien ne garantie que l’on reste accessible d’un point de vue totalement extérieur, à l’autre bout du monde avec un fai et donc tout ce qui en découle (dns, réseau, …) totalement différent. De plus, la spécificité des tests mis en place rends souvent caduc leur fiabilité avec des faux positifs projetant l’outil dans un placard.

Plutôt que de monter une machine sur chaque continent pour voir comment le système se comporte, on peut faire appel à un service de monitoring externe. J’ai testé depuis quelques semaines un petit outil sympathique : pingdom. La page principal vend le système comme simple d’utilisation et accessible même à votre DSI qui peut avoir tendance à parfois surestimer ses connaissances.

no comments |

Older posts: 1 2