Co o kodowanie stron internetowych w języku C? Jak to działa? Czy ta platforma jest niezależna i działa na każdym serwerze?
Samodzielny kod na piśmie w C jest całkiem możliwy. (Sam PHP jest napisany w języku C, a istnieje niedorzeczna liczba programów i bibliotek międzyplatformowych napisanych w języku C, takich jak PostgreSQL i MySQL, Boost i Poco C++).
Samodzielna platforma do pisania aplikacje internetowe, z drugiej strony, zależy przede wszystkim od sposobu integracji z serwerem HTTP. Np. Jeśli napiszesz aplikację C, która integruje bezpośrednio z serwerem HTTP przez skompilowany moduł (dla Apache lub IIS), otrzymasz mniej przenośnego kodu - np. Napisanie modułu IIS w C lub Delphi (co widziałem wcześniej i który serwis eBay początkowo zrobił) oznacza, że jesteś nie tylko zablokowany pod Windows, ale również jesteś zablokowany na IIS na Windows. Podobna sytuacja ma miejsce podczas pisania modułów Apache w C.
Ale jeśli piszesz aplikację internetową w języku C, które integruje via wspólnego standardu z serwerem HTTP, to tak, można mieć całkiem przenośny kod (choć kodu musi być kompilowany na każdej platformie). Na przykład możesz użyć CGI do komunikacji z serwerem HTTP przy użyciu zmiennych środowiskowych lub możesz użyć powiązanych standardów, FastCGI i SCGI. Ponownie, widziałem to zrobić w praktycznych, komercyjnych aplikacjach (zarówno dla dobrego efektu, jak i złego efektu).
Debata na temat natywnych aplikacji internetowych (np. Napisanych w języku C, C++ i tym podobnych) a zinterpretowanych aplikacji internetowych (PHP, Perl itp.) Często koncentruje się na trzech obszarach.
- Wydajność kodu. O ile nie jest napisany przez nieumarłą małpę, która nie dostała pracy przy pisaniu fortune cookie, kod C zawsze będzie lepszy od PHP. Jednak wąskim gardłem w aplikacji może nie być szybkość i zużycie pamięci kodu, ale raczej procedury wejścia/wyjścia.
- Wydajność programisty. Jeśli nie użyjesz dobrego frameworku (a część twojego pytania dotyczyła zestawów funkcji innych języków), będziesz pisał dużo tablicy kotła, powtarzalny kod. Np. Dekodowanie zakodowanych w procentach adresów URL, analizowanie danych HTTP POST itp. Istnieją ramy, które istnieją w C i C++ (zobacz CppCMS).
- Przenośność, jak już wspomniano. Jeśli nie jesteś gotowy na pisanie aplikacji internetowej w C, trzymałbym się CGI lub SCGI.
Być może powinieneś wskazać, jakie problemy masz (jeśli w ogóle) z PHP – Rad
Zazwyczaj wąskie gardło czeka na bazę danych. Profiluj też swoją aplikację/stronę, aby zobaczyć, co ją trzyma. –
Powinieneś wskazać, jakie problemy masz z PHP. Zobacz, jakie techniki agnostyczne są używane w celu poprawy wydajności aplikacji internetowych - http://developer.yahoo.com/performance/ – igouy