Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: websovellusten alkeista...

Sivun loppuun

novice [01.10.2009 15:52:56]

#

Olen tehnyt VB:llä ohjelman joka hakee tunnin välein tiedostoja muutamalta nettisivulta, analysoi tiedostot ja tallentaa tarpeellisen tietokantaan.
Omaa kotikonetta en kuitenkaan voi pitää päällä jatkuvasti, joten ohjelma pitäisi saada jollekkin palvelimelle.
Mikä olisi tähän tarkoitukseen sopiva palvelin? (mieluiten halpa, ellei ilmainen)

Olen myös opiskellut hieman ASP.Nettiä ja tarkoitus olisi tehdä nettisivut samalle palvelimelle, josta voisi käydä tarkastelemassa tietokannan tietoja erilaisten diagrammien muodossa.
Vai pitääkö tuo koko ohjelma näppäillä uusiksi ASP.Netillä?
Vai miten tässä pitäisi edetä?

novice [01.10.2009 20:08:18]

#

Tarkennan hieman kysymystä... Voinko siis pukata tekemäni ohjelman vuokraamalleni palvelimelle (olen miettinyt tätä vaihtoehtoa) ja käynnistää sen siellä?

Metabolix [01.10.2009 20:16:46]

#

Usein palvelimilla (ellei ole täysin omaan käyttöön varattu palvelin) ei voi ajaa jatkuvasti omia ohjelmia, vaan käytössä on jokin HTTP-palvelin (ISS, Apache), tietokantapalvelin (MSSQL, MySQL) ja joitain skriptikieliä (ASP.Net, PHP), ja sinne voi siis tehdä nettisivuja näillä välineillä. Omien ohjelmien salliminen on tietoturvan ja resurssien kannalta paljon mutkikkaampaa.

Luultavasti halvin tarkoitukseesi sopiva palvelinvaihtoehto on siis jonkinlainen virtuaalipalvelin, joka vastaa omaa palvelinkonetta. Kuten huomaat, hinta on melkoinen pelkkään web-hotelliin verrattuna.

novice [01.10.2009 20:33:49]

#

Ohjelmanhan ei tarvitisi olla jatkuvasti päällä, vaan esim. n.tunnin välein tapahtuva alle minuutin ajo riittäisi tietojen keruuseen. Onko em. palvelua tarjolla missään webhotellissa?

Triskal [01.10.2009 22:15:11]

#

Olen käsittänyt, että joku ymmärtäväinen webhotellin ylläpito voi tehdä tuon tyyppisiä automatisoituja ajoja, mutta henk koht en asiasta sen enempää tiedä. Kannattaa kysellä palveluntarjoajilta.

Tämmöinen käsitys jäi siitä, kun jossain pyöriteltiin sitä, miten ftp:llä luoduille kansioille tulee väärä omistaja ja miten se aiheuttaa konflikteja php:ssa jos (kun) safe mode on päällä. Tähän yhdeksi korjaukseksi esitettiin palvelimella pyörivää skriptiä, joka muuttaisi omistajat automaattisesti oikeiksi. Jos semmoinen on mahdollista (ja jonkun paikan ylläpito suostuisi semmoiseen), niin takuulla myös esittämäsi juttu.

novice [02.10.2009 11:33:51]

#

Joissain web-hotelleissa on tarjolla 'ajastetut tehtävät', kuten esim. täällä. voiko tuo ratkaista ongelmani?
Millä tämä ajastettu tehtävä pitää koodata? Onko jo valmiin VB:llä koodaamani ohjelman käyttöön palvelimella jotain estettä?

trilog [02.10.2009 11:45:00]

#

Crontabit ovat *NIXien juttu, joten siellä ei VB (ilman säätämistä) toimi. Ajastetun tehtävän voi koodata oikeastaan millä vaan, kunhan se vain palvelimella toimii (C, C++, sh jne.).

Metabolix [02.10.2009 11:46:51]

#

VB-ohjelman käytön esteenä voi olla Linux-palvelin; ainakin crontab viittaa Linuxiin, samoin ASP.Netin puuttuminen. Joutuisit siis koodaamaan päivityssysteemisi PHP:llä, Perlillä tai muulla palvelimen tukemalla kielellä skriptikielellä (tai miksei siitä voisi Linux-binaarinkin tehdä). Muilta osin tuo on juuri se, mitä tarvitsetkin. En tiedä, onko vastaavaa helposti saatavilla Windows-palvelimilla.

kayttaja-2791 [02.10.2009 17:41:46]

#

Jos valitset tuon Nebulan, voit ajastaa tehtävän myös muualtakäsin (siis jos teet sen uudestaan Asp.netillä ja jos Nebula ei ajastusta tarjoa) kutsumalla skriptiä netin ylitse. Jotain tuollaisia ajastuspalveluita joilla voi kutsua jotakin haluttua urlia haluttuina aikoina käsittääkseni on ilmaiseksikin (mutu).

novice [02.10.2009 18:14:28]

#

Elikkä nyt olisi hakusessa windows-palvelin ASP.Net tuella ja ajastus mahdollisuudella + jokin tietokanta, mieluiten MSSQL ja hinta max 20e/kk.

Jos joku tietää moisen niin olisin kiitollinen... kiitos muutenkin vastauksista!

JTS: Juu, löysin itsekin jotain 'KeepItAlive'- palveluita... menee vain tarpeettoman monimutkaiseksi.

Edit: Miksi muuten MSSQL on huomattavasti kalliimpi kuin MySQL?

Metabolix [03.10.2009 00:32:16]

#

MSSQL on Microsoftin maksullinen tekele, kun taas MySQL on vapaan lähdekoodin ohjelmisto. Syy on siis ihan sama kuin siinäkin, että Windows, joka on maksullinen käyttöjärjestelmä, on yleisesti paljon kalliimpi kuin Linux, joka ei maksa penniäkään ja jota voi vieläpä ilmaiseksi pyytää postilla kotiin.

walkout_ [03.10.2009 16:24:00]

#

Jos tarkoitus on tehdä ASP.Net/ASP-ohjelma niin paras tähän on Windows Server 2003/2008. Saat sellaisen suomesta halvalla Virtuaalipalvelimena.
http://www.sigmatic.fi/palvelut/virtuaalipalvelimet/
http://www.planeetta.net/palvelut/palvelimet/

Tai jos haluat halvan dedikoiduun niin täältä löytyy: http://www.leaseweb.com/article/dedicated-servers
Dedikoitu tarkoittaa oikeaa fyysistä laitetta ja tosikäytöön sellainen on must, koska siihen voidaan asentaa lisämuistia, isompia kovelevyjä ja perempi prossu kun tarve vaatii. Normi virtuaalipalvelimen saa jökkiin helposti vaikka yrittämällä tehdä API-docit Zend Frameworkistä PHP:lla komentorivillä ja J2EE-puolella sen vasta saakin jökkiin. J2EE-ohjelmat vie tuhottomasti muistia ja CPU-tehoa joten siihen käyttön jos käyttö on useempia Tomcat/JBoss-yms. asennuksia niin Dedikoitu-palvelin jossa on muistia 4 Gt ja 4 ytiminen prossu tai enemmän jos tarve vaatii.

Siis se ohjelma pitää olla aina päällä ja online mutta se ei tee mitään kuin vain on online kun sen osoitteeseen joku menee. Sen toimintoja voi ajastaa ajastelullatehtävällä mm. Windows Serverin -käyttöjärjestelmässä että jokin scripti käynnistetään tunnin välen. ASP.Netistä en niin tiedä mutta PHP:lla ainakin voidaan käynnistää vaikka 5 min välein php.exe-komento joka ajaa komentorivillä palvelimella olevan PHP-scriptin.

Linux maailmassa taas ajastettutehtävä mene UNIX/Linuxin Crontab-ohjelmalla, mihin listataan se milloin mikäkin palvelimen ohjelma käynnistyy ja millä aikavälillä aina uudestaan. Linux-puolella taas ASP/ASP.Netin saaminen toimimaan kunnolla on vaikeaa mutta onnistuu Monolla mutta Mono ei pysy Mikkisoftan alkuperäisen ASP/ASP:Netin kanssa kehityksessä mukana ja on vain jäljitelmä.

Se miksi Linux vai Windows Server riippuu ihan tarpeesta mutta kummassakaan ei ole mitään mikä olisi edottomasti ylivoimaista. Windowsin pahin disavantake mun mielestä on se että MySQL:n päivämäärämuoto tuki on aika heikko verrattuna Linuxiin. Myöskin Server 2003 mallissa sähköpostipalvelin puoli on heikkolla pohjalla verratuna Linuxiin ja Linuxissa homman saa ilmaiseksi. Windowsin etu on virtuaalinen työpöytä ilman erikseen asennusta kuten sen joutuu Linux-puolella toteuttaamaan X.orgilla ja Gnomella ja mm. FileZilla FTP-palvelin on todella helppo asentaa ilman kokemusta.

Itse olen ylläpitänyt vuosia seuraavia palvelimia:
Linux Ubutnu
Linux RedHat (CentOS)
Linux Debian
Windows Server 2003
Windows Server 2003 R2 (64-bit)

Samoin olen testaillut monia kokoonpanoja WM-ware pohjalla.

Kaikista on vaihteleva kokemus 1 pv 2 vuoteen.

Mikäs minun tietääkseni on RedHat? No se on RedHat nimisen riman trademark GPL-lisensoidulle Linux-paketille joka voi olla vaikka CentOS ja paketiin siis myydään ikään kuin support ja se että paketti on valmiiksi alustettu kunnolliseen palvelin käyttöön. Varsinaista distroa nimellä RedHat ei ole vaan se voi olla Fedora Core tai CentOS.

Mitä minulla on kokemusta Virtuaalipalvelimesta jossa levytilaa oli 1024 Mt niin koodasin kerran isuisen PHP-silmukan vahingossa joka paisutti PHP:n errorlogit muutamassa sekunnissa niin suureksi että palvelimen levytila loppui.

Minulla on kokemusta Planeetta Internetin, Edullinen Web-hotelli, Sigmaticin virtuaalipalvelimista ja dedikoiduista Sigmatikin palvelusta. Web-hotel puolella on kokemusta Nebulan, Sigmaticin, Elisan, Saunalahden, ja monien muiden palveluista ja jopa joidenkin ulkomaisten palveluista. Kokemukseni hankkiminen maksoi minulle maltaita lähinnä itse opiskelu periaatteella. Ehkä joskus tulevassa työelämässä sijoitukseni palkitaan.

walkout_ [03.10.2009 17:34:07]

#

novice kirjoitti:

Joissain web-hotelleissa on tarjolla 'ajastetut tehtävät', kuten esim. täällä. voiko tuo ratkaista ongelmani?
Millä tämä ajastettu tehtävä pitää koodata? Onko jo valmiin VB:llä koodaamani ohjelman käyttöön palvelimella jotain estettä?

Jos tarpeesi on vain ASP/ASP.net tuettu systeemi ja vain ajastetusti ajaa ks. scriptejä niin ehkä pääset näin halvemmalla kuin sijoittamalla Virtuaalipalvelimeen tai Dedikoituun Palvelimeen koska ne voi olla ylimitoitetuja tarpeeseesi ja liian kalliita jopa työssä käyvälle. VM-ware on taas halpa tapa leikkiä palvelimilla. VM-ware Server kun ei maksa mitään ja tarvitset vain Internet-yhteyden ja mm. lisenssin Windows Serverveiin.

novice [04.10.2009 10:11:01]

#

Taidan opiskella ton PHP:n niin tuleepi halvemmaksi ja helpommaksi.

walkout_ [05.10.2009 10:12:37]

#

Joo PHP-palvelin on Sigmaticilla vain 30 EUR / kk. Planeetan Komeetta on taas 40 EUR / kk ja siihen saa ASP/ASP.netin.

Linux-palvelimen ylläpitoon tarvitset PuTTY:n ja WinSCP:n,.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta