Adobe AIR 2.0 en approche

Adobe AIR 2.0 est bientôt prêt !
Voici les plus grandes nouveautés :

  • Amélioration des sockets :
    • Sockets Serveurs (On va enfin pouvoir faire des “serveurs” avec AIR !)
    • Sockets UDP (Ca peut servir)
    • SSL/TLS (Idem)
  • Options de déploiement
    • Vous avez maintenant la possibilité de créer directement un setup a la place du fichier .air !
  • Détection des périphérique de stockage de masse
    • L’API AIR vous permet maintenant de pouvoir récupérer un évènement en cas de branchement ou de débranchement d’un périphérique de stockage (Clé usb, Disque dur, etc).
  • Exception globale
    • Vous pouvez maintenant “catcher” une exception globale dans toute l’application, cela peut permettre la création de logs ou d’une fenêtre d’erreur générique sans prise de tête.
  • Ouverture de document dans son application par défaut
  • Gestion des processus
    • Vous pouvez maintenant lancer et communiquer avec des processus natifs (ou pas) depuis votre application Adobe AIR, une fonctionnalité vraiment très attendue !
  • RPM/DEB
    • Des paquets RPM et DEB sont maintenant fournis pour l’installation.

Plus de détails disponibles ici : http://labs.adobe.com/wiki/index.php/AIR_2:Release_Notes

Categorie: Informatique -> Programmation -> ActionScript -> AIR
Créé il y a 3 semaines, 6 jours (le dimanche 14 février 2010 à 22:10).
Dernière modification il y a 3 semaines, 6 jours (le dimanche 14 février 2010 à 23:22) par kedare (Mathieu POUSSIN).
Les choses qu'il faudrait changer sur OpenSolaris

Hello,
J’ai pendant quelques semaines utilisé OpenSolaris en tant qu’OS serveur et aussi en desktop, j’aime beaucoup cette OS, cependant il souffre encore de gros problèmes par rapport a Linux (c’est pour ca que je compte reswitcher sur du Linux), en voici quelques uns :

  • IPS: Mais virez moi ce package manager totalement pourrave et mettez Aptitude sérieux… IPS est EXTRÊMEMENT lent (compte 2h minimum pour installer JRury alors que ca prend 30 seconde avec aptitude), les développeurs ont eu la bonne idée de faire qu’il fasse sn sorte de télécharger tout les fichiers du programme au lieux d’un seul gros fichier, du coup quand on a un gros nombre de fichier (genre 23k pour certains apps), c’est monstrueusement lent !
  • Pas assez de paquets disponibles, ou obsolètes: IPS est très pauvre au niveau paquets, et la plupart sont obsolètes… Par exemple impossible de trouver Postgresql8.4, ou bien une version de Gajim qui a moins d’un ans
  • Multimédia = 0: La ou pour Linux vous pouvez facilement installer les codes, c’est une horreur sous OpenSolaris, il n’y a rien dans les dépôts a ce niveau la, vous devez aller chercher les codecs sur des sites, et la pluspart sont payant…
  • Support Hardware hasardeux: J’ai eu de la chance sur ma Workstation où OpenSolaris a tout supporté impeccablement (sauf la carte graphique ATI car sans accélération 3D)(Même mon contrôleur Wifi fonctionne impec, alors qu’il n’a jamais fonctionné correctement sous Linux (RT2500)), mais impossible de le booter sur mon laptop a cause d’un probleme de carte graphique…), c’est pareil pour pas mal de matos, de plus pratiquement aucun constructeur de serveurs ne support vraiment OpenSolaris pour les outils de surveillance fournis (OpenManage, Insight Manager, etc)

Cependant a coté de ces defauts, OpenSolaris offre certains features géniales:

  • ZFS, le FS qui fait tout: ZFS c’est entre autre un système de fichier, mais pas que, on peux dire qu’il gère aussi plus ou moins son propre système de partition (pool/dataset), la compression transparente, le versioning, les snapshots, les partages CIFS, le RAID logiciel, etc, c’est assez impressionnant tout ce que ca fait tout en restant simple a administrer….
  • SMF, le gestionnaire de service qui pwn init.d: SMF est le programme qui s’occupe de gérer tout les services (équivalent de rc.d et init.d de Linux en faite), il est bien plus puissant, gère plus d’état (Sous les autre O.S c’est généralement ON ou OFF, OpenSolaris peut utiliser des états intermédiaires selon la situation (OFFLINE, MAINTENANCE, ONLINE, DEGRADED, DISABLED), et l’activation/désactivation (permanente ou pas, se fait très rapidement)

Ainsi que pas mal d’autre trucs que je n’ai pas testé comme les fonctions de routage, les Zones (Virtualisation), les Boot Environment (j’ai regardé vite fait), etc.
Je pense que c’est un bon O.S si on veux vraiment un gros serveur professionnel, mais ca reste très difficile a utiliser par rapport a un Linux quand on connais peut (vu que tout est poussé a l’extreme par rapport a Linux…), et pas encore “viable” en desktop (surtout au niveau multimedia), je vais donc aller tester ArchLinux sur mon desktop et mon serveur ;)

Categorie: Informatique -> Administration
Créé il y a 1 mois, 3 semaines (le jeudi 21 janvier 2010 à 20:32).
Dernière modification il y a 1 mois, 2 semaines (le samedi 23 janvier 2010 à 04:16) par kedare (Mathieu POUSSIN).
Dans PostgreSQL, tout n'est pas parfait

Suite a mon dernier post, vous pourriez être emmener a penser que Postgresql est parfait, hé bien non, malheureusement Postgresql souffre de nombreux défauts (en comparaison avec Mysql ici par exemplel) en voici quelques uns :

  • Pas de réplication Native: Avec Postgresql vous devez aller utiliser des contributions pour pouvoir faire un système de réplication avec Postgresql, ceux ci sont généralement peut performant (iSlony par exemple), alors que par exemple Mysql support plusieurs système de réplication nativement (Master/Slave via Log Shipping, et Cluster avec Mysql Cluster (Cependant avec Mysql Cluster, toute la base de donnée doit tenir en mémoire il me semble, donc pas utilisable pour les grosses bases)) (Cependant il parrait que quelque chose est prévu pour la version 8.5, Pour le moment seul un mode Warm Standby est disponible sous Postgresql (cela permet juste d’avoir un serveur de secours au cas ou le master tombe, mais impossible de s’y connecter tant que le master fonctionne encore)
  • Pas de partitionnement des tables: Il est possible d’implémenter un système de partitionnement via des triggers ou des rules, mais c’est moche et ca rend la maintenance très complexe, alors qu’une grande partie des autres bases de données ont un support natif du partitionnement (Même Mysql…)
  • Pas de support technique: Comme Postgresql est un projet Open-source, il n’y a aucune grosse entreprise derrière pour contrôler le projet et fournir un support ou des outils, tout doit passer par la communauté, et les grosses entreprises a la recherche d’une base de données avec support comprit n’aiment pas forcement ça….
  • Pauvreté des outils: On trouve très peut d’outils pour Postgresql pour la gestion et le monitoring des bases de données, par exemple impossible de trouver un équivalent de l’excellent Mysql Entreprise Monitor qui permet de surveiller un cluster complet
  • Pas de cache de requêtes: Bon ça c’est une généralité bien sympa de Mysql, les requêtes identiques sont mises en cache, c’est assez pratique pour bien booster les performances au niveau des requêtes répétitives, cependant ce n’est pas indispensable si le cache est bien géré sur le site web (si utilisé avec un site web)
  • Pas de planificateur de taches natif: La ou beaucoup de bases de données (Mysql, MSSQL, Oracle) fournissent un planificateur de tache qui permet d’exécuter a intervalle régulier des requêtes SQL ou des procédures stockées, Postgresql n’a rien de natif, il me semble qu’il y a un projet de planificateur de tache pour Postgresql lié a pgAdmin, mais je n’en ai rarement entendu parler..
  • Pas de REPLACE/MERGE , C’est toujours un plus qui permet d’économiser une requête et donc d’augmenter les performances.

Donc voila, ce sont les choses qui serons surement amélioré dans les prochaines versions, donc pour ceux qui veulent savoir, NON je ne déteste pas Mysql, c’est un RDBMS bien sympa avec Postgresql, mais chacun ont leurs avantages et leurs inconvenants (et oui généralement je préfère Postgresql).

A ma connaissance, les deux peuvent supporter une haute volumétrie, la plus grosse base de données Postgresql que je connaissent fait environ 2Po (2.000.000 Go, 2000To) et est chez Yahoo, mais on sais aussi que Facebook tourne sous Mysql… :)

A vos commentaires ;)

Categorie: Informatique -> Administration
Créé il y a 6 mois, 2 semaines (le jeudi 27 août 2009 à 18:27).
Dernière modification il y a 3 mois, 2 semaines (le samedi 28 novembre 2009 à 14:19) par kedare (Mathieu POUSSIN).
L'avantage des moteurs de stockage de Mysql ? Il n'y en a pas !

Je vois beaucoup de gens vanter le systeme de moteurs de stockage que l’on trouve dans Mysql, soit disant avantageux, et bien NON, désolé de vous décevoir, ce systeme n’a absolument aucune avantage, pourquoi ? Exemple:

  • Je souhaite créer une table pour mes articles avec une recherche FullText : MyISAM
  • Je souhaite créer une table pour mes articles transactionnel : InnoDB
  • Je souhaite créer une table pour mes articles avec une recherche FullText et transactionnel : IMPOSSIBLE

Eh oui, on vois souvent comparer les features de tout les moteurs de stockages confondus de Mysql avec d’autre base de donnée, seulement dans Mysql vous ne pouvez pas tout utiliser… Vous devez sacrifier certains bénéfices au profits d’autres.

Exemple de commentaire d’une personne switchant sous Mysql:

One advantage you’ll have with MySQL over SQL Server is in the area of MySQL storage engines. I can’t tell you how many customers have told me they use MySQL over other databases like SQL Server because of its pluggable storage engine architecture. When I first began looking at storage engines, I was a bit skeptical, but not anymore. As a DBA, what I like is the flexibility storage engines offer. In one database, I can have tables that are transactional or not, main memory or not, compress data or not, and on. And each storage engine supplies performance and usage advantages over using just traditional tables like you find in SQL Server.
In addition, I like that not only do we at MySQL/Sun develop storage engines, but other vendors do as well, which helps us innovate faster. We have third-party vendors that have created column-oriented data warehouse engines, OLAP engines, transactional engines, and more. Using and switching between storage engines is very easy as well. In the end, what storage engines give you over SQL Server is more choice, opportunities for higher performance, and better adaptability for your applications.
Source

Et bien voila mes réponses :

“I can have tables that are transactional or not”

Désolé mon monsieur, mais dans une base de données, l’intégrité des données est la priorité absolu, donc faire une base de données sans transaction c’est une hérésie…

“main memory or not”

Pour ca il y a des outils spécialisé et bien plus rapide que Mysql, comme Memcached par exemple, une base de donnée ca a pour but de stocker les données de façon persistante.

“compress data or not”

Comme a peut prêt n’importe quel système de bases de données un minimum évolué, Ah oui mais il a oublié de préciser que les bases de données compressé sont soit en lecture seul (MyISAM COMPRESSED), ou très limité (ARCHIVE, SELECT et INSERT seulement, sans indexes), Mince c’est rageant quand on vois a coté que Postgresql compresse très bien les données en gardant toutes ses fonctionnalités (ALTER TABLE…. SET STORAGE MAIN|EXTENDED) !

“switching between storage engines is very easy as well.”

Pour une base de donnée qui fais 10Mo ou moins, OK, mais quand vous avez une base de données de plus de 100Mo, laissez tombez la conversion via ALTER TABLE, vous allez vous taper un joli timeout, vous avez plus qu’a dump toute la table, modifier le .sql et tout re-importer.. :)
Rajoutez a ca le fait que chaque moteur de stockage a son propre système de backup, ca devient vite l’enfer de faire des sauvegardes de sa base de données…..

Bref vous avez deux choix :

  • Utilisez Mysql et séparez toutes les features entre plusieurs systemes de stockage isolés et independants
  • Utilisez une VRAIS base de données, comme Postgresql avec UN moteur de stockage contenant toutes les fonctionnalitées….

Je sais pas vous, mais je trouve la deuxième solution bien plus séduisante. :)

Dans les autres défaut de Mysql, on retrouve le support SQL assez minable de base (sans sql_mode=AINSI), par exemple le double-quote sert a entourer les strings alors que la norme SQL spécifie qu’il est censé délimiter les identifiant (noms de table, colonnes, etc), dans mysql on doit utiliser un quote que presque personne n’utilise, le ` !
Donc si vous tentez une requête respectant le standard SQL, et bien ca ne marchera pas, c’est simple, vous aurez un super messages d’erreur Mysql pas du tout explicite (comme tout les autres bizarrement…)

Donc en gros, NON le système de stockage modulaire de Mysql n’est PAS un avantage !

Categorie: Informatique -> Administration
Créé il y a 6 mois, 2 semaines (le jeudi 27 août 2009 à 02:42).
Dernière modification il y a 6 mois, 2 semaines (le jeudi 27 août 2009 à 03:29) par kedare (Mathieu POUSSIN).
A moi Adobe Flex et Adobe AIR

Yo !

Je fut pendant une longue periode a la recherche d’un langage qui me couviendrais pour la créations de RIA mais surtout d’application Desktop, après avoir été écoeuré par les API style wxPython (Celle la c’est vraiment la pire), ou Swing (ca va encore, mais j’accroche pas), J’ai découvert Adobe AIR ,

Adobe AIR est un framework qui permet de coder ses application en :

  • Flex/Flash + Actionscript
  • HTML + Javascript

Et le résultat est impressionnant, on trouve des applications très agréable a utiliser et fluide contrairement a la pluspart des application web, niveau design c’est aussi évolué, c’est comme coder un site web, un peux de CSS pour la mise en forme et les couleurs et ca roule !

Certains (MacOsXiens) dirons : “Ouais mais c’est mal intégré !”, Hé bien moi je répond: Ma priorité est la portabilité entre Linux, MacOsX et Windows, donc j’ai le choix entre deux choses : Faire une application qui tente d’avoir un rendu natif mais qui le fais mal et qui du coup apparait de façon bien laide (Comme ce que tente de faire Wx), Ou bien crée une application qui va s’éloigner des standards de chaque système pour avoir sa propre ergonomie et ressembler a quelque chose, Le choix est vite fait….

Exemple d’application codé avec Adobe AIR, DestroyTwitter, mon client Twitter préféré :

Le programmation d’application avec Adobe AIR est vraiment très simple, j’ai fais en quelques minutes un lecteur de musique basique avec affichage ID3, Pause, etc, J’ai montré le code source a un amis qui dev en C#.... Je vous laisse imaginer sa tête, il était bluffé par la simplicité de programmation.

Et comme je cherchais a coder des applications en utilisant les mêmes méthodes que pour les sites webs, je suis comblé, c’est tout simplement parfait !

Categorie: Informatique -> Programmation -> ActionScript -> AIR
Créé il y a 6 mois, 3 semaines (le samedi 22 août 2009 à 02:28).
Dernière modification il y a 3 semaines, 6 jours (le dimanche 14 février 2010 à 22:56) par kedare (Mathieu POUSSIN).

Page 1 sur 4 --> Articles plus anciens