-
X-Received: by 10.49.121.200 with SMTP id lm8mr365831qeb.5.1367440333966; Wed, 01 May
2013 13:32:13 -0700 (PDT)
X-Received: by 10.49.121.200 with SMTP id lm8mr365831qeb.5.1367440333966; Wed, 01 May
2013 13:32:13 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!s14no1757353qam.0!n
ews-out.google.com!ef9ni40844qab.0!nntp.google.com!s14no1757349qam.0!postnews.g
oogle.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 1 May 2013 13:32:13 -0700 (PDT)
In-Reply-To: <klqg29$o16$1@news.mm.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.195.164.27;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 213.195.164.27
References: <c...@g...com>
<klqg29$o16$1@news.mm.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <0...@g...com>
Subject: Re: jsp vs php
From: "M.M." <m...@g...com>
Injection-Date: Wed, 01 May 2013 20:32:13 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:203041
[ ukryj nagłówki ]W dniu środa, 1 maja 2013 09:27:30 UTC+2 użytkownik u...@d...invalid napisał:
> <subiektywnie>
> Z góry zwracam uwagę na to, że nie mam zielonego pojęcia JSP... ale się
> wypowiem :)
Dziękuję, subiektywne opinie też bywają pomocne.
> A to dlatego, że koledzy w pracy używają i ciągle słyszę o
> zwisach, problemach, których źródeł nie da się dojść, koniecznościach
> restartow glassfishy i serwerów itp, problemach z klastrami i ogólnie
> rzecz biorąc wszystkim tym co nie jest związane bezpośrednio z kodem
> strony a infrastrukturą. Dlatego samodzielnie podchodząc do tworzenia
> aplikacji webowych zdecydowałem się na PHP :)
Jesteś drugą osobą która zwraca mi uwagę na problem z narzędziami, czyli
coś jest na rzeczy.
> Nie wiem na czym polega
> spadek wydajności przy dużych serwisach, przecież nadal będzie się
> składał z niewielkich części, małych plików PHP.
Mnie martwi nie tyle spadek wydajności w dużych serwisach, co w popularnych.
Załóżmy że mamy 4 godziny szczytowego obciążenia na dobę. Załóżmy że
każdy użytkownik wyśle 50 zapytań w swojej sesji (nie licząc zapytań o
obrazki, pliki html, csv, które podaje się bez żmudnych obliczeń i w
dodatku można buforować po stronie przeglądarki i serwera). Przy 100
użytkownikach w założonym okresie, mamy 3600s * 4 / 50 / 100 = 2.88s na
jedno wygenerowanie strony. Gdy weźmiemy zwykły dysk (nie SSD) to mamy
na wygenerowanie jednej strony limit około 150-200 nastawień głowicy.
Wynika z tego że 3000 userów wymaga 30 jednostek równolegle przetwarzających
jeśli uzyska się liniową skalowalność. W praktyce trudno uzyskać liniową
skalowalność, więc może będzie trzeba 100 równoległych jednostek. Poza tym
zapytania użytkowników nie rozłożą się równolegle w tych 4 godzinach, więc
może 200, może 300.
> A frameworki... no cóż
> one są nie po to, aby Ci się szybciej pisało, tylko aby szybciej się
> pisało GRUPIE i aby GRUPA wiedziała, gdzie czego szukać.
Racja, ale to w dalszej kolejności przekłada się na to, żeby mi się
szybciej pisało. Np. jakaś grupa osób napisze plugin zgodny z danym
frameworkiem, a ja go sobie mogę zainstalować, zamiast klepać od zera.
> Imo, bardziej
> mają znaczenie w usystematyzowaniu i wprowadzeniu reguł wytwarzania
> oprogramowania niźli szybszemu pisaniu.
Tak, ale to też w dalszej kolejności przekłada się na krótszy czas
przygotowania aplikacji, mniej bałaganu, mniej szukania, mniej nieporozumień...
> Ja w PHP robię tylko dla siebie
> więc frameworków nie używam, zresztą... jak widzę te najpopularniejsze
> (np. cakePHP) to się za głowę łapię,
Do prostych aplikacji ta najnowsza wersja Cake była dobra. Jednak często
traciłem masę czasu na szukanie czegoś co rzekomo jest gotowe, a potem
okazywało się, że działa źle, albo konfiguracja jest magiczna, a dokumentacja
gdzieś na jakiś podejrzanych stronach... Do dużych aplikacji Cake się nie
nadaje, jest za mało modułowy, za mało obiektowy, dużo kodu upakowuje
się do jednego pliku (albo traci się korzyści jakie płyną ze zdefiniowana
kontrolerów), Cake ma dużo niepotrzebnych udziwnień wprowadzonych przez
autorów które PHP daje samo z siebie jako język obiektowy, nie ma
zaawansowanej obsługi baz danych, a dostęp do danych w rozbudowanych bazach
przy pomocy standardu Cake jest trudniejszy niż przy pomocy zwykłego SQLa.
Niemniej do małych aplikacji Cake jest naprawdę dobry i wystarczający, i
nawet jest RAD, nie nadaje się do dużych aplikacji.
> bo tworzenie logiki na stringach
> (np. link('Dupa', array('action' => 'maryni')) jest dla mnie
> nieakceptowalne i bym poświęcił kupę czasu na zrobienie
> staticów aby te stringi zastąpić deklaracyjnie :)
Sorry ale tutaj coś nieźle pomyliłeś, do logiki są kontrolery, a podałeś
przykład funkcji bibliotecznej.
> Zresztą, im więcej warstw kodu umieszczam, tym mam gorszy dostęp do
> warstw niższych a sporo robię też za pomocą jQuery i ajax.
Nie wiem jak używasz określenia "warstwa kodu", bo jeśli używasz
tego w standardowym znaczeniu, to warstwy tylko pomagają (no chyba
że w mikro-projektach).
Pozdrawiam
Następne wpisy z tego wątku
- 01.05.13 22:52 M.M.
- 02.05.13 05:11 u...@d...invalid
- 02.05.13 05:28 u...@d...invalid
- 02.05.13 08:55 Ghost
- 02.05.13 13:06 M.M.
- 02.05.13 13:21 M.M.
- 02.05.13 23:45 Lopez
- 03.05.13 03:56 M.M.
- 03.05.13 07:27 Ghost
- 05.05.13 06:32 u...@d...invalid
- 05.05.13 22:06 M.M.
- 06.05.13 00:06 Lopez
- 06.05.13 00:26 M.M.
- 06.05.13 00:39 firr kenobi
- 06.05.13 01:02 M.M.
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-03-03 a Ty jak się zachowasz w godzinie próby?
- 2025-03-03 nie naprawiam więcej telewizorów
- 2025-03-03 Białystok => Gen AI Engineer <=
- 2025-03-03 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-03-03 Olsztyn => Sales Specialist <=
- 2025-03-03 Gdy ministrowie sa golodupcami
- 2025-03-03 Pruszków => Specjalista ds. public relations <=
- 2025-03-03 Białystok => System Architect (Java background) <=
- 2025-03-03 Białystok => System Architect (background deweloperski w Java) <=
- 2025-03-03 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-03 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-03 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-03 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-03-03 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-03 Mińsk Mazowiecki => Area Sales Manager OZE <=