Gå til innhold

[Løst] Hvilke programmeringsspråk/teknologier på min nettside?


Anbefalte innlegg

Skrevet

Hei

 

Jeg har et prosjekt på gang hvor jeg skal lage følgende nettside:

 

Vise oppdatert informasjon om tidssynkroniseringen til en rekke NTP servere. Jeg ønsker å vise dette via en nettside som oppdaterer seg hvert 10 sekund.

 

Jeg har pr. dags dato en fungerende løsning (http://imgur.com/7w4JgFT) som fungerer som følger:

  1. Python henter informasjon om NTP status og lagrer i en fil lokalt på maskinen.
  2. Et javaprogram kjører for å lese ut denne informasjonen og utføre noen kontrollrutiner.
  3. Javarutinene implementeres i en nettside som en java applet og er laget i Eclipse. Nettsiden må derfor kjøres på en tomcat server.

Denne løsningen er delvis utviklet av meg selv, men jeg lurer på om det er annen måte å løse dette på som ikke krever en tomcat server?

 

Hvis dere skulle laget en nettside som viser oppdatert informasjon fra en lokal fil som oppdaterer seg hvert 10 sekund, hvordan ville dere løst denne utfordringen?

Videoannonse
Annonse
Skrevet (endret)

En slik løsning er svært enkel å lage i Node.js

 

index.js:

var app = require('http').createServer(handler),
io = require('socket.io').listen(app),
fs = require('fs');

app.listen(8080);

function handler (req, res) {
  fs.readFile(__dirname + '/index.html',
    function (err, data) {
      if (err) {
        res.writeHead(500);
        return res.end('Error loading index.html');
      }

      res.writeHead(200);
      res.end(data);
    });
}

io.sockets.on('connection', function (socket) {
  fs.watchFile('/tmp/test', function(curr,prev) {
    socket.emit('test', { current_mtime: curr.mtime, prev_mtime: prev.mtime });
  });
});

index.html:

<!DOCTYPE html>
<html>
<head>
    <title>Test</title>
</head>
<body>

<script src="/socket.io/socket.io.js"></script>
<script>
    var socket = io.connect('http://127.0.0.1:8080');
    socket.on('test', function (data) {
        console.log(data);
    });
</script>
</body>
</html>

package.json:

{
  "name": "watch",
  "version": "0.0.1",
  "main": "index.js",
  "dependencies": {
    "socket.io": "*"
  }
}
Plasser alle filene i en katalog, og kjør:
npm install
node index.js
Endret av Karl Skapeland
Skrevet

Tja, siden du allerede har litt i Python, går det vel an å lage resten i Python også. Gir heller ikke helt mening for meg hvorfor et java applet (som kjører på klientsiden) trenger å hostes fra en Tomcat-server..

Skrevet

Enten NodeJS eller så ville jeg skrevet alt i Python. Mest avhengig av hva jeg hadde orket den dagen. NodeJS eksempelet viser jo enkelt og greit hvordan man kan gjøre det i node.

Skrevet

Takk for alle svar.

 

Tja, siden du allerede har litt i Python, går det vel an å lage resten i Python også. Gir heller ikke helt mening for meg hvorfor et java applet (som kjører på klientsiden) trenger å hostes fra en Tomcat-server..

 

Han som designet første utkast valgte å benytte Java. Jeg håpet det ville være en litt enklere måte å utføre dette prosjektet på, så det er derfor jeg spør.

 

Jeg skal ta en titt på NodeJS.
Python har jeg mest kjennskap til selv, men som jeg har skjønt det så er det vel ikke å foretrekke å begynne å redigere Html dokumenter med python? Hvordan tenker dere når dere sier at alt kan designes i python?

Skrevet

Hvis du har erfaring med Python syns jeg ikke det er så mye å lure på. Finnes masse web-rammeverk for Python, Django er vel det mest kjente, men det kan fort bli litt heavy for et såpass lite prosjekt.. men det finnes masse mindre greier også.

 

Python brukes masse på web!

Skrevet

Prøv Flask, om du er på utkikk etter et mikrorammeverk for web i Python! Aner ikke hvordan det er å presentere skikkelige websider i det riktignok, men verdt å sjekke ut.

Skrevet

Vil du at nettsiden skal oppdatere informasjonen selv eller snakker du om oppdatering på serverside?

Jeg ser for meg at oppdateringen skal skje på serversiden.

Informasjonen om NTP serverne blir samlet på samme maskin som hoster nettsiden. Andre klienter i nettverket skal kun se informasjonen.

 

Ellers takk for alle svar. Jeg kommer helt klart til å fokusere videre på python, og investere litt tid i Django som virker som et framtidsrettet og bra verktøy å lære seg.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...