konto usunięte

Temat: pliki kompilowane

Witam

Przydał by mi się skompilowany kod strony z obsługą MySQL, nigdy czegoś takiego nie robiłem więc może macie jakieś propozycje w jakim języku to robić (musi myć wydajniejsze niż zwykły PHP) i w jaki sposób ( bezpośrednie odwołanie czy przez skrypt PHP)Dawid Zając edytował(a) ten post dnia 27.10.11 o godzinie 20:48

konto usunięte

Temat: pliki kompilowane

Dawid Zając:
Witam

Przydał by mi się skompilowany kod strony z obsługą MySQL, nigdy czegoś takiego nie robiłem więc może macie jakieś propozycje w jakim języku to robić (musi myć wydajniejsze niż zwykły PHP) i w jaki sposób ( bezpośrednie odwołanie czy przez skrypt PHP)

co to jest "skompilowany kod strony" ?

konto usunięte

Temat: pliki kompilowane

taki który wykonuje serwer :P

bardziej profesjonalnie skompilowany skrypt, oby dało się to odpalić bez użycia konsoli bo jej nie mam na serwerze wirtualnym

konto usunięte

Temat: pliki kompilowane

może język Brainfuck się nada ...
http://pl.wikipedia.org/wiki/Brainfuck

konto usunięte

Temat: pliki kompilowane

Dawid Zając:
taki który wykonuje serwer :P

bardziej profesjonalnie skompilowany skrypt, oby dało się to odpalić bez użycia konsoli bo jej nie mam na serwerze wirtualnym

"bardziej profesjonalnie" ? a jak to jest "mniej profesjonalnie" ? co ma konsola do stron WWW ? Wydaje mi się, że chyba sam nie wiesz o czym piszesz...

konto usunięte

Temat: pliki kompilowane

@ Piotr
mniej profesjonalnie napisałem wcześniej nie szukaj dziury w całym
jak byś nie wiedział to w serwerach dedykowanych masz dostęp do konsoli jednak jest to opcja jedynie dla wydzielonych osób a nie przypadkowych a ja potrzebuję odpalić skompilowany skrypt przez przeglądarkę lub pośrednio przez inny dużo krótszy skrypt

konto usunięte

Temat: pliki kompilowane

Ty na prawdę nie wiesz chyba o czym piszesz. Proszę, powiedz mi że Ty nie masz informatycznego wykształcenia bo stracę wiarę w system szkolnictwa.

Spróbuj nam to wyjaśnić jak byśmy nic nie wiedzieli kompletnie bo przeczytałem Twój post (jeden i drugi) chyba z 5 razy i nadal nie rozumiem...

konto usunięte

Temat: pliki kompilowane

mam wiele dużych plików PHP które generują spore obciążenie i chcę je w miarę możliwości zamienić w postać binarną aby oszczędzić moc procesora zużywaną na kompilację bo z tego co pamiętam kod PHP jest kompilowany dopiero podczas wywoływania
Jak wiadomo postać binarna jest nie tylko szybsza ale i krótsza w zapisie co dodatkowo zmniejsza obciążenie dysku

Język mogę zmienić na Perl, Ruby, Python lub C ewentualnie coś innego

I moje pytanie brzmi czy ktoś coś podobnego robił

Co do wykształcenia to rzeczywiście nie mam informatycznego studiuję elektrotechnikę a informatyki uczę się na własną rękę i mogę mieć w tym temacie jakieś brakiDawid Zając edytował(a) ten post dnia 27.10.11 o godzinie 23:47
Marek Kembrowski

Marek Kembrowski Konsultant GD,
Microsoft Polska Sp.
z o.o.

Temat: pliki kompilowane

Więc w takim razie może to:

http://www.phpcompiler.org/

w sumie nie znam wcale php (moja wiedza zatrzymała się dużo przed wersją 5) i początkowo myślałem, że nie ma narzędzi do uruchamiania skompilowanego kodu php (dostępne były tylko interpretery), a tu proszę, coś nowego.

konto usunięte

Temat: pliki kompilowane

Da się kompilować tylko wtedy jest problem jak uruchomić plik .exe przy pomocy przeglądarki (a może tylko ja nie znam sposobu)

a może ktoś zna inne sposoby?

Temat: pliki kompilowane

Dawid Zając:
mam wiele dużych plików PHP które generują spore obciążenie i chcę je w miarę możliwości zamienić w postać binarną aby oszczędzić moc procesora zużywaną na kompilację bo z tego co pamiętam kod PHP jest kompilowany dopiero podczas wywoływania
Jak wiadomo postać binarna jest nie tylko szybsza ale i krótsza w zapisie co dodatkowo zmniejsza obciążenie dysku

Źle pamiętasz. Nic nie jest kompilowane. Skrypty lub aplikacje pisane w języku PHP są parsowane przez interpreter i zwracają określony wynik.
Sam interpreter, to nic innego, jak program napisany w C.

Nie pracowałem jeszcze z aplikacjami i serwisami tak często odwiedzanymi, aby wymagały jakiejś szczególnej optymalizacji na wysokim poziomie, bo nawet serwis napisany w PHP, który ma ok. 10 000 unikalnych wejść na miesiąc tego nie potrzebuje, jak jest napisany z głową, bo nie jest to duże obciążenie.

Nie wiem, co to za pliki i jakie obciążenie generują, ale nawet jakbyś przepisał je na C albo assemblera, to jak będą napisane źle i niewydajnie, nic Ci to nie pomoże. Ponadto, moim zdaniem PHP ze względu na swoją specyfikę, niezbyt nadaje się do masowego przetwarzania dużej ilości danych np. w konsoli. Trochę tutaj zgaduję, bo nie napisałeś, co te pliki robią.

Generalnie, po Twoich wypowiedziach widać, że nie bardzo znasz się na tym, o czym piszesz.

Trochę polifozofowałem. Teraz napiszę bardziej konkretnie:
- Możesz przepisać swoje pliki na C++ albo Pythona
- Możesz spróbować skorzystać z Node.js
- Możesz wykorzystać HipHop for PHP (ale tak jak pisałem, jeśli kod w PHP jest napisany beznadziejnie, to nic to nie pomoże)
- Możesz wziąć pod uwagę jakieś rozwiązania sprzętowe lub serwerowe, ale w tych tematach mam zbyt małe doświadczenie, żeby Ci coś mądrego poradzić
Dawid Zając:
jest problem jak uruchomić plik .exe przy pomocy przeglądarki (a może tylko ja nie znam sposobu)

Poszukaj na php.net jest co najmniej kilka funkcji, które to umożliwiają.
W każdym razie, nie wydaje mi się, aby "uruchomienie pliku .exe z przeglądarki" znacznie zwiększyło wydajność Twojego rozwiązania.
Zresztą, nie podałeś żadnych szczegółów, więc nie wiadomo, o co chodzi. Takie rzeczy trzeba planować z głową. Samo uruchomienie pliku .exe z przeglądarki nie załatwi problemu.Piotr Wittchen edytował(a) ten post dnia 28.10.11 o godzinie 01:09
Marek Kembrowski

Marek Kembrowski Konsultant GD,
Microsoft Polska Sp.
z o.o.

Temat: pliki kompilowane

Strzelamy dalej (póki pranie się nie skończy). Może to jest to czego szukasz? Jakiś Button-Submit, który tworzy nowy proces? Chociaż sam nie wiem, czy naprawdę miałbyś zyskać na czymś takim. Tworzenie i usuwanie procesów jest kosztowne.

http://www.php.net/manual/pl/ref.exec.php

i jeszcze takie coś google podpowiada. Ale i tak wciąż strzelam, bo nie do końca wiem co chcesz osiągnąć.

http://symcbean.blogspot.com/2010/02/php-and-long-runn...

konto usunięte

Temat: pliki kompilowane

Trochę konkretów dostałem :)

@Piotr
Kompilator czy interpreter nie jest zbyt istotne bo problem ten sam gdy kod jest cały czas w postaci tekstu

Te pliki na ogół:
-pobierają kilkaset pól z bazy MySQL
-tworzą z nich tablice według pewnych wytycznych
-robią kilkanaście interacji pętli w której jest prawdziwy wysyp obliczeń matematycznych z wieloma if-ami
-wynik zapisują do bazy i częściowo wyświetlają na ekran

problem tkwi w tym że są godziny szczytu kiedy serwer nie daje rady i taki pomysł na odciążenie przyszedł mi do głowy i z pewnością będzie procentował nawet na potężnym serwerze dedykowanym

@Marek
Poczytam te linki jutro bo dziś ledwo na oczy patrze

konto usunięte

Temat: pliki kompilowane

Dawid Zając:
Trochę konkretów dostałem :)

@Piotr
Kompilator czy interpreter nie jest zbyt istotne bo problem ten sam gdy kod jest cały czas w postaci tekstu

Te pliki na ogół:
-pobierają kilkaset pól z bazy MySQL
-tworzą z nich tablice według pewnych wytycznych
-robią kilkanaście interacji pętli w której jest prawdziwy wysyp obliczeń matematycznych z wieloma if-ami
-wynik zapisują do bazy i częściowo wyświetlają na ekran

Twój problem to nie kompilacja tyko niewłaściwe użycie zasobów
Mogę się założyć że te same obliczenia wykonane blokow w SQL-u będą kilkaset razy szybsze niż dzierganie w PHP w pętli - no litści

więc nie w kompilacji tkwi metoda lecz w pomyśle

największą optymalizację uzyskujesz przez zmianą algorytmu, bzdetne metody z kompilacją PHP to można sobie darować

konto usunięte

Temat: pliki kompilowane

Dawid Zając:
problem tkwi w tym że są godziny szczytu kiedy serwer nie daje rady i taki pomysł na odciążenie przyszedł mi do głowy i z pewnością będzie procentował nawet na potężnym serwerze dedykowanym

@Marek
Poczytam te linki jutro bo dziś ledwo na oczy patrze


Tak jak pisze Przemek, popraw kod, dopiero jak tam nie będzie nic do poprawiania można się posilać udziwnieniami.

Zainstaluj sobie xdebug'a i sprofiluj kod - zobaczysz gdzie "zamula".
Krzysztof Eugeniusz Kotkowicz

Krzysztof Eugeniusz Kotkowicz Freelancer,
Administrator
systemów
teleinformatycznych

Temat: pliki kompilowane

Przemysław R.:
Dawid Zając:
Trochę konkretów dostałem :)

@Piotr
Kompilator czy interpreter nie jest zbyt istotne bo problem ten sam gdy kod jest cały czas w postaci tekstu

Te pliki na ogół:
-pobierają kilkaset pól z bazy MySQL
-tworzą z nich tablice według pewnych wytycznych
-robią kilkanaście interacji pętli w której jest prawdziwy wysyp obliczeń matematycznych z wieloma if-ami
-wynik zapisują do bazy i częściowo wyświetlają na ekran

największą optymalizację uzyskujesz przez zmianą algorytmu, bzdetne metody z kompilacją PHP to można sobie darować

Pozwolę się z Tobą nie zgodzić. I APC i XCache znacznie odciążają serwer. A w wypadku dobrze napisanego kodu, ta różnica jest jeszcze bardziej zauważalna. Nie wyobrażam sobie dość dużego serwisu, napisanego w PHP, który by działał bez żadnego Opcode Cache, przechowującego skompilowany raz kod i wykorzystującego go później.
Krzysztof Eugeniusz Kotkowicz

Krzysztof Eugeniusz Kotkowicz Freelancer,
Administrator
systemów
teleinformatycznych

Temat: pliki kompilowane

Piotr Wittchen:
Dawid Zając:
mam wiele dużych plików PHP które generują spore obciążenie i chcę je w miarę możliwości zamienić w postać binarną aby oszczędzić moc procesora zużywaną na kompilację bo z tego co pamiętam kod PHP jest kompilowany dopiero podczas wywoływania
Jak wiadomo postać binarna jest nie tylko szybsza ale i krótsza w zapisie co dodatkowo zmniejsza obciążenie dysku

Źle pamiętasz. Nic nie jest kompilowane. Skrypty lub aplikacje pisane w języku PHP są parsowane przez interpreter i zwracają określony wynik.
Sam interpreter, to nic innego, jak program napisany w C.

Są tymczasowo kompilowane do postaci bytecode'u.
Krzysztof Eugeniusz Kotkowicz

Krzysztof Eugeniusz Kotkowicz Freelancer,
Administrator
systemów
teleinformatycznych

Temat: pliki kompilowane

Dawid Zając:
Trochę konkretów dostałem :)

Zainstalowanie jakiegokolwiek Opcode Cache (Eaccelerator, APC, XCache) powinno pomóc. Poza tym optymalizacja kodu i zapewne bazy danych. Do chwili, gdy nie wiesz, gdzie leży problem, to jest to tylko gdybanie.

Odezwij się do mnie na priv, może będę w stanie pomóc.

konto usunięte

Temat: pliki kompilowane

Krzysztof Eugeniusz Kotkowicz:
Przemysław R.:
Dawid Zając:
Trochę konkretów dostałem :)

@Piotr
Kompilator czy interpreter nie jest zbyt istotne bo problem ten sam gdy kod jest cały czas w postaci tekstu

Te pliki na ogół:
-pobierają kilkaset pól z bazy MySQL
-tworzą z nich tablice według pewnych wytycznych
-robią kilkanaście interacji pętli w której jest prawdziwy wysyp obliczeń matematycznych z wieloma if-ami
-wynik zapisują do bazy i częściowo wyświetlają na ekran

największą optymalizację uzyskujesz przez zmianą algorytmu, bzdetne metody z kompilacją PHP to można sobie darować

Pozwolę się z Tobą nie zgodzić. I APC i XCache znacznie odciążają serwer. A w wypadku dobrze napisanego kodu, ta różnica jest jeszcze bardziej zauważalna. Nie wyobrażam sobie dość dużego serwisu, napisanego w PHP, który by działał bez żadnego Opcode Cache, przechowującego skompilowany raz kod i wykorzystującego go później.

zastanów się

obrabiasz w pętli 1000 rekordów

odczytujesz, liczysz i zapisujesz z powrotem w bazie - gdzie tu przyda ci się cache?

jedno sensowne zapytanie robi to za jednym zamachem

ścigasz się?
Krzysztof Eugeniusz Kotkowicz

Krzysztof Eugeniusz Kotkowicz Freelancer,
Administrator
systemów
teleinformatycznych

Temat: pliki kompilowane

Przemysław R.:
zastanów się
obrabiasz w pętli 1000 rekordów
odczytujesz, liczysz i zapisujesz z powrotem w bazie - gdzie tu przyda ci się cache?
jedno sensowne zapytanie robi to za jednym zamachem
ścigasz się?

W tym wypadku masz rację, nie doczytałem poprzedniego posta, po czym nadinterpretowałem Twoją wypowiedź, jako "kompilacja PHP to bzdura". Sorry. :-)

Następna dyskusja:

JAk skopiowac PLIKI z jedne...




Wyślij zaproszenie do