Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1185 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  [site internet] Quoi savoir pour créer un site pro ?

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

[site internet] Quoi savoir pour créer un site pro ?

n°1873039
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 00:43:29  profilanswer
 

Hello!

 

Je suis en train de bosser pour créer un site web pro 2.0. Je suis développeur Windows/C++ à la base et j'ai des connaissances dans les BDD, XML, webservices, HTML, etc...
Il me manque par contre l'expérience sur l'architecture et les technos orientées web. Mon réflexe de base est l'utilisation d'une base éprouvé (LAMP) avec AJAX, mais je ne connais pas ses limites ni s'il s'agit du bon choix (PHP, ruby on rails,..).

 

Les contraintes qui risquent de se poser sont :
- gestion de quelques transactions financières (abonnement au site par ex).
- gros traffic (?) : 1 à 5 millions de visiteurs mensuels
- beaucoup de données vont être stockées et vont nécessiter de nombreuses requêtes (calcul de statistiques,...). Mais les mises à jour de la base seront limitées. Il s'agira principalement d'interrogations.

 

Quid de la sécurité ? (est ce que cela disqualifie certains langages?)
Comment se gère le traffic ? (loadbalancing, sharding...)
MySQL est-il suffisamment robuste pour supporter de nombreuses requêtes ?
Il y a-t-il une "formule" pour connaitre la limite de charge d'un site/architecture ?

 

Les choix à faire :
- Langage/Framework

  • Ruby / Rails
  • Python / Django
  • PHP / CakePHP, Symphony, Zend, ?

- DBMS

  • MySQL
  • PostgreSql

- Serveur Web (visiblement le choix du serveur se fait surtout en fonction du duo langage/framework)

  • Apache
  • Mongrel
  • Nginx
  • Lighthttpd


J'aimerai donc avoir les retours/avis de personnes travaillant dans le domaine, pour partir sur de bonnes bases.

 

Merci.

Message cité 2 fois
Message édité par youmoussa le 24-04-2009 à 18:30:29

---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
mood
Publicité
Posté le 15-04-2009 à 00:43:29  profilanswer
 

n°1873041
Elmoricq
Modérateur
Posté le 15-04-2009 à 00:45:02  profilanswer
 

Tu peux demander dans blabla@web j'pense, tu pourras avoir pas mal de réponses sur ce topic.

n°1873043
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 00:46:50  profilanswer
 

Je suis dans la bonne catégorie au moins  :D


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873044
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 00:49:22  profilanswer
 

Mais où est ce fameux blabla@web ?...


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873045
Elmoricq
Modérateur
Posté le 15-04-2009 à 00:50:25  profilanswer
 
n°1873046
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 00:51:55  profilanswer
 

C'était pas sorti sur les 25 1ères réponses de la recherche. Pas très populaire le blabla local...


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873058
BenO
Profil: Chercheur
Posté le 15-04-2009 à 07:36:59  profilanswer
 

Vous avez un budget hébergement défini ?


---------------
Python Python Python
n°1873063
Profil sup​primé
Posté le 15-04-2009 à 08:40:01  answer
 

Je prêche un peu pour mon école mais PHP me semble encore OK pour ton projet, et MySQL aussi, d'ailleurs pour te le prouver ce forum utilise mysql.
En ce qui concerne la gestion ecommerce, des outils comme oscommerce existent déjà en PHP. A toi de voir ce que tu préfères.
Pour tes calculs qui nécessitent de nombreuses requêtes, avec un nombre de visiteurs aussi important, tu peux toujours essayer de mettre certaines choses en cache...
EDIT : je ne suis pas expert en la matière mais il me semble qu'avec autant de visites il te faudra un cluster et la difficulté ce sera de gérer çà avec PHP/MySQL

Message cité 1 fois
Message édité par Profil supprimé le 15-04-2009 à 08:41:25
n°1873069
BenO
Profil: Chercheur
Posté le 15-04-2009 à 08:46:43  profilanswer
 

Python / Django et PostgreSQL :o
 
Le cache est obligatoire :o
 
 


---------------
Python Python Python
n°1873079
masklinn
í dag viðrar vel til loftárása
Posté le 15-04-2009 à 09:09:24  profilanswer
 

BenO a écrit :

Python / Django et PostgreSQL :o


+1, Django + Satchmo


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
mood
Publicité
Posté le 15-04-2009 à 09:09:24  profilanswer
 

n°1873082
BenO
Profil: Chercheur
Posté le 15-04-2009 à 09:15:23  profilanswer
 

faut que je l'essaye d'ailleurs [:cerveau love]


---------------
Python Python Python
n°1873086
masklinn
í dag viðrar vel til loftárása
Posté le 15-04-2009 à 09:27:37  profilanswer
 

BenO a écrit :

faut que je l'essaye d'ailleurs [:cerveau love]


Django ou Satchmo?


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1873089
BenO
Profil: Chercheur
Posté le 15-04-2009 à 09:29:16  profilanswer
 

Les deux, mais surtout Satchmo.


---------------
Python Python Python
n°1873101
masklinn
í dag viðrar vel til loftárása
Posté le 15-04-2009 à 09:42:39  profilanswer
 

BenO a écrit :

Les deux, mais surtout Satchmo.


Tu posteras tes impressions ici alors, j'ai pas eu l'occasion de tester non plus pour le moment :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1873106
Skateinmar​s
Posté le 15-04-2009 à 09:49:53  profilanswer
 

youmoussa a écrit :


Les contraintes qui risquent de se poser sont :
- gestion de type ecommerce
- gros traffic (?) : 1 à 5 millions de visiteurs mensuels
- beaucoup de données vont être stockées et vont nécessiter de nombreuses requêtes (calcul de statistiques,...).

 

Quid de la sécurité ? (est ce que cela disqualifie certains langages?)
Comment se gère le traffic ? (loadbalancing, ...)
MySQL est-il suffisamment robuste pour supporter de nombreuses requêtes ?
Il y a-t-il une "formule" pour connaitre la limite de charge d'un site/architecture ?

 

Petit disclaimer je commence a avoir de l'xp mais pas sur des sites à très fort trafic :jap:

 

Donc déjà j'aurais dit rails :o
En tout cas pas de CMS genre osCommerce qui est pourri (rien d'autre à dire)

 

Niveau langage la réponse classique c'est "celui que tu connais" mais bon si tu fais que du C++ c'est mal parti
En tous cas PHP, Python, Ruby oui mais dans tous les cas mieux vaut ama partir d'un framework adapté.

 

Pour la sécurité on se servira des features du framework

 

Niveau "scalabilité" il faudra prévoir du cache donc (pages dynamiques stockees localement, memcached...), bien prévoir son architecture niveau servs (sharding ? etc).
Pas de soucis avec MySQL en lui-même

Message cité 1 fois
Message édité par Skateinmars le 15-04-2009 à 09:50:31

---------------
Feedback HAV
n°1873141
erulio
Posté le 15-04-2009 à 10:48:26  profilanswer
 

youmoussa a écrit :

Il me manque par contre l'expérience sur l'architecture et les technos orientées web. Mon réflexe de base est l'utilisation d'une base éprouvé (LAMP) avec AJAX, mais je ne connais pas ses limites ni s'il s'agit du bon choix (PHP, ruby on rails,..).

Perso, si c'était à refaire, je me redirigerais sans doute sur du Django (actuellement, boutique en ligne home-made sur base LAMP).

youmoussa a écrit :

Quid de la sécurité ? (est ce que cela disqualifie certains langages?)

Concernant la sécurité, on retombe toujours sur le même genre de problème quelque soit le langage (et même si php rajoute quelques merdes pour se distinguer, on peut le rendre aussi secure que les autres).

youmoussa a écrit :

Comment se gère le traffic ? (loadbalancing, ...)

Je passe, le problème ne s'est jamais posé pour moi.

youmoussa a écrit :

MySQL est-il suffisamment robuste pour supporter de nombreuses requêtes ?

Oui, sans problème. Mais c'est pas le plus complet et pas forcément le plus rapide dans certains cas.

 
youmoussa a écrit :

J'aimerai donc avoir les retours/avis de personnes travaillant dans le domaine, pour partir sur de bonnes bases.

Bon maintenant, je n'ai jamais exploré le monde des sites à forts trafics (pas de pub hors google). Mais ça fait 3 ans que je me contente de maintenir et améliorer en pointillé, et à chaque fois que je reviens dessus, je pleure (à cause de php, à cause de mon manque d'XP à l'époque, ...).
Si je devais recommencer, je ne m'encombrerais ni d'un débutant, ni d'un langage de merde :o

Message cité 1 fois
Message édité par erulio le 15-04-2009 à 10:49:00
n°1873427
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 16:28:06  profilanswer
 

Bon, faut que je lise consciencieusement vos réponses et que j'apporte des réponses/remarques/questions.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873496
budlite
Fresh
Posté le 15-04-2009 à 19:16:31  profilanswer
 

Penche toi du coté de Ruby on Rails, pour le dev web c'est très intéressant et le langage est relativement élégant. ( Après si tu connais déjà Python fonce pour Django ).


---------------
Fresh
n°1873504
youmoussa
Ecrou-vis
Posté le 15-04-2009 à 20:00:24  profilanswer
 

BenO a écrit :

Vous avez un budget hébergement défini ?


 
Oui/Non oui il y a eu un budget alloué à la très grosse louche. Mais, je n'étais pas encore dans l'équipe, donc je veux faire une estimation moi même. Je suis également en train de faire l'estimation pour la taille de la base de données.
 
 
 
Quelles sont les difficultés avec ces langage/soft ? Quels sont les points à prendre en considération pour ce genre de déploiement/architecture ?
 

BenO a écrit :

Python / Django et PostgreSQL :o
 
Le cache est obligatoire :o


 


 

masklinn a écrit :


Tu posteras tes impressions ici alors, j'ai pas eu l'occasion de tester non plus pour le moment :o


 
Je recherche des conseils, mais avec un retour d'expérience c'est mieux, je n'ai pas envie de tenter/tester pour vous :/
 

Skateinmars a écrit :


 
Petit disclaimer je commence a avoir de l'xp mais pas sur des sites à très fort trafic :jap:
 
Donc déjà j'aurais dit rails :o
En tout cas pas de CMS genre osCommerce qui est pourri (rien d'autre à dire)
 
Niveau langage la réponse classique c'est "celui que tu connais" mais bon si tu fais que du C++ c'est mal parti
En tous cas PHP, Python, Ruby oui mais dans tous les cas mieux vaut ama partir d'un framework adapté.


 
C'est ce que je cherche à déterminer actuellement. Les sites web 2.0 commencent à être suffisamment mures pour espérer trouver un bon framework de développement, non ?
Comme je n'ai pas de connaissance particulière dans un de ces langages, je suis ouvert à tous. j'ai l'habitude du développement et de la découverte de nouvelles APIs/librairies.
je veux partir sur une bonne base donc je ne m'attache pas trop sur la courbe d'apprentissage de ces langages pour le moment.
 
 

Skateinmars a écrit :


Pour la sécurité on se servira des features du framework


 
Ok pour la sécurité. La gestion SSL est par exemple présente/accessible dans tous ? D'autres techniques à prendre en compte ?
 

Skateinmars a écrit :


Niveau "scalabilité" il faudra prévoir du cache donc (pages dynamiques stockees localement, memcached...), bien prévoir son architecture niveau servs (sharding ? etc).


 
Les pages dynamiques sont stockées côté client ou le résultat de la page dynamique est mis en cache sur le serveur ?
Quelqu'un a-t-il un ordre de grandeur de visites/pages vues supportables par 1 serveur ?
 

Skateinmars a écrit :

Pas de soucis avec MySQL en lui-même


 
J'ai vu que l'implémentation de certaines fonctionnalités "classiques" des DBMS était assez récente (foreign key, ..). il faudrait que je cherche un comparatif avec des "benchmarks" entre les différents moteur opensource.
 

erulio a écrit :

Perso, si c'était à refaire, je me redirigerais sans doute sur du Django (actuellement, boutique en ligne home-made sur base LAMP).  
Concernant la sécurité, on retombe toujours sur le même genre de problème quelque soit le langage (et même si php rajoute quelques merdes pour se distinguer, on peut le rendre aussi secure que les autres).
Je passe, le problème ne s'est jamais posé pour moi.
Oui, sans problème. Mais c'est pas le plus complet et pas forcément le plus rapide dans certains cas.
 
Bon maintenant, je n'ai jamais exploré le monde des sites à forts trafics (pas de pub hors google). Mais ça fait 3 ans que je me contente de maintenir et améliorer en pointillé, et à chaque fois que je reviens dessus, je pleure (à cause de php, à cause de mon manque d'XP à l'époque, ...).
Si je devais recommencer, je ne m'encombrerais ni d'un débutant, ni d'un langage de merde :o


 
J'ai peut ietre mal employé le terme ecommerce. Le but n'est pas de vendre des items avec un caddy, mais de gérer quelques transactions financières (abonnement au site principalement).
 

budlite a écrit :

Penche toi du coté de Ruby on Rails, pour le dev web c'est très intéressant et le langage est relativement élégant. ( Après si tu connais déjà Python fonce pour Django ).


 
Est-ce suffisamment mure ? Il faut que je regarde s'il existe des CMS pour Ruby. Le côté objet de ces langages m'attire et me rassurerait.
 
 
Merci à tous en tout cas pour vos participations.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873558
budlite
Fresh
Posté le 15-04-2009 à 23:13:15  profilanswer
 

Pour le cache, les pages dynamiques sont stockées niveau serveur ( de toutes façon je ne vois pas comment stocker niveau client, mis à part tout foutre dans les cookies :pt1cable: ). Regarde du coté de memcache pour plus d'infos.
 
Concernant Ruby on Rails, c'est assez mature et des sites de grosses envergures l'utilisent ( Twitter utilise RoR, même s'ils ont eu pas mal de problème au niveau scalability il y a quelques temps :D ). En tous cas beaucoup de nouveaux projets ( startups ) web se lancent avec RoR. :jap:


---------------
Fresh
n°1873576
Skateinmar​s
Posté le 15-04-2009 à 23:37:21  profilanswer
 

youmoussa a écrit :


C'est ce que je cherche à déterminer actuellement. Les sites web 2.0 commencent à être suffisamment mures pour espérer trouver un bon framework de développement, non ?
Comme je n'ai pas de connaissance particulière dans un de ces langages, je suis ouvert à tous. j'ai l'habitude du développement et de la découverte de nouvelles APIs/librairies.
je veux partir sur une bonne base donc je ne m'attache pas trop sur la courbe d'apprentissage de ces langages pour le moment.


 
Je dirais rails alors :jap:
Il y a certes quelques CMS mais surtout un bon tas de gems/lib/plugins réutilisables et régulièrement mis à jour (ce qui a également ces mauvais côtés bien sur)
 

youmoussa a écrit :


Ok pour la sécurité. La gestion SSL est par exemple présente/accessible dans tous ? D'autres techniques à prendre en compte ?


 
Ce n'est pas le rôle du framework mais du serveur web. Dans le cas de rails (ouais je connais passenger :o ) ou de django on pourra utiliser nginx, et les serveurs applicatifs derrière. l'avantage de la séparation est également un plus du côté "scalability"
 

youmoussa a écrit :


Les pages dynamiques sont stockées côté client ou le résultat de la page dynamique est mis en cache sur le serveur ?
Quelqu'un a-t-il un ordre de grandeur de visites/pages vues supportables par 1 serveur ?


 
Les pages sont mises en cache côté serveur (memcache ou fichiers statiques)
Du côté client on jouera sur les headers (etag mais surtout dates de modification/expiration)
 

youmoussa a écrit :


J'ai vu que l'implémentation de certaines fonctionnalités "classiques" des DBMS était assez récente (foreign key, ..). il faudrait que je cherche un comparatif avec des "benchmarks" entre les différents moteur opensource.


 
PostgreSQL est mieux réputé et a plus de qualités que MySQL même s'il est moins populaire (perso je l'ai seulement utilisé quand j'etais encore en cours donc pas d'avis sur le sujet, en tous cas avec un framework et un orm pas de soucis d'adaptation sauf besoins spéciaux)
 

youmoussa a écrit :


Est-ce suffisamment mure ? Il faut que je regarde s'il existe des CMS pour Ruby. Le côté objet de ces langages m'attire et me rassurerait.


 
Rails est définitivement prêt pour des projets de grande envergure et l'a déjà prouvé (yellow pages par exemple).
L'écosystème autour est lui bien en place, et le langage est simplement incroyable quand on vient de PHP avec des habitudes moisies :D


---------------
Feedback HAV
n°1873577
Tristou
Keep calm and hack cookies
Posté le 15-04-2009 à 23:40:32  profilanswer
 

Pour la BDD après y'a PostgreSQL si MySQL tiens pas la route :o


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
n°1873589
el muchach​o
Comfortably Numb
Posté le 16-04-2009 à 00:26:44  profilanswer
 

budlite a écrit :

Pour le cache, les pages dynamiques sont stockées niveau serveur ( de toutes façon je ne vois pas comment stocker niveau client, mis à part tout foutre dans les cookies :pt1cable: ). Regarde du coté de memcache pour plus d'infos.

 

Concernant Ruby on Rails, c'est assez mature et des sites de grosses envergures l'utilisent ( Twitter utilise RoR, même s'ils ont eu pas mal de problème au niveau scalability il y a quelques temps :D ). En tous cas beaucoup de nouveaux projets ( startups ) web se lancent avec RoR. :jap:


A titre indicatif, ils utilisent RoR pour la partie web et Scala pour toutes les opérations en tâche de fond.
Pour ce qui est des benchmarks de BdD, on n'en trouvera pas parce que la plupart des licences de BdD interdisent de les publier (ce qui est un comble). Les quelques benchs que j'ai faits, pour ce qu'ils valent, donnaient comme résultat que MySQL, PostgreSQL et Oracle avaient des perfs comparables. Mais sur N cores, il me semble que Postgres s'en sort mieux que MySQL. Par contre, ce dernier a de meilleurs outils d'administration.
Le goulot d'étranglement possible, c'est plus la BD que les serveurs web.
Un PC quad core aujourd'hui doit normalement pouvoir servir au moins 15-20 pages par seconde et donc répondre aux besoins. Le site sera essentiellement limité par les requêtes en BD, et c'est le plus compliqué à mettre en cluster. Avec Oracle, il y a le RAC, pour Postgres, apparemment PL/Proxy
http://highscalability.com/skype-p [...] lion-users (plein d'infos sur ce site)
Pour MySQL, MySQL Proxy.


Message édité par el muchacho le 16-04-2009 à 01:08:12

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1873595
youmoussa
Ecrou-vis
Posté le 16-04-2009 à 01:13:14  profilanswer
 

Encore une fois merci.

 

Il faut également que je digère ces réponses.

 

Juste comme ça : vous pourriez donner des arguments concrets pour RoR plutôt qu'un autre langage par exemple ?
Mis à part Twitter, qu'utilisent certains gros sites web (gmail, facebook, yahoo!,..) ?


Message édité par youmoussa le 16-04-2009 à 01:13:37

---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873596
Skateinmar​s
Posté le 16-04-2009 à 01:37:06  profilanswer
 

En cherchant sur le web ya pas mals de confs/slides sur les archis et outils mis en place par les devs/admins de gros sites.
 
Facebook : php/mysql/apache pour le front, divers pour le reste (memcache, outils c/c++)
 
Twitter : rails en front, scala et autres derrière comme le dit el muchacho
 
Pour gmail wikipedia, me dit java+GWT
 
Pour de gros sites sous rails : http://rails100.pbwiki.com/
(dont hulu et slideshare)
 
Voir aussi
http://en.wikipedia.org/wiki/Postg [...] nent_users (yahoo)
http://en.wikipedia.org/wiki/Memcached (plein de gens)


---------------
Feedback HAV
n°1873597
youmoussa
Ecrou-vis
Posté le 16-04-2009 à 01:44:53  profilanswer
 

Merci pour les sources, je vais lire tout ça  [:cerveau charlest]


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873598
budlite
Fresh
Posté le 16-04-2009 à 01:49:27  profilanswer
 

Facebook utilise une pile LAMP ( donc PHP + MySQL à priori ),
Gmail je crois que ça a été développé avec le framework GWT ( donc en JAVA, qui te génère du HTML + Javascript ), pour leur BDD, aucune idée, je sais que Google a ses propres outils pour gérer les gros volumes de données ( cherche BigTable pour plus d'infos ).
Yahoo je crois me souvenir qu'ils utilisent PHP, à vérifier.
 
Arguments concrets pour RoR : framework qui -s'il est bien utilisé- peut te faire gagner beaucoup en productivité et maintenabilité ( comme tous les frameworks mvc :D ). Disons qu'avec RoR ton code sera plus élégant qu'en PHP :D  Au passage il ya de très bons frameworks PHP ( Symfony, CakePHP...)
 
edit: un peu burned  :o

Message cité 1 fois
Message édité par budlite le 16-04-2009 à 01:50:00

---------------
Fresh
n°1873599
youmoussa
Ecrou-vis
Posté le 16-04-2009 à 02:29:42  profilanswer
 

budlite a écrit :

Facebook utilise une pile LAMP ( donc PHP + MySQL à priori ),
Gmail je crois que ça a été développé avec le framework GWT ( donc en JAVA, qui te génère du HTML + Javascript ), pour leur BDD, aucune idée, je sais que Google a ses propres outils pour gérer les gros volumes de données ( cherche BigTable pour plus d'infos ).
Yahoo je crois me souvenir qu'ils utilisent PHP, à vérifier.
 
Arguments concrets pour RoR : framework qui -s'il est bien utilisé- peut te faire gagner beaucoup en productivité et maintenabilité ( comme tous les frameworks mvc :D ). Disons qu'avec RoR ton code sera plus élégant qu'en PHP :D  Au passage il ya de très bons frameworks PHP ( Symfony, CakePHP...)
 
edit: un peu burned  :o


 
pas du tout, ca me montre au moins que ce n'est pas l'avis que d'une personne.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1873635
Profil sup​primé
Posté le 16-04-2009 à 09:23:25  answer
 

youmoussa a écrit :

Quelles sont les difficultés avec ces langage/soft ? Quels sont les points à prendre en considération pour ce genre de déploiement/architecture ?

Je ne saurais pas te répondre, je te dis çà parce que je l'ai lu (Extrait du livre best practices PHP 5, que tu devrais lire avant de te lancer là dedans si tu choisis PHP)

Citation :

Peut-on déployer des applications PHP sur plusieurs serveurs ?
Plusieurs solutions s’offrent à vous si vous souhaitez déployer vos applications en
cluster. En revanche, ce concept est nouveau et pas encore bien abouti avec PHP,
bien que de sérieux travaux s’engagent dans ce sens. Voici deux solutions que vous
pouvez d’ores et déjà adopter :
• Utiliser un environnement d’exécution qui le permette, tel que la Zend Platform
que nous découvrirons au chapitre 17.
• En tenir compte dans votre architecture logicielle. Il est parfaitement possible de
gérer une répartition de charge à travers des mécanismes haut niveau assurés par
votre code PHP.


n°1873763
budlite
Fresh
Posté le 16-04-2009 à 13:06:50  profilanswer
 

Si ton appli va devoir supporter une grosse montée en charge, peut-être pourrais tu penser à utiliser des services "on the cloud" ( du style Amazon web services, ou même google app engine ) qui te permettent de t'affranchir de ta configuration de clusters etc ( en gros ton appli sera scalable automatiquement si tu passes par ce genre de plateformes ). Après il faut voir si ta boite accepte que les données soient sur le cloud...


---------------
Fresh
n°1873971
youmoussa
Ecrou-vis
Posté le 16-04-2009 à 16:38:41  profilanswer
 

On a effectivement pensé à ce genre de solution. Surtout vu ma non expertise dans le domaine...


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1874385
seabee
Posté le 17-04-2009 à 14:35:12  profilanswer
 

youmoussa a écrit :

On a effectivement pensé à ce genre de solution. Surtout vu ma non expertise dans le domaine...


Django ou Merb ou Rails. Si tu ne connais pas php, laisse tomber, aucun intérêt.
N'imagine même pas monter quoi que ce soit avec j2ee.
 
Sinon s'interfacer avec du cloud demande quand même un peu d'expérience.

n°1874403
budlite
Fresh
Posté le 17-04-2009 à 15:22:54  profilanswer
 

seabee a écrit :


Sinon s'interfacer avec du cloud demande quand même un peu d'expérience.


Tiens tu peux nous en dire plus ? ça m'intéresse. D'après ce que j'ai vu les services mettent à disposition une API assez simple à utiliser généralement, où sont les difficultés à utiliser le cloud ? ( perso je n'ai jamais utilisé ces services encore donc je manque de visibilité là dessus :jap: )


---------------
Fresh
n°1874434
youmoussa
Ecrou-vis
Posté le 17-04-2009 à 16:22:41  profilanswer
 

seabee a écrit :


Django ou Merb ou Rails. Si tu ne connais pas php, laisse tomber, aucun intérêt.
N'imagine même pas monter quoi que ce soit avec j2ee.
 
Sinon s'interfacer avec du cloud demande quand même un peu d'expérience.


 
Tu peux étayer un peu STP ? que ce soit pour les langages ou le cloud computing.
 
Je t'avoue que je n'ai même pas songé à J2EE. Je crois que je préfèrerais encore prendre des licences et faire du .Net à la place.
 
Pour le langage, qu'est ce qui fait la différence selon vous ?


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1874549
budlite
Fresh
Posté le 17-04-2009 à 18:37:44  profilanswer
 

youmoussa a écrit :


Pour le langage, qu'est ce qui fait la différence selon vous ?


Le fait que tout soit objet en python ou ruby donne un code beaucoup plus lisible selon moi ( notamment comparé au PHP et ses fonctions interminables genre array_assoc_intersect etc :whistle: )
Après niveau performance, je ne saurais te dire lequel est le mieux. Il y a surement des benchmarks diffusés sur le web...


---------------
Fresh
n°1874573
esox_ch
Posté le 17-04-2009 à 21:50:06  profilanswer
 

Bonjour,
 
Effectivement moi je te conseille d'utiliser Ruby on Rails. Pour la base de donnée MySQL devrait pas poser de soucis, mais à ce que j'ai pu lire Postgres serait un peu plus robuste (affirmation à prendre avec des pincettes, je n'ai jamais utilisé Postgres). De toutes façons quelque soit ton choix de SGBD, Rails le supportera de manière plus ou moins équivalente ( opte juste pour un système qui te permet d'utiliser les Transaction, la Replication & co ).
Niveau sécurité "du site" : RoR implémente pas mal de trucs "tout seul" pour que les règles minimales de sécurité soient respectées. Niveau serveur, là ça va dépendre de ton sys admin..
Niveau gestion de la charge, tu peux très facilement créer un système de load balacing avec le duo Apache + Mongrel, c'est ce qu'on utilise là ou je bosse. de plus Rails permet d'implémenter assez facilement une gestion assez bien faite du cache (c'est automatique pour les requêtes SQL et les classes Ruby, ça peut être codé assez vite fait pour les vues).
 
Bref voilà :)


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1874574
youmoussa
Ecrou-vis
Posté le 17-04-2009 à 22:04:24  profilanswer
 

Merci pour ce complément (je suis à la bourre dans ma veille techno là).
 
Pour le SGBD, j'ai un peu plus l'habitude et plus de connaissances. Mais je surveille également les features pour optimisations (procédures stockées, vues, triggers, etc..).
 
J'ajoute Mongrel à ma liste de choses sur lesquelles je dois me documenter.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1874578
esox_ch
Posté le 17-04-2009 à 22:35:20  profilanswer
 

Si tu prévois d'orienter ton développement vers Rails, je te conseille d'étudier au passage le fonctionnement (ou du moins les bases) d'un système de versionnement (git ou svn) et de déploiement (qui s'appelle Capistrano pour Rails) car ça une fois que ton appli aura pris de l'ampleur ça te seras excessivement utile


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1874580
youmoussa
Ecrou-vis
Posté le 17-04-2009 à 22:49:01  profilanswer
 

Le versionnement, je connais, comme je l'explique, je suis quand même développeur, donc ca fait partie des évidences.
 
Pour le déploiement, je ne m'étais pas trop posé la question jusqu'à présent. Merci pour la référence.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°1874773
Skateinmar​s
Posté le 18-04-2009 à 21:11:46  profilanswer
 

seabee a écrit :


Sinon s'interfacer avec du cloud demande quand même un peu d'expérience.


 
Si il part sur rails, il peut utiliser une solution plus haut niveau comme heroku, engine yard ou joyent
 

budlite a écrit :


Le fait que tout soit objet en python ou ruby donne un code beaucoup plus lisible selon moi ( notamment comparé au PHP et ses fonctions interminables genre array_assoc_intersect etc :whistle: )
Après niveau performance, je ne saurais te dire lequel est le mieux. Il y a surement des benchmarks diffusés sur le web...


 
+1 sur le fait qu'il y ait vraiment aucun interet à apprendre PHP actuellement
 
Pour les performances du langage peu importe à mon avis, il faudra absolument mettre en place des systèmes de cache qui ne passeront donc pas par l'application elle-même.
 

esox_ch a écrit :


Niveau gestion de la charge, tu peux très facilement créer un système de load balacing avec le duo Apache + Mongrel, c'est ce qu'on utilise là ou je bosse.


 

youmoussa a écrit :

J'ajoute Mongrel à ma liste de choses sur lesquelles je dois me documenter.


 
Nginx + thin est définitivement plus adapté qu'apache et mongrel niveau performances (puis bon apache et ses fichiers de conf...).
Sinon, c'est très récent mais passenger (mod_rails) est dispo pour nginx, ca peut être une solution.
Selon les besoins on peut aussi réflehir à mettre en place haproxy ou varnish.
 

esox_ch a écrit :

Si tu prévois d'orienter ton développement vers Rails, je te conseille d'étudier au passage le fonctionnement (ou du moins les bases) d'un système de versionnement (git ou svn) et de déploiement (qui s'appelle Capistrano pour Rails) car ça une fois que ton appli aura pris de l'ampleur ça te seras excessivement utile


 
J'espère bien que l'utilisation d'un scm est un prérequis :D
 
Pour capistrano son utilisation n'est pas limitée à rails, on peut très bien l'utiliser pour déployer du php (ce que l'on fait) ou du python. D'ailleurs je ne connais pas d'autre solution à part en java (je ne compte pas vlad). A mon avis c'est également un prérequis dans sa situation.


---------------
Feedback HAV
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  [site internet] Quoi savoir pour créer un site pro ?

 

Sujets relatifs
creer un contenuer, il ne s'affiche pas[resolu] images floues sur mon site
Héberger une vidéo de 3 min sur mon sitecréer un plugin à partir d'un projet généré par emf
qui a reussi à mettre Apideo sur son site web?[VBS] Creer un script de lecteur réseau utilisateurs
que pensez vous de mon site ?Module Linkedin Viadeo Facebook pour site internet alumni
Plus de sujets relatifs à : [site internet] Quoi savoir pour créer un site pro ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR