Communicatie tussen JavaScript en PERL Script

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo,

Ik had een vraag. Ik ben bezig met een webapplicatie die een slider heeft (waardes tussen 1 t/m 255). Als deze geslide wordt gaat er momenteel een ajax request uit met de waarde naar een php script die het perl script execute met die waarde. Echter gezien je deze slider 100 stappen slide gaan er gelijk 100 ajax requests uit. Dit is erg traag. Nou vroeg ik mij af of iemand een snellere manier kent om sneller of rechtstreekser tegen die perl script aan te communiceren. Ken mij namelijk herinerren dat dit met bijv VB.net doormiddel van remoting aanzienlijk sneller gaat.

Alvast bedankt.

Acties:
  • 0 Henk 'm!

  • Manuel
  • Registratie: Maart 2008
  • Laatst online: 17:22
Ik denk dat het wat makkelijker is als je een timeout op zo'n AJAX request zet. Want voor elke poes pas gegevens ophalen lijkt mij ook niets. :)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dankjewel voor je reaktie. Ik zat daar ook aan te denken, alleen echter is dat perl script voor een computer gestuurde licht dimmer, dus wel zo gaaf als het snel werkt. Dus ik denk even vragen of er nog iets anders is wat sneller is. Ik dacht bijv aan CGI of Serverside javascript.

Acties:
  • 0 Henk 'm!

  • flashin
  • Registratie: Augustus 2002
  • Laatst online: 17-12-2023
Een andere slider die niet zoveel requests stuurt? Enkel een request op het moment dat je de muis loslaat (onmousout of onchange oid) lijkt mij het enige logische moment om te updaten. Anders zit je met bergen requests.

[ Voor 4% gewijzigd door flashin op 08-02-2010 14:27 ]


Acties:
  • 0 Henk 'm!

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 17:49

RM-rf

1 2 3 4 5 7 6 8 9

eigenlijk wil je een socket connection ... op die manier kan het script ook gegevens blijven uitwisselen zolang deze binnen zekere 'keep-alive' valt, zonder te moeten 're-connecten'

AJAX is stand 'asynchronous', wat betekent dat het continue opnieuw request moet sturen en wachten op de response..
wil je AJAX toestaan om een echte socket-connectie te ondersteunen, zou je een Flash-toepassing moeten integreren (of waarschijnlijk bij IEonly toewpassingen zal MS der vast wel een slorige activeX-object voor hebben dat een duizend veiligheidswarschuwingen geeft en nog steeds kwetsbaar zijn als je ze allemaal afwijst)


tevens zal je je script serverside moeten aanpasen, maar het is inderdaad ook prima mogelijk je Perlscript direkt al zulk een socket connectie op te laten zetten

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


Acties:
  • 0 Henk 'm!

Verwijderd

Je kunt proberen een socket verbinding te maken. In dit geval hoef je in het meest ideale geval maar 1 byte door te sturen per setting, ipv allemaal HTTP headers bij een Ajax request.
Naar mijn weten is het niet mogelijk om met Javascript alleen socket verbindingen op te bouwen, hiervoor zou je bijvoorbeeld Flash kunnen gebruiken

Edit: :( rm-rf

Acties:
  • 0 Henk 'm!

  • TJHeuvel
  • Registratie: Mei 2008
  • Niet online
Verwijderd schreef op maandag 08 februari 2010 @ 14:25:
Dankjewel voor je reaktie. Ik zat daar ook aan te denken, alleen echter is dat perl script voor een computer gestuurde licht dimmer, dus wel zo gaaf als het snel werkt. Dus ik denk even vragen of er nog iets anders is wat sneller is. Ik dacht bijv aan CGI of Serverside javascript.
Stel dat je om de 500MS een berichtje stuurt met hoe fel licht moet zijn, kan je natuurlijk in PERL dit easen ipv het hard setten naar de nieuwe waarde.

Freelance Unity3D developer


Acties:
  • 0 Henk 'm!

  • pieturp
  • Registratie: April 2004
  • Laatst online: 27-08 14:18

pieturp

gaffa!

Je kunt ook gebruik maken van comet. Dan houd je de verbinding open en maak je dus niet de hele tijd nieuwe requests. Eventueel zou je ook met Ajax kunnen long-pollen, maar dan moet je eigenlijk al naar Java, aangezien het met PHP lastig is om één script lang te runnen ...

Ben benieuwd trouwens naar je eindresultaat. Stuur je met perl rechtstreeks DMX uit, of bedien je een lichtcomputer? Of is 't slechts een enkele dimmer(-print)?

... en etcetera en zo

Pagina: 1