php5 vs. asp.net

Tags:    php

<< < 123 > >>
Vær hilset!
Jeg kender selv noget til begge sprog, men har undertiden en smule svært ved at vurdere, om php5 kan konkurrere med asp.net mht. hastighed, loading af sider osv.. Jeg har søgt en del på nettet, men har svært ved at finde noget fra en pålidelig kilde. Derfor henvender spørgsmålet, om hvorvidt php5 er hurtigere eller i det hele taget bedre end asp.net, sig til folk, som ved noget om det. Altså ville en objektiv, underbygget vurdering være dejlig : )



Indlæg senest redigeret d. 16.07.2006 15:28 af Bruger #10105
Og bare så der ikke er nogen forvirring ... jeg er ikke hverken "PHP folk" eller ".NET folk".

Når jeg har muligheden for at vælge, foretrækker jeg Java.
Bortset fra det laver jeg hvad kunden beder om, og sådan er det vel med de fleste.
Om det så er VisualBasic (6), Asp, RGP, Php, C# eller noget andet.

Med hensyn til databaser tror jeg at en Oracle database kan slå det meste i de fleste ting.
Det er bare ærgeligt for mange at det kræver en pengepung på størrelse med et mindre uland's national produkt, og at der er en gazillion parametre som der skal skrues på at en dygtig DBA'er, inden man får fuld gavn af investeringen. (Skulle være blevet bedre med 10g)

- Nå, men jeg vil bare sige at jeg ikke har noget på spil i diskutionen og derfor forsøger at være nøgtern i mine observationer.



Er skam enig med dig i det du siger omkring MySQL vs. MS SQL. En nybegynder udrustet med en MySQL-database er mere end rigeligt, og da også rigtig godt til at lave mindre hjemmesider. Problemet er hvis der kommer mange data og man foretager rigtig mange queries, så begynder det at hakke lidt. Er der 4-5 nyheder er det nok svært for Microsoft at overgå MySQL med flere sekunder, men der man oftest går op i hastighed er når man skal lave større løsninger med strengere krav for hastighed, og generelt for at behage sine brugere ved at undgå lange ventetider.

Til en almindelig hjemmeside er MySQL skam også godt, jeg bemærker bare at jeg ikke forstår at folk ikke går mere op i det, hvis der skal laves større løsninger. Jeg har stået med løsninger der virkede totalt godt under test hvor der kun var et par hundrede rækker, men da der kom mange data i MySQL-databasen begyndte det sku at tage længere og længere tid. Arbejder til hverdag med en Oracle-database (dog en ældre), og den sparker sku røv i forhold til MySQL. Man skal tænke på at MySQL kun er lavet til at være en mellemstor-database.

Hmm, well.. tror vi er lidt off-topic her. Skulle jeg starte forfra ville jeg kode ASP.NET, det vil man bestemt ikke fortryde når man leder efter job engang.

Som sidebemærkning vil jeg lige påpege at CGI (C++) jo er langt det hurtigste (og nok en del mere besværligt for mange nybegyndere).



Tak for jeres indlæg. Jeg har fået rigtig meget ud af at læse jeres argumenter. Også god point med databaserne som jo klart også bør tages med i overvejelserne.
Mht. CGI, som blev nævnt her til sidst. Jeg troede, det var et gammelt sprog ingen brugte mere. Er der nogen, der kan bekræfte dets brugbarhed?
Flere ting omkring starttopic er selvfølgeligt stadig meget velkomne!



Tak for jeres indlæg. Jeg har fået rigtig meget ud af at læse jeres argumenter. Også god point med databaserne som jo klart også bør tages med i overvejelserne.
Mht. CGI, som blev nævnt her til sidst. Jeg troede, det var et gammelt sprog ingen brugte mere. Er der nogen, der kan bekræfte dets brugbarhed?
Flere ting omkring starttopic er selvfølgeligt stadig meget velkomne!


Såvidt jeg ved (er ikke erfaren i CGI) er et CGI-script et program der kodes fx C eller C++. Dette genererer meget hurtigere og effektiv kode, da det er som et almindeligt program, og altså ikke køre på et runtime environment eller skal fortolkes som et script-sprog.

Det var meget brugt førhen, men nu er folk der har brug for sådanne løsninger (som fx store sites, teleselskaber osv) gået over til fx sprog som Java.

Jeg har læst mig til at en af bagsiderne ved CGI er at hvis man har mange brugere kræver det mange resurcer at starte programmet (CGI-scriptet) så mange gange. Og da der er kommet disse dejlige nemme sprog som PHP og ASP.NET behøves den "lille" programmør ikke kaste sig ud i noget som CGI. Men det er da sikkert sjovt at lege med :)

Lille introduktion her: http://hoohoo.ncsa.uiuc.edu/cgi/intro.html



CGI er sjovt at lege med. Jeg har kigget lidt på det mht. C++. Meget fedt, men ja. At starte og stoppe et script hver gang har ulempen at serveren bliver lidt langsom.
Jeg vil lige som en sidebemærkning sige at Java har hotspot som går ind og finder mønstre på koden som går igen og derefter optimere, mon ikke C# (.NET) har noget ligende? For tester man Java op mod andre sprog (og C#) så er der altså ikke ret meget forskel på tiderne. Men det er nu heller ikke her den største fare er. Faren, set i mine øjne, ligger i de algoritmer de bruger og som tilbydes til brugeren/programmøren. Også det at sproget skal være læsevenligt.
Men kom nu ind i kampen. Der er så mange facetter i denne sag at man kan diskutere det ind til verden går under.



Jeg har læst mig til at en af bagsiderne ved CGI er at hvis man har mange brugere kræver det mange resurcer at starte programmet (CGI-scriptet) så mange gange. Og da der er kommet disse dejlige nemme sprog som PHP og ASP.NET behøves den "lille" programmør ikke kaste sig ud i noget som CGI. Men det er da sikkert sjovt at lege med :)


Lege skal man da af og til. :)

Bortset fra hosting firmaerne, så tror jeg der kører en frygtelig masse PHP installationer som CGI ... for det var længe (vist ikke stadig) default måden at få tingene op på, hurtigt og nemt ... og også i diverse små apache-php-mysql distroer.
Så meget for skalerbarhed :D



Er skam enig med dig i det du siger omkring MySQL vs. MS SQL. En nybegynder udrustet med en MySQL-database er mere end rigeligt, og da også rigtig godt til at lave mindre hjemmesider. Problemet er hvis der kommer mange data og man foretager rigtig mange queries, så begynder det at hakke lidt. Er der 4-5 nyheder er det nok svært for Microsoft at overgå MySQL med flere sekunder, men der man oftest går op i hastighed er når man skal lave større løsninger med strengere krav for hastighed, og generelt for at behage sine brugere ved at undgå lange ventetider.

Til en almindelig hjemmeside er MySQL skam også godt, jeg bemærker bare at jeg ikke forstår at folk ikke går mere op i det, hvis der skal laves større løsninger. Jeg har stået med løsninger der virkede totalt godt under test hvor der kun var et par hundrede rækker, men da der kom mange data i MySQL-databasen begyndte det sku at tage længere og længere tid. Arbejder til hverdag med en Oracle-database (dog en ældre), og den sparker sku røv i forhold til MySQL. Man skal tænke på at MySQL kun er lavet til at være en mellemstor-database.

Hmm, well.. tror vi er lidt off-topic her. Skulle jeg starte forfra ville jeg kode ASP.NET, det vil man bestemt ikke fortryde når man leder efter job engang.

Som sidebemærkning vil jeg lige påpege at CGI (C++) jo er langt det hurtigste (og nok en del mere besværligt for mange nybegyndere).


Til alt det vil jeg nok sige ... jeg tror du skal lære lidt omkring DBA arbejde :D

Nu ved jeg ikke hvad du mener med store databaser, men f.eks. en adresse database over samtlige danske adresser (et par mill rækker i største tabel) kørte på MySQL ret overbevisende.
Det krævede godt nok nogle indexes ... men hey ... det gør selv Oracle.

Og hvis du tænker på MySQL performance hos folks typiske 9 kroners website udbydere .. så hust på at der skal trækkes tusinder af websitet på sikkert ikke for meget hardware ... så det håber jeg ikke er gundlaget for bedømmelsen.

:D




Til alt det vil jeg nok sige ... jeg tror du skal lære lidt omkring DBA arbejde :D

Nu ved jeg ikke hvad du mener med store databaser, men f.eks. en adresse database over samtlige danske adresser (et par mill rækker i største tabel) kørte på MySQL ret overbevisende.
Det krævede godt nok nogle indexes ... men hey ... det gør selv Oracle.

Og hvis du tænker på MySQL performance hos folks typiske 9 kroners website udbydere .. så hust på at der skal trækkes tusinder af websitet på sikkert ikke for meget hardware ... så det håber jeg ikke er gundlaget for bedømmelsen.

:D


Tjoe, det er nok meget rigtigt at det har haft en del at gøre. Nu ved jeg ikke hvad det var for nogle servere, men det var forholdsvis simple operationer fra enkelte tabeller der bare tog en krig (i forhold til hvad man skulle forvente), da der kom mange data.

Men vil heller ikke dømme MySQL, har selv lavet løsninger med MySQL mange gange og de virker fantastisk. Jeg siger bare at man nogle gange måske skulle tænke over om det er den bedste løsning, li'som vi her diskuttere om man skal sætte sig ned og lave sin hjemmeside i PHP eller ASP. De sider jeg laver fremover, vil da også være i MySQL medmindre det er noget ekstra krævende. For når det når op på store mængder data kan MySQL måske godt følge med, men her overtager databaser som Oracle og MS også med (hvad jeg har hørt) mindst en faktor 2 i hastighed.



I "gamle dage"(PHP3 tiden) blev PHP interpretet live. Idag bliver det kompileret til bytecode, og derefter kørt af en vm. Det samme er såvidt jeg ved tilfældet med ASP.net. Derfor er der idag ingen grund til at vælge nogle af disse på baggrund af deres hastighed, dels fordi de begge bliver kørt på samme måde, og dels fordi det er millisekunder vi snakker i forskel, så fremt der er en.

Hvis du vil producere kode der kan køres på alle former for servere, vælg PHP. Hvis du vil have noget kode som gør brug af .NET teknologien, vælg ASP.net. Og hvis du er ligeglad med nogle af disse, vælg det som du foretrækker at skrive din kode i. Husk i øvrigt at ASP.net ikke er et sprog, det er bare et "lag" mellem en klient og et andet sprog. Det var ihvertfald tilfældet med ASP, hvor man f.eks. kunne skrive sine .asp-filer i JavaScript eller VBScript.



I "gamle dage"(PHP3 tiden) blev PHP interpretet live. Idag bliver det kompileret til bytecode, og derefter kørt af en vm. Det samme er såvidt jeg ved tilfældet med ASP.net. Derfor er der idag ingen grund til at vælge nogle af disse på baggrund af deres hastighed, dels fordi de begge bliver kørt på samme måde, og dels fordi det er millisekunder vi snakker i forskel, så fremt der er en.


Hvis du snakker bcompiler, så er det en option i forbindelse med PHP sigtet på GUI PHP udviklere.
At den skulle være slået til pr default og som en slags cache compilering på samme måde som asp.net (eller JSP for den sags skyld) er noget af en nyhed i mine ører.
Kan du dokumentere dette?
Gerne med et link.

Hvis du vil producere kode der kan køres på alle former for servere, vælg PHP. Hvis du vil have noget kode som gør brug af .NET teknologien, vælg ASP.net. Og hvis du er ligeglad med nogle af disse, vælg det som du foretrækker at skrive din kode i. Husk i øvrigt at ASP.net ikke er et sprog, det er bare et "lag" mellem en klient og et andet sprog. Det var ihvertfald tilfældet med ASP, hvor man f.eks. kunne skrive sine .asp-filer i JavaScript eller VBScript.

ASP.NET giver dig mulighed for at vælge mellem flere sprog, ja, på samme måde som ASP.

Jeg har ledt nettet efter det med den bytecode cache, og finder ikke andet end henvisninger til bcompileren, en udvidelse til PHP som producerer bytecode.
Mangler dog at søge specifikt på Zend sitet, men måske du kan spare mig besværet med det dokumentations link?



<< < 123 > >>
t