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

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  1261  1262  1263  ..  1454  1455  1456  1457  1458  1459
Auteur Sujet :

blabla@web

n°2195835
mechkurt
Posté le 28-06-2013 à 14:50:02  profilanswer
 

Reprise du message précédent :
Je suis sur http://www.nodebeginner.org/#hello-world
 
Les cotés asynchrone / monothread sont un peu chaud à appréhendé mais je m'accroches...
 
Ça peut cohabiter avec un serveur PHP / mysql Classique ou pas (logiquement oui si je met un port à la con je pourrais l'utiliser que pour la génération d'image) ?


---------------
D3
mood
Publicité
Posté le 28-06-2013 à 14:50:02  profilanswer
 

n°2195836
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 28-06-2013 à 14:53:59  profilanswer
 

(j'avais pas vu ton post avant de partir bouffer [:dawao])

nraynaud a écrit :

C'est pas vrai, il bosse en équipe, il a un boss, la facturation fait apparaître l'usage des resources.


Oula calmos, j'affirme rien sur ce qui se passe dans ton ancienne boîte/la boîte actuelle de 0x90. Je parle en général, parce que oui, il arrive de bosser avec des gens pas fiables.

nraynaud a écrit :

Et il a pas tout les droits, notamment les budgets sont défendus au niveau de la boite. Par contre l'équipe produit doit tout faire techniquement pour se démerder pour que le site web arrive sur les navigateurs des clients. ça veut dire qu'elle le créé et le déploie, et se démerde pour qu'il reste en ligne. Elle décide si elle utilise une lib ou si elle développe, elle décide si elle met un CDN devant, si elle utilise amazon ou OVH (encore que là y'a une partie budget et légale à voir aussi, donc c'est pas souverain). En particulier elle fait ce qu'elle veut avec la mémoire, elle peut décider de rebooter ses serveur ruby toutes les nuit si elle veut, elle peut faire du crash only, elle peut utiliser postgres ou mysql ou mongo etc. de l'extérieur il y quelques critères : la thune claquée, est-ce que ça arrive sur les navigateurs, est-ce qu'il y a des bugs et est-ce que le produit est utilisable.


Là encore ba c'est bien pour vous [:spamafote] Je ne dis pas que l'approche de filer les clés aux devs n'est pas viable, je dis juste que c'est à manier avec précaution : pas partout, pas avec tout le monde.
D'ailleurs, je trouve que c'est super pour apprendre plein de trucs et avoir (justement) un point de vue sur comment ça se passe en front. Mais c'est comme pour tout, tu peux pas le généraliser à toutes les boîtes qui ont besoin de dev.

nraynaud a écrit :

il fait quoi s'il dev pas ? tout est géré par des appels sur des API. J'veux bien claquer un salaire mais il va falloir des résultats en face.


La réponse de chef de chantier du BTP [:kiki] QUand je dis "il dev pas", je parle de dev de l'appli/des services fonctionnels qui intéressent le client. Je parle du gars responsable de la prod, donc monitoring, livraisons des devs, modifs systèmes (hardware/software, que ce soit pour changer la RAM ou upgrader la version d'Apache). Je dis pas que le gars doit pas savoir faire du dev, mais c'est du dev orienté admin ou "devops", si tu préfères.

pop-pan a écrit :

[...] en elastic le premier truc que j'aurais proposé c'est d'augmenter les capa de facon a pouvoir avoir une QoS tenable pendant cette phase de resolution et de mesure, ca aurait pris 10mn et tout le monde aurait été plus serein, personne aurait joué du parapluie et on serait arrivé aux memes conclusions plus vite.


Là encore, je ne dis pas que l'approche ne fonctionne jamais ou n'a pas d'avantage. Bien sûr que c'est super pratique de pouvoir redimensionner l'archi pour dépanner la prod :D Mais faut voir qui a cette responsabilité aussi. En l'occurrence, dans ton cas, sur tous les mecs qui flippaient, tu penses pas qu'y en aurait pas eu un pour utiliser le redimensionnement en guise de parapluie pour planquer le problème ? Les gens sont capables de plein de grosses de conneries pour pas être coupable aux yeux des autres, donc il me semble nécessaire de faire attention à qui on file les clés et comment. Quand t'es responsable de l'équipe, que t'as quasiment fondé le truc et que t'as confiance en tout le monde (cf exemple de nraynaud), c'est quand même plus simple que quand tu débarques au milieu d'infras dégueulasses avec 10 ans d'historique au cul et 3-4 devs peu scrupuleux pour ce qui est de corriger les bugs [:dawao]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°2195842
nraynaud
lol
Posté le 28-06-2013 à 15:12:46  profilanswer
 

Taiche a écrit :


Oula calmos, j'affirme rien sur ce qui se passe dans ton ancienne boîte/la boîte actuelle de 0x90. Je parle en général, parce que oui, il arrive de bosser avec des gens pas fiables.


non, mais disons que dans mon utopie aussi, comme le dev n'est pas seul, il va moins déraper seul. Je crois fortement à l'équipe pour ces trucs là. Un peu de consensus sur les outils et un peu de consensus sur les valeurs, la qualité, ce qui est urgent ou important etc.
 

Taiche a écrit :


Là encore ba c'est bien pour vous [:spamafote] Je ne dis pas que l'approche de filer les clés aux devs n'est pas viable, je dis juste que c'est à manier avec précaution : pas partout, pas avec tout le monde.
D'ailleurs, je trouve que c'est super pour apprendre plein de trucs et avoir (justement) un point de vue sur comment ça se passe en front. Mais c'est comme pour tout, tu peux pas le généraliser à toutes les boîtes qui ont besoin de dev.


C'est clair qu'il y a des gens avec qui je ne retournerais pas bosser, et que je ne leur filerai pas les clefs du camion. Mais dans la mesure du possible, je prends le pouvoir maintenant, et j'essaye de former la bonne équipe pour pouvoir bosser comme ça. En tout cas la dernière fois c'était moi le plus con dans l'équipe produit, c'est pas toujours facile pour le moral de se sentir le boulet, mais y'a aussi un certain sentiment de sécurité dans le boulot accompli.
 

Taiche a écrit :


La réponse de chef de chantier du BTP [:kiki] QUand je dis "il dev pas", je parle de dev de l'appli/des services fonctionnels qui intéressent le client. Je parle du gars responsable de la prod, donc monitoring, livraisons des devs, modifs systèmes (hardware/software, que ce soit pour changer la RAM ou upgrader la version d'Apache). Je dis pas que le gars doit pas savoir faire du dev, mais c'est du dev orienté admin ou "devops", si tu préfères.


ben justement, devops c'est ce que j'ai fait, les même mecs qui développent le produit le mettent en prod.
 

Taiche a écrit :


Là encore, je ne dis pas que l'approche ne fonctionne jamais ou n'a pas d'avantage. Bien sûr que c'est super pratique de pouvoir redimensionner l'archi pour dépanner la prod :D Mais faut voir qui a cette responsabilité aussi. En l'occurrence, dans ton cas, sur tous les mecs qui flippaient, tu penses pas qu'y en aurait pas eu un pour utiliser le redimensionnement en guise de parapluie pour planquer le problème ? Les gens sont capables de plein de grosses de conneries pour pas être coupable aux yeux des autres, donc il me semble nécessaire de faire attention à qui on file les clés et comment. Quand t'es responsable de l'équipe, que t'as quasiment fondé le truc et que t'as confiance en tout le monde (cf exemple de nraynaud), c'est quand même plus simple que quand tu débarques au milieu d'infras dégueulasses avec 10 ans d'historique au cul et 3-4 devs peu scrupuleux pour ce qui est de corriger les bugs [:dawao]


ouais, il faut parfois passer un peu les RH au lance-flames en arrivant ...


---------------
trainoo.com, c'est fini
n°2195846
nraynaud
lol
Posté le 28-06-2013 à 15:26:34  profilanswer
 

hep les boulets, comment on attrape les coordonnées du coin en haut à gauche dans raphael.js ?
je vois width et height en propriété directes sur l'objet, mais je vois _left et _top qui ont l'air un peu privées


---------------
trainoo.com, c'est fini
n°2195849
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 28-06-2013 à 15:29:44  profilanswer
 

nraynaud a écrit :

non, mais disons que dans mon utopie aussi, comme le dev n'est pas seul, il va moins déraper seul. Je crois fortement à l'équipe pour ces trucs là. Un peu de consensus sur les outils et un peu de consensus sur les valeurs, la qualité, ce qui est urgent ou important etc.


Ah mais ça ouais, +10 000 :jap: C'est vraiment bien quand t'es dans un groupe de gens qui "parlent le même langage" en termes de techno mais aussi de vision, etc...

nraynaud a écrit :

C'est clair qu'il y a des gens avec qui je ne retournerais pas bosser, et que je ne leur filerai pas les clefs du camion. Mais dans la mesure du possible, je prends le pouvoir maintenant, et j'essaye de former la bonne équipe pour pouvoir bosser comme ça. En tout cas la dernière fois c'était moi le plus con dans l'équipe produit, c'est pas toujours facile pour le moral de se sentir le boulet, mais y'a aussi un certain sentiment de sécurité dans le boulot accompli.


Oué, t'as moins peur de déléguer, c'est clair.

nraynaud a écrit :

ben justement, devops c'est ce que j'ai fait, les même mecs qui développent le produit le mettent en prod.


Ah. Pour moi, devops stait le gars qui faisait du dev mais orienté pour l'exploit, pas sur le produit. Wikipedia parle d'un mouvement ou d'une organisation, spa super clair. Je comprends la confusion, j'vais aller revoir ma définition [:petrus75]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°2195852
Shinuza
This is unexecpected
Posté le 28-06-2013 à 15:36:15  profilanswer
 

Dat debate


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°2195853
Shinuza
This is unexecpected
Posté le 28-06-2013 à 15:42:02  profilanswer
 

nraynaud a écrit :

hep les boulets, comment on attrape les coordonnées du coin en haut à gauche dans raphael.js ?
je vois width et height en propriété directes sur l'objet, mais je vois _left et _top qui ont l'air un peu privées


x - width  
y - height
 
 [:chapi-chapo]


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°2195856
mechkurt
Posté le 28-06-2013 à 15:46:48  profilanswer
 

flo850 a écrit :

TU as un truc qui fonctionne en js ?  
est ce que tu as testé avec nodejs côté seveur ? il ya de modules qui émulent canvas, si je me souviens bien


http://nodeguide.com/convincing_the_boss.html#TOC

Citation :


CPU heavy apps
Even though I love node.js, there are several use cases where it simply doesn't make sense. The most obvious such case is apps that are very heavy on CPU usage, and very light on actual I/O. So if you're planning to write video encoding software, artificial intelligence or similar CPU hungry software, please do not use node.js. While you can twist and bend things quite a bit, you'll probably get better results with C or C++.
 
That being said, node.js allows you to easily write C++ addons, so you could certainly use it as a scripting engine on top of your super-secret algorithms.
 
Shelling out to unix tools
 
With node.js still being young, it's tempting to re-invent all kinds of software for it. However, an even better approach is tapping into the vast universe of existing command line tools. Node's ability to spawn thousands of child processes and treating their outputs as a stream makes it an ideal choice for those seeking to leverage existing software.


Ce truc me fait un peu peur... :- /
 
Sinon avec ImageMagick


---------------
D3
n°2195857
gelatine_v​elue
Posté le 28-06-2013 à 15:49:40  profilanswer
 

mechkurt a écrit :

Dites j'aurais une question sur un choix de techno.
 
On a un client qui a un besoin de faire des mélanges d'images en passant au niveau du pixel (rgba).
On a validé le fonctionnement sur des frontaux javascript avec des png  / drawimage / etc dans des canvas.
 
Maintenant se pose la question de faire la même chose "coté serveur", pour plusieurs raison mais majoritairement pour protéger ses algos et ses fichiers source pour ne servir que le résultat final.
 
A l'heure actuelle ou ouvre une dizaine de png en XGA, on récupère les tableaux de pixels et on fait mumuse avec, on a un peu de délai au chargement mais on a quand même des rendus relativement rapide (< 5 seconde).
 
Mon premier réflexe, ça a été de regarder le seul langage serveur que je connaisse (PHP), mais j'ai vite vu que c'était pas du tout jouable : lire un fichier image et le transcrire en tableau de pixel prend plus d'1s,  taille des tableaux dantesque donc difficile de les serializer et stocker, etc.
 
Du coups je voulais vos avis sur le bon langage pour faire ce genre de truc, je pensais à Python (ça fait un moment que je voulais tester), est ce qu'il est possible de stocker directement des gros tableaux et de les récupérer "rapidement" pour les manipuler...
 
Une autre solution serait de stocker chaque pixel dans une BDD et de transcrire l'algo en SQL, enfin bref, quel solution verriez vous à mon problème...
 


 
Comment fais-tu pour transformer l'image en tableau? Je devine que le problème est plus le processus que le language.
Si tu peux transformer ton image en bmp en temps raisonnable par ex, tu peux ensuite directement travailler dans le fichier bmp car le format est trivial.

n°2195861
Proov
Art & Science
Posté le 28-06-2013 à 16:00:06  profilanswer
 

ça doit etre vendredi, la fatigue etc... :o
 
je sèche... pour rendre rendre obligatoire au moins 1 checkbox... comment on fait ?
 

Code :
  1. <label class="checkbox">
  2.     <input type="checkbox" value="" required>
  3.     Yo
  4. </label>
  5. <label class="checkbox">
  6.     <input type="checkbox" value="" required>
  7.     Bien?
  8. </label>
  9. <label class="checkbox">
  10.     <input type="checkbox" value="" required>
  11.     Sisi
  12. </label>
  13. <label class="checkbox">
  14.     <input type="checkbox" value="" required>
  15.     Tavu
  16. </label>

mood
Publicité
Posté le 28-06-2013 à 16:00:06  profilanswer
 

n°2195863
mechkurt
Posté le 28-06-2013 à 16:02:16  profilanswer
 

A l'heure actuel :

Code :
  1. var myImages = Asset.images(t_img, {
  2.  onComplete: function(){
  3.   //on load les images dans les canvas
  4.   myImages.each(function(DOM,index){
  5.    var id = t_couches[index];
  6.    var CANVAS = new Element('canvas', {
  7.     'id':id,
  8.     'width':width,
  9.     'height':height
  10.    });
  11.    CANVAS.getContext('2d').drawImage(DOM, 0, 0, width ,height);
  12.    t_data[id] = CANVAS.getContext('2d').getImageData(0, 0, width, height);
  13.   });
  14.   loaded = true;
  15.   //on lance le bouzin
  16.   Render('');
  17.  }
  18. });


Et après je mix mes pixels provenant de mes différentes images suivants certain paramètres choisit par l'utilisateur avec des boucles for puis j’écris dans le canvas avec context.putImageData(buffer, 0, 0);
 
 
Mais dans php seul, je vais aps bien loin si je me contente de $rgb = imagecolorat($im, $x, $y); et $colors = imagecolorsforindex($im, $rgb); :- /


---------------
D3
n°2195865
mechkurt
Posté le 28-06-2013 à 16:07:42  profilanswer
 

Proov a écrit :

ça doit etre vendredi, la fatigue etc... :o
 
je sèche... pour rendre rendre obligatoire au moins 1 checkbox... comment on fait ?
 

Code :
  1. <label class="checkbox">
  2.     <input type="checkbox" value="" required>
  3.     Yo
  4. </label>
  5. <label class="checkbox">
  6.     <input type="checkbox" value="" required>
  7.     Bien?
  8. </label>
  9. <label class="checkbox">
  10.     <input type="checkbox" value="" required>
  11.     Sisi
  12. </label>
  13. <label class="checkbox">
  14.     <input type="checkbox" value="" required>
  15.     Tavu
  16. </label>



Utiliser un radio button et en sélectionner 1 par defaut ?
Pas sur que ce soit possible en html pur, par contre la plupart des librairies javascript propose un validateur "one-required"
http://mootools.net/docs/more/Form [...] e-required


---------------
D3
n°2195868
gelatine_v​elue
Posté le 28-06-2013 à 16:23:01  profilanswer
 

mechkurt a écrit :


Utiliser un radio button et en sélectionner 1 par defaut ?
Pas sur que ce soit possible en html pur, par contre la plupart des librairies javascript propose un validateur "one-required"
http://mootools.net/docs/more/Form [...] e-required


 
Si tu donnes a tes radio boutons des name identiques tu en auras un et un seul de cochable. D'après ce que je comprends lui il en veut au moins un de coché, donc des checkbox.

n°2195870
nraynaud
lol
Posté le 28-06-2013 à 16:25:02  profilanswer
 

Allez, je degage raphael, ça me saoule de pas supporter les groupes et les matrices au niveau papier, et comme maintenant svg est dans ie, c'est juste pour me faire chier.


---------------
trainoo.com, c'est fini
n°2195873
Volkhen
Posté le 28-06-2013 à 16:39:55  profilanswer
 

nraynaud a écrit :

Quand je vois ce que fait l'analyse de new relic, ça commence à vraiment devenir intéressant.


C'est pas l'outil qui cachait une partie des problèmes de perfs rencontrés par rap genius par hasard ?


---------------
Main/Alt1/Alt2/Alt3
n°2195877
nraynaud
lol
Posté le 28-06-2013 à 16:50:22  profilanswer
 

Volkhen a écrit :


C'est pas l'outil qui cachait une partie des problèmes de perfs rencontrés par rap genius par hasard ?


si


---------------
trainoo.com, c'est fini
n°2195889
Proov
Art & Science
Posté le 28-06-2013 à 17:44:39  profilanswer
 

mechkurt a écrit :


Utiliser un radio button et en sélectionner 1 par defaut ?
Pas sur que ce soit possible en html pur, par contre la plupart des librairies javascript propose un validateur "one-required"
http://mootools.net/docs/more/Form [...] e-required


 
on peut pas faire en html pur ? quel dommage :(
 

gelatine_velue a écrit :


 
Si tu donnes a tes radio boutons des name identiques tu en auras un et un seul de cochable. D'après ce que je comprends lui il en veut au moins un de coché, donc des checkbox.


 
Oui voilà, choix multiples mais au moins un de coché :jap:

n°2195958
0x90
Posté le 29-06-2013 à 12:32:17  profilanswer
 

Des navigateurs de tous bords (mobile autant que desktop), qui font une requête XHR 'en trop' (sur la même url que la page en cours, sans le query string, comment si on faisait un $.get('.')), que j'arrive pas à reproduire chez moi, ça vous dit quelque chose ?
 
Ça le fait sur toutes les langues, avec de gens de tous pays, même sur des plateformes où on peut pas mettre d'extensions, y'a le header X-Requested-With donc je pense que c'est fait par une lib ajax, et le referrer de la requête est bien la page en cours.


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°2195959
nraynaud
lol
Posté le 29-06-2013 à 12:44:34  profilanswer
 

un proxy [:moule_bite]


---------------
trainoo.com, c'est fini
n°2195993
0x90
Posté le 29-06-2013 à 17:29:06  profilanswer
 

Un proxy qui arrive à être devant des gens qui sont éparpillés partout dans le monde, alors qu'on a cloudflare devant (donc que les points d'entrée dans cloudflare sont bien répartis dans le monde aussi) ?


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°2196030
skylight
Made in France.
Posté le 30-06-2013 à 12:20:40  profilanswer
 

Pour les freelances... net-entreprises, c'est une blague du gouvernement, ou un stagiaire mal recruté ?

 

Je pensais qu'on ne voyait ce genre de code que sur les vieux sites multimania. :/

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>net-entreprises.fr</title>
  5. <SCRIPT type="text/JavaScript">
  6. function ChoixCSS() {
  7. var css="../neie.css";
  8. if (navigator.appName=="Netscape" ) {css="../nens.css";}
  9. if (navigator.appName=="Microsoft Internet Explorer" ) {css="../neie.css";}
  10. document.write("<LINK rel='StyleSheet' type='text/css' href='"+css+"'>" );
  11. }
  12. ChoixCSS();
  13. </SCRIPT>   
  14. <link href="../neie.css" rel="stylesheet" type="text/css">
  15. </head>
  16. <body BGCOLOR=#FFFFFF  topMargin="0" bottomMargin="0" rightmargin="0" leftmargin="0">
  17. <table border="0" cellpadding="0" cellspacing="0" ID="Table1">
  18.  <tr>
  19.   <td height="50" width="50%" rowspan="2">
  20.    <img height="1" src="../Images/espaceur.gif" width="1"></td>
  21.   <td>
  22.    <img height="1" src="../Images/espaceur.gif" width="95"></td>
  23.   <TD>
  24.    <IMG height="1" src="../Images/espaceur.gif" width="50"></TD>
  25.   <TD>
  26.    <IMG height="1" src="../Images/espaceur.gif" width="172"></TD>
  27.   <TD>
  28.    <IMG height="1" src="../Images/espaceur.gif" width="411"></TD>
  29.   <TD width="50%" rowSpan="2" height="50">
  30.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  31.  </tr>
  32.  <TR>
  33.   <TD colSpan="2" height="49">
  34.    <IMG height="49" src="../Images/logo.gif" width="145"></TD>
  35.   <TD>
  36.    <IMG height="49" src="../Images/inscrit_04.gif" width="172"></TD>
  37.   <TD height="49" width="411">
  38.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  39.  </TR>
  40.  <TR>
  41.   <TD bgColor="#eeae1e" colSpan="6" height="1">
  42.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  43.  </TR>
  44.  <TR>
  45.   <TD ROWSPAN="3" width="50%" height="96">
  46.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  47.   <TD ROWSPAN="3" valign="top" height="96">
  48.    <IMG SRC="../Images/inscrit_09.gif" WIDTH="95" HEIGHT="96"></TD>
  49.   <TD height="15" width="633" colspan="3">
  50.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  51.   <TD ROWSPAN="3" width="50%" height="96">
  52.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  53.  </TR>
  54.  <tr>
  55.   <TD colspan=3 class="texteRougeGras2">ERREUR !
  56.    </TD>
  57.  </tr>
  58.  <tr>
  59.   <td colspan=3>
  60.    <IMG height="1" src="../Images/espaceur.gif" width="1"></td>
  61.  </tr>
  62.  <tr>
  63.   <TD COLSPAN="6" height="1"  bgColor="#eeae1e">
  64.    <IMG height="1" src="../Images/espaceur.gif" width="1"></TD>
  65.  </tr>
  66.  <tr>
  67.   <td>
  68.    <IMG src="../Images/espaceur.gif" width="1"></td>
  69.   <td colspan="4" align=center>
  70.    <p><br>
  71.      <br>
  72.      <IMG SRC="../Images/puce03.gif" WIDTH="10" HEIGHT="9" border="0">
  73.      <font class ="texteRougeGras">
  74.     Informations techniques : </font><br>
  75.    </p>
  76.    
  77.   
  78.      <font class="texteRougeGras">Service :</font>
  79.      <font class="texteRougeGras">localhost-1001</font><br>
  80.   
  81.      <font class="texteRougeGras">Erreur : </font>
  82.      <font class="texteRougeGras">502</font>
  83.   
  84.    <p class="texteRouge">Veuillez nous excuser pour cet incident.<br>
  85.    Nous vous recommandons de revenir � la page d'accueil.</p>    </td>
  86.   <td>
  87.    <IMG height="1" src="../Images/espaceur.gif" width="1"></td>
  88.  </tr>
  89.  <tr>
  90.   <td align="center" colspan="6">
  91.    <br><br><br><br><br><br>
  92.    <!-- ********** ADAPTATION DEBUT ********** -->
  93.                 <a href="http://www.net-entreprises.fr"><img src="../Images/imageretouraccueil.jpg" width="143" height="19" border="0"></a>             
  94.    <!-- ********** ADAPTATION FIN *********** -->
  95.    <br>
  96.   </td>
  97.  </tr>
  98. </table>
  99. </body>
  100. </html>


Message édité par skylight le 30-06-2013 à 12:21:00
n°2196051
Tristou
Keep calm and hack cookies
Posté le 30-06-2013 à 18:23:01  profilanswer
 

[:mike hoksbiger:3]  
Ils sont restés en 2000, sûrement  :o


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
n°2196075
mechkurt
Posté le 01-07-2013 à 09:54:01  profilanswer
 

mechkurt a écrit :

Dites j'aurais une question sur un choix de techno.
[...]


Je vais tester en mettant mes pixels dans une base de donnée et en adaptant l'algo en SQL... :- /


---------------
D3
n°2196078
mechkurt
Posté le 01-07-2013 à 10:20:48  profilanswer
 

En fait non, mon image en base de donnée c'est + de 2 million de lignes et 60 Mo ! :- /
 
Tain mais doit bien y'avoir un truc plus performant que le javascript pour de la manipulation de tableau de pixels FFS ! [:ruisseau de larmes]


---------------
D3
n°2196081
pop-pan
yay!
Posté le 01-07-2013 à 11:07:44  profilanswer
 

du c ? de l'asm ? acceleration materielle?
oui il y a plein de trucs performants mais ca depend de jusqu'ou tu es pret a aller et ou est le goulot.
 
si c'est le traitement complet tu peux tenter imagemagick deja coté serveur ou opencv via python c'est simple et tu te pose pas de questions.
 
si c'est la manipulation tu peux aussi la faire en opengl/cuda/opencl si il y a un gpu coté serveur.
 
si c'est la projection d'une image vers un array qui prends le plus de temps a toi de voir si le format cible est le bon :) parfois ca tient juste au typage des pixel et/ou a la facon dont c'est traité (par tiles/stream ? en fin de load complet ? copie ou référence?)  


---------------
Plop !
n°2196084
mechkurt
Posté le 01-07-2013 à 11:45:34  profilanswer
 

Je ne sais pas, à mon avis un  goulot c'est déjà de convertir les 10 images en tableau de pixels pour pouvoir les lires (sur mon chrome avec les images dans le cache ça prend dans les 3 secondes)...
En JS coté client, on ne le fait qu'une seul fois et après on tappe dedans (je prends environ 100 Mo de RAM en plus dans chrome, ce qui me semble plutôt bas par rapport à mes autres essais de stockage / récupération) à chaque modification de paramètre...
 
Si au lieu de stocker des images, on stockait directement des tableaux de pixels (que de toute façon on devra lire), ça me semble en théorie un bon début, l'espace que ça prend n'est pas vraiment un facteur pertinent, par contre il faut que la vitesse de récupération le justifie...
 
Par exemple, en python mouliner une première fois avec t_data = Image.open("fichier_1.png" ).load(); et le stocker avec pickle pour pouvoir le charger plus rapidement, est-ce plus intéressant que de charger systématiquement depuis l'image...
http://stackoverflow.com/questions [...] lly#138260
http://stackoverflow.com/questions [...] le#3685295
 
Si je traites coté serveur et que pour chaque requête j'ai ces 3 secondes de conversion / récupération alors que coté client c'est instant, c'est super mal barré !
 


---------------
D3
n°2196087
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 01-07-2013 à 11:54:38  profilanswer
 

Nan mais ce que je pige pas c'est que tu veuilles absolument stocker et manipuler des tableaux de pixels (donc du bitmap, quoi). C'est obligatoire ? Parce que si oui et que t'as des images relativement grandes, c'est normal d'avoir des trucs monstrueux en base (temps de récup de la mort, etc...) et que tes perfs se fassent défoncer.
Tu peux pas manipuler tes images directement avec ce que proposent les libs de base ? Si c'est un algo complet, tu peux pas étendre les-dites libs de base ?
 
Et comme le suggérait pop-pan plus haut, niveau calcul, c'est ton GPU qui va savoir faire ça super bien et super vite : vois du côté d'un langage qui saura discuter avec le GPU et s'il est possible d'avoir un GPU correct sur le serveur.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°2196091
mechkurt
Posté le 01-07-2013 à 12:07:04  profilanswer
 

Honnêtement, les couches d’images et les algos ne sont pas de moi, et j'y comprends pas grand chose, je me suis contenté d’appliquer son modèle théorique en javascript...
 
...en gros et a vue de nez je dirais que son algo fonctionne un peu comme des calques photoshop :
 - 1 couches peut venir en produit sur une autre
 - 1 peu être utiliser en fonction de la valeur de ses pixels comme un masque de sélection pour agir ou non sur une (ou plusieurs) autre(s) couche(s)
 - etc.
 
A mon niveau tout ce que je vois c'est des calculs sur des pixels, j'ignore complétement à quoi on peut rattacher ça au niveau d'une lib, mais ça me semble tendu...
 
C'est pas possible dans un langage (pas en php en tout cas) de mobiliser 1 giga de RAM pour stocker ses %£¤§@&?! de tableau et les avoirs sous la main ?


Message édité par mechkurt le 01-07-2013 à 12:07:32

---------------
D3
n°2196106
pop-pan
yay!
Posté le 01-07-2013 à 13:15:22  profilanswer
 

tu as deux problemes et c'est a toi de prendre une decision.
 
client side js : chaque load hors cache rajoute du delai / manipulations simplifiées une fois que c'est chargé (sous reserve de conf correcte coté end-user)/ load leger server side / sources img et code visibles
 
server side whatever: charge cpu/gpu centralisée / envoi reguliers de fichiers donc delai / sources cachées
 
ca depends de l'usage, si il n'y a que quelques personnes et que l'environnement est controlé tu t'en fous un peu de fournir le source, sinon tu peux partir sur un truc fermé genre AIR voire flash ou une applet (huhuuh) et/ou rajouter une clef lors de l'echange
de meme, la qualité de sortie acceptable influe directement sur l'approche.
 
sinon un mix-up : tu peux par exemple envoyer des preview mid/lo-res ou des layers alphas pour manipulation client side et effectuer le rendu final/intermediaire server side (genre selection et deplacement client side, rendu server side et update)
ou alors utiliser un systeme tile-based pour chunker des le depart tes sources images et faire tes rendus en tiles, mais bon avec du XGA c'est un peu overkill.


---------------
Plop !
n°2196116
Shinuza
This is unexecpected
Posté le 01-07-2013 à 13:59:28  profilanswer
 

pop-pan a écrit :

tu as deux problemes et c'est a toi de prendre une decision.
 
client side js : chaque load hors cache rajoute du delai / manipulations simplifiées une fois que c'est chargé (sous reserve de conf correcte coté end-user)/ load leger server side / sources img et code visibles
 
server side whatever: charge cpu/gpu centralisée / envoi reguliers de fichiers donc delai / sources cachées
 
ca depends de l'usage, si il n'y a que quelques personnes et que l'environnement est controlé tu t'en fous un peu de fournir le source, sinon tu peux partir sur un truc fermé genre AIR voire flash ou une applet (huhuuh) et/ou rajouter une clef lors de l'echange
de meme, la qualité de sortie acceptable influe directement sur l'approche.
 
sinon un mix-up : tu peux par exemple envoyer des preview mid/lo-res ou des layers alphas pour manipulation client side et effectuer le rendu final/intermediaire server side (genre selection et deplacement client side, rendu server side et update)
ou alors utiliser un systeme tile-based pour chunker des le depart tes sources images et faire tes rendus en tiles, mais bon avec du XGA c'est un peu overkill.

:whistle:


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°2196122
mechkurt
Posté le 01-07-2013 à 14:18:54  profilanswer
 

Pour le AIR / Flash, non merci, on préfère encore se faire piquer le process que de se couper des smartphones / tablettes...
 
Ce qui est fou c'est qu'on se disait qu'avec des temps de rendu de 0.1 seconde sur PC et autour de la seconde sur IPAD 1, on ferait nettement mieux coté serveur...
 
...sauf que le calcul sur les pixels, ce n'est finalement pas le plus compliqué (dans le sens long et couteux en ressource) par rapport à la conversion des images en donnée utilisable.


---------------
D3
n°2196149
pop-pan
yay!
Posté le 01-07-2013 à 16:25:53  profilanswer
 

si tu expliques pas c'est quoi tes cibles faut pas t'etonner non plus que je te propose des trucs moisis hein :p
 
d'ailleurs est ce que tu es sur que c'est le convert d'image=>array qui rame? t'as profilé? parce que comme dit plus haut si la taille des fichiers tu t'en fous tu fais un array de pixels type ppm. un header pourri, la data et c'est marre, rien de plus simple a loader.
 
[edit]
d'ailleurs t'aurais meme pas a convertir pendant les opérations, puisque le fichier EST une representation d'un array de pixels que tu peux meme stocker en ASCII


Message édité par pop-pan le 01-07-2013 à 16:29:39

---------------
Plop !
n°2196152
mechkurt
Posté le 01-07-2013 à 16:54:37  profilanswer
 

Moi chui sur d'une chose c'est que je suis sur de rien ! ^^
 
Après mes tests disent :
 - Dans la version js, chrome utilise 50 Mo de RAM sur la page de google et 150 sur ma page
 - Le premier affichage d'image prend 3 s (cache activé) et ensuite les rendus sont instantané
 - Quand j'ouvre une seule image en php et que je lit ses pixels pour les mettre dans un tableau, ça prend plus d'1 secondes
 - Si j’écris un fichier php de ce genre

Code :
  1. <?
  2. $r[1][0]=255;
  3. $r[2][0]=255;
  4. [...]
  5. ?>


pour pouvoir faire un require du fichier, le fichier fait 20 Mo
 - si je sérialise et que je met en base de donnée Mysql vas faire un tour (mysql has gone away)
 - si je met chaque pixel dans une base de donnée, ça à l'air encore plus tordu (1seul image => 60 Mo et + de 2 million de ligne)
 
Je regardes le PPM mais je le sens pas, la représentation des images semble être sur une palette de 65 000 couleurs, donc pas d'alpha or nous on part de png avec des transparences...
 
Je connais pas les technologie serveur mais avec NodeJs, chaque appel instanciera un serveur (et donc rechargera les images comme en php) ou pas ?


---------------
D3
n°2196156
gatsu35
Blablaté par Harko
Posté le 01-07-2013 à 17:13:32  profilanswer
 

nan mais qu'est ce que tu veux aller foutre une image dans mysql ? c'est un non-sense. Ca se créé  une image et ça se stocke sur un CDN ou un endroit dédié pour ça

Message cité 1 fois
Message édité par gatsu35 le 01-07-2013 à 17:13:54

---------------
Blablaté par Harko
n°2196157
pop-pan
yay!
Posté le 01-07-2013 à 17:17:00  profilanswer
 

2 msg plus haut je disais que ca pouvait etre lié au typage.
 
et c'est normal que php alloue plein de ram, pour mysql aussi d'ailleurs
 
en php si tu affecte 0 ou 255 dans un [] tu as un overhead de 48bytes par byte que tu souhaites exploiter  (ca peut meme etre plus si tu l'a compilé en 64bits car la l'overhead... double)
 
c'est parce qu'en plus de stocker la value (en int et pas en byte), il stocke le hash, le type, la ref...
 
c'est pour ca que je te disais que tu pouvais exploiter directement un fichier en ascii (les chars ascii sont sur 8bits, 4 a la suite ca fait ton rgba 32bits) ou tu peux aussi les exploiter avec un int32 mais il faut alors travailler en bitwise avec des shift (<< et autres)


---------------
Plop !
n°2196160
ratibus
Posté le 01-07-2013 à 17:40:59  profilanswer
 

pop-pan a écrit :

2 msg plus haut je disais que ca pouvait etre lié au typage.
 
et c'est normal que php alloue plein de ram, pour mysql aussi d'ailleurs
 
en php si tu affecte 0 ou 255 dans un [] tu as un overhead de 48bytes par byte que tu souhaites exploiter  (ca peut meme etre plus si tu l'a compilé en 64bits car la l'overhead... double)
 
c'est parce qu'en plus de stocker la value (en int et pas en byte), il stocke le hash, le type, la ref...
 
c'est pour ca que je te disais que tu pouvais exploiter directement un fichier en ascii (les chars ascii sont sur 8bits, 4 a la suite ca fait ton rgba 32bits) ou tu peux aussi les exploiter avec un int32 mais il faut alors travailler en bitwise avec des shift (<< et autres)


http://www.php.net/manual/en/class.splfixedarray.php ça peut aider pour la RAM :)
 
http://fr.slideshare.net/patrick.a [...] ucture-102

n°2196163
mechkurt
Posté le 01-07-2013 à 18:07:45  profilanswer
 

gatsu35 a écrit :

nan mais qu'est ce que tu veux aller foutre une image dans mysql ? c'est un non-sense. Ca se créé  une image et ça se stocke sur un CDN ou un endroit dédié pour ça


 C'est pas l'image que je veux mettre dans la abse de donnée mais les valeurs de chaque pixel (c'était dans l'idée de traduire mon algo en SQL) [:angefox]  

pop-pan a écrit :

2 msg plus haut je disais que ca pouvait etre lié au typage.
 
et c'est normal que php alloue plein de ram, pour mysql aussi d'ailleurs
 
en php si tu affecte 0 ou 255 dans un [] tu as un overhead de 48bytes par byte que tu souhaites exploiter  (ca peut meme etre plus si tu l'a compilé en 64bits car la l'overhead... double)
 
c'est parce qu'en plus de stocker la value (en int et pas en byte), il stocke le hash, le type, la ref...
 
c'est pour ca que je te disais que tu pouvais exploiter directement un fichier en ascii (les chars ascii sont sur 8bits, 4 a la suite ca fait ton rgba 32bits) ou tu peux aussi les exploiter avec un int32 mais il faut alors travailler en bitwise avec des shift (<< et autres)


Oula, javais pas compris ça l''idée serait de déplacer un curseur virtuel et de lire les infos de mes 10 fichiers Ascii...
 
...mais on en revient au problème d'ouvrir et lire un fichier sur le disque dur VS avoir un truc déjà chargé dans la RAM ! :- /


Oui effectivement y'a beaucoup d'optimisation à faire du coté du type de donnée, d’ailleurs le t_data javascript est un tableau qui n'a qu'un niveau de profondeur et je boucles sur le pixels de cette façon :

Code :
  1. for (y = 0; y < height; y++) {
  2.   pos = y * width * 4;
  3.   for (x = 0; x < width; x++) {
  4.     red = imageData_1.data[pos];
  5.     green = imageData_1.data[pos+1];
  6.     blue = imageData_1.data[pos+2];
  7.     alpha= imageData_1.data[pos+3];
  8.   }
  9. }


Message édité par mechkurt le 01-07-2013 à 18:15:54

---------------
D3
n°2196166
pop-pan
yay!
Posté le 01-07-2013 à 18:28:07  profilanswer
 

rien ne t'empeche de charger une string ASCII dans la ram hein :)
bon apres t'es en mode tokenizer mais ca peut etre a creuser.
 
mais franchement utilise juste le php comme un broker pour faire des calls a un programme en C ou en asm ca sert a rien de te casser la tete.


Message édité par pop-pan le 01-07-2013 à 18:30:07

---------------
Plop !
n°2196167
Shinuza
This is unexecpected
Posté le 01-07-2013 à 18:34:03  profilanswer
 

mechkurt a écrit :

Moi chui sur d'une chose c'est que je suis sur de rien ! ^^
 
Après mes tests disent :
 - Dans la version js, chrome utilise 50 Mo de RAM sur la page de google et 150 sur ma page
 - Le premier affichage d'image prend 3 s (cache activé) et ensuite les rendus sont instantané
 - Quand j'ouvre une seule image en php et que je lit ses pixels pour les mettre dans un tableau, ça prend plus d'1 secondes
 - Si j’écris un fichier php de ce genre

Code :
  1. <?
  2. $r[1][0]=255;
  3. $r[2][0]=255;
  4. [...]
  5. ?>


pour pouvoir faire un require du fichier, le fichier fait 20 Mo
 - si je sérialise et que je met en base de donnée Mysql vas faire un tour (mysql has gone away)
 - si je met chaque pixel dans une base de donnée, ça à l'air encore plus tordu (1seul image => 60 Mo et + de 2 million de ligne)
 
Je regardes le PPM mais je le sens pas, la représentation des images semble être sur une palette de 65 000 couleurs, donc pas d'alpha or nous on part de png avec des transparences...
 
Je connais pas les technologie serveur mais avec NodeJs, chaque appel instanciera un serveur (et donc rechargera les images comme en php) ou pas ?

Déjà, si tu stockes ton truc avec des valeurs en hexa tu vas beaucoup gagner. Notamment pour les valeurs dont on peut omettre la seconde partie de la paire.  
 
#fff vs 255, 255, 255
 
[:spamafote]


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°2196172
ratibus
Posté le 01-07-2013 à 18:50:42  profilanswer
 

Shinuza a écrit :

Déjà, si tu stockes ton truc avec des valeurs en hexa tu vas beaucoup gagner. Notamment pour les valeurs dont on peut omettre la seconde partie de la paire.  
 
#fff vs 255, 255, 255
 
[:spamafote]


Ca n'a rien à voir avec hexa ou pas hexa (qui sont uniquement des représentation de nombre entiers) :o
Faut par contre profiter de la taille du type de données utilisé. Mettre des valeurs limitées à 256 (soit 8 bits) dans un entier qui doit être sur 32 ou 64 bits oui ça c'est pas optimal :)

n°2196174
0x90
Posté le 01-07-2013 à 18:57:56  profilanswer
 

Le problème c'est pas tant la vitesse du language dans votre truc, c'est plutôt le fait d'itérer sur les pixels (que ce soit itérer pour convertir manuellement vers un tableau ou itérer pour appliquer l'algo).
 
Python+PIL+numpy et l'application de l'algo sous une forme matricielle et ça tracera, pas besoin de faire du C ou des trucs absurdes comme isoler les pixels dans un sgbd.
 
 


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  1261  1262  1263  ..  1454  1455  1456  1457  1458  1459

Aller à :
Ajouter une réponse
 

Sujets relatifs
blabla 3blabla 2
PUTAIN HARKO TU AS FERM2 BLABLA ![Beaucoup de blabla pour rien : post à effacer] Compiler .bat
variable1="blabla + variable2 +blala : c'est possible ??[PHP & regex] "blabla blabla file.ext?point=444 blabla" Recupérer 444
mail("celine@hotmail.com"," sujet","blabla"); pose une err ! Help[MySQL] WHERE 'blabla' compris dans le champ truc
[blabla@olympe] Le topic du modo, dieu de la fibre et du monde[PHP / BlaBla - limite]
Plus de sujets relatifs à : blabla@web


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)