2010-03-11 8 views
9

Un amico vuole iniziare un sito di incontri, vuole che io la aiuti. Non abbiamo ancora discusso su quale piattaforma sarà sviluppata, ma sto pensando che suggerirà a LAMP di risparmiare un soldo (che è già una ragione per scegliere già su ASP.NET). Se il sito di incontri funziona bene, potrebbe contenere una grande quantità di dati (non sono sicuro se questo sarebbe un altro motivo per considerare ASP.NET o LAMP).Quando scegliere LAMP su ASP.NET?

In ogni caso, lo chiedo da un punto di vista degli sviluppatori ASP.NET. Ho un'esperienza molto piccola, quasi nulla con LAMP, e non mi piace nemmeno molto, quindi se decide di andare con PHP odds non la aiuterò. Quindi quali sarebbero i punti positivi da mostrare al momento di decidere su quale piattaforma sviluppare?

Si prega di essere obiettivi, non voglio che questo sia polemico o altro, cerca di attenersi ai fatti, non alle opinioni da solo.

Grazie!

risposta

5

Cosa generalmente importa in che tipo di scelta è:

  • Quanto tempo richiede?
  • Quanti soldi mi costerà
    • che è spesso legata al tempo ^^


Se si dispone di un sacco di esperienza con .NET e nessuno con Linux/Apache/PHP/MySQL, scegliere LAMP significa che avrai bisogno di molto più tempo: un sacco di nuove cose da imparare.

Significa anche che il codice probabilmente non sarà buono come sarebbe con quello che sai.


Dopo, la domanda è: fare un paio di settimane "costa" più di poche licenze?

Solo te e lei può decidere, ci ;-)

+0

Quindi non ci sono differenze tecniche? Per quanto riguarda la velocità di elaborazione, la gestione/manutenzione dei dati, la memoria nel server, la gestione degli utenti, il ridimensionamento, ecc.? – Carlo

+5

Siccome il software non è esattamente lo stesso, naturalmente, otterrete alcune differenze, ma nessuno di questi dovrebbe avere importanza, direi: sia LAMP che .NET sono alcune piattaforme solide/performanti/scalabili/manutenibili, usato da molti grandi siti web ;;; a mio parere, ciò che conta di più è: * quale di questi si può sviluppare? Quale si può amministrare? Quale saresti in grado di fare? * –

+0

Ho sempre pensato che ci fossero notevoli differenze tecniche quando si trattava di gestire una grande quantità di dati, ma a quanto pare la forza lavoro (o il tempo, che equivale al denaro) e in una certa misura la preferenza, sono due argomenti che guidano davvero questa decisione. Ho buoni argomenti per lei ora. Grazie! – Carlo

5

Se LAMP ti fa nausea, puoi provare ASP.NET over Mono.

IMO l'unica buona ragione per allontanarsi da un ambiente di programmazione di cui si è già esperti è quella già citata: costo.

Si utilizzerà LAMP specificatamente per la realizzazione di elettrodomestici. Se non stai costruendo elettrodomestici, il costo del software per UN server è marginale e non vale la pena di passare a un ambiente di sviluppo completamente diverso, IMO.

+0

Prenderò seriamente in considerazione questo se si attiene a PHP. Ma prima voglio alcuni buoni argomenti per allontanarla da questo, ma solo se ASP.NET è davvero meglio per questo tipo di sito web. – Carlo

+0

L'argomentazione migliore è che, se rimane con ASP.NET, può ottenere il tuo aiuto. Questo vale più del costo di un singolo server ASP.NET. –

+0

Non riesco a pensare a motivi tecnici per cui LAMP è fuori. Ci sono molti siti web perfettamente funzionanti e funzionali costruiti con LAMP. –

0

LAMP è solo più economico fino a leggere la stampa fine. Non è migliore o peggiore tecnicamente, solo diverso.

I programmi WebsiteSpark/BizSpark ti offrono tutti i software Microsoft necessari per iniziare gratuitamente per tre anni. Se il prezzo è la sua preoccupazione principale, indicale quei programmi se è disposta a prendere in considerazione la piattaforma ASP.NET.

Hosting costerà un importo equo in entrambi i casi, perché per un sito web a servizio completo non si desidera condividere. Avrai bisogno di almeno un server dedicato per supportare un sito di appuntamenti. Il sistema operativo e il database saranno liberi in entrambi i casi se si utilizza uno dei programmi * Spark menzionati.

+1

È possibile avviare facilmente un ambiente di hosting condiviso. Dovrai solo tenere d'occhio le prestazioni/stabilità e magari passare a server dedicati se devi aumentare le proporzioni. – selfawaresoup

0

Come una piccola azienda di avvio è possibile ottenere un abbonamento MSDN di 3 anni gratuito (beh, devi pagare $ 100 alla fine dei 3 anni). Se pensi che .Net sarà più efficiente e questo sito farà soldi, prendi seriamente in considerazione lo BizSpark.

+0

-1 Non in argomento. – Maciej

+0

@Maciej: Sì, è in argomento. La domanda afferma in parte "Sto pensando che suggerirà a LAMP di risparmiare." La mia risposta dissipa l'errata assunzione della domanda secondo cui .Net è più costoso per una società di startup e potrebbe essere un fattore chiave nella decisione dell'OP. –

+0

@Maciej: Sono d'accordo con Eric J., questo potrebbe essere un buon argomento per lanciarle quando discutiamo della piattaforma. – Carlo

1

Penso che la prima domanda sia: qual è il linguaggio di programmazione e l'ambiente di destinazione con cui hai esperienza?

Immagina che il sito diventerà un successo - come scala allora? LAMP può scalare, e così anche WISC, ma in entrambi gli scenari hai bisogno di persone che conoscano realmente l'ambiente e che possano proteggerlo. Se non conosci Linux, MySQL e PHP, come hai intenzione di ridimensionarlo e assicurarlo?

Quindi, anche se LAMP può essere significativamente più economico (la licenza di SQL Server è la parte più pesante nello stack WISC), dopo il primo attacco o periodo di inattività degli hacker, i risparmi iniziali possono sembrare marginali rispetto al danno.

L'altra cosa è ovviamente la decisione tra PHP e ASP.net/C#. Se non conosci PHP, allora è una decisione di "Non avere l'applicazione affatto" e "Avere l'applicazione su uno stack costoso", a meno che il tuo partner non decida di assumere qualcun altro per svilupparlo.

Tecnicamente, entrambi hanno i loro pro e contro, ma ci sono enormi siti web costruiti su entrambi gli stack, quindi si riduce a "Quale piattaforma è possibile configurare e mantenere in modo affidabile e confortevole?"

+0

Ora che menzioni l'attacco degli hacker. È un dato di fatto che LAMP sia più incline a questi rispetto ad ASP.NET, o semplicemente più semplice da hackerare? – Carlo

+1

@Carlo: entrambi sono ugualmente vulnerabili se impostati da qualcuno senza alcun indizio e ugualmente sicuri se impostati da un esperto. Linux e Windows hanno entrambi buchi qua e là, così come Apache e IIS. Come detto, ci sono siti enormi su entrambi gli stack e mentre ci sono differenze, nel complesso i pro ei contro si equivalgono approssimativamente l'uno con l'altro. Di solito quando vedi notizie come "Sito web X hackerato", è spesso (generalizzazione!) Un attacco SQL Injection causato da uno sviluppatore inesperto che non sta usando query parametrizzate e non disinfetta l'input dell'utente, ovvero. costruendo "DOVE C'E 'qualcosa di simile%. $ _ OTTIENI [" Filtro "].'%;" interrogazioni. –

+0

I maggiori rischi per la sicurezza derivano da una programmazione scadente e non dallo stack sotto l'applicazione. Puoi aspettarti un buon livello di sicurezza da entrambi gli stack. Mi sentirò più sicuro con LAMP ma quello potrebbe essere soggettivo ... – selfawaresoup

1

Sono d'accordo con Pascal. Vai con ciò in cui ti senti a tuo agio nel completare il progetto e non dimenticare che IL TUO TEMPO PARI A DENARO. Devi mettere un valore $$ sul tuo tempo. La lampada può essere più economica di fronte ma se finisce con 1000 manodopera extra, all'improvviso è più costosa.

Anche prendere in considerazione il costo opportunità perso nel non essere in grado di portare qualcosa sul mercato b/c hai scelto una tecnologia che non avevi familiarità con.

Alla fine, se i piani sono per un'azienda che ha successo, il costo dell'utilizzo di ASP.NET dovrebbe essere trascurabile altrimenti metterei in dubbio la serietà dello sforzo.

1

Un argomento per lo stack Apache/MySQL/PHP è che è disponibile sulla maggior parte delle piattaforme principali (Windows/Linux/Mac/BSD/...) e la maggior parte dei webhoster lo fornisce. Troverai anche molti (come in "enormi quantità") di buoni tutorial, libri e altri contenuti educativi su PHP/MySQL.

A parte questo, tutti gli strumenti utilizzati nello stack LAMP sono gratuiti (come in "free speech" e anche in "free beer"). ASP.NET è ancora una tecnologia proprietaria di proprietà di Microsoft. Non sono un grande fan dell'open source, ma sapere che i tuoi strumenti rimarranno liberi di usare in qualsiasi modo tu voglia è abbastanza bello.

Ovviamente, se non si ha esperienza con PHP e molta esperienza. con ASP.NET è più facile rimanere con ASP.

1

Se siete a vostro agio con i prodotti Microsoft, non c'è nulla che vi impedisca di sviluppare codice in .NET e utilizzare un database gratuito (tuttavia potrebbe essere necessario trovare/sviluppare un adattatore di database personalizzato se non si utilizzano versioni gratuite di SQL Server o Oracolo). Se stai generando molto traffico, puoi sostituire il livello dati del tuo codice e investire in un database con prestazioni migliori.

Il tempo costa denaro e se è possibile sviluppare un prodotto migliore sia dall'utente che dal punto di vista della manutenzione/prestazioni, sarà utile a lungo termine.

Alcune società di hosting includono il sistema operativo e i contratti flessibili, quindi mi farei in forma dalla vostra prospettiva. Il mercato è molto competitivo per quel tipo di sito e non ha senso buttare un sacco di soldi fino a quando non ottieni alcune metriche utili per il tuo sito IMO.

1

La risposta breve è: non importa, a meno che il sito non faccia qualcosa di così straordinariamente diverso che una tecnologia è ovviamente più adatta. E non riesco a pensare a qualcosa di simile in cima alla mia testa.

Una grande bandiera rossa è: se il tuo amico è preoccupato per i $ 5/mese in più per l'hosting di asp.net invece di hosting LAMP, allora probabilmente non verrai pagato. Mai.

Caveat a parte, essere realistici: qual è l'obiettivo immediato? Per far funzionare qualcosa o per progettare qualcosa sulla scala di plentyoffish.com o facebook.com? [Facebook.com ha circa 44.000 server al momento]

Quindi, quali sono le probabilità che il sito di incontri del tuo amico esploda alle dimensioni in cui il ridimensionamento è un problema? Per la maggior parte dei siti, la risposta è "molto vicino allo zero", a causa dello sforzo di marketing richiesto per generare così tanto traffico.

Ora, qual è il flusso di entrate? C'è qualche aspettativa che vieni pagato per fare questo? Pensi che il sito sarà redditizio? Il progetto è interamente finanziato?

L'amicizia è ottima, ma non lasciare che ti impedisca di fare domande appropriate sulla relazione commerciale e sulla relazione con il cliente. Un modo sicuro per rovinare un'amicizia è di fare un po 'di lavoro gratis e/o senza pensare attraverso tutta la portata del progetto. Troppo spesso, pensi che sia un favore una tantum, mentre pensano che sia il tuo lavoro!

+0

Haha, naturalmente, verrò pagato, e se non lo farò smetterò di funzionare! Ma grazie per averlo indicato. Non posso dire di non essere stato in quella situazione prima di "lavorare come favore", non funziona quasi mai bene. Grazie per la risposta realistica. – Carlo

0

Poiché stai cercando un sito di appuntamenti, controlla Markus Frind di plentyoffish.com che gestisce il più grande sito di incontri sulla piattaforma .net con asp.net e sql.

+0

Grazie per il suggerimento. Controllerò quelli fuori. – Carlo