Компилятор PHP в байт код Си

L2
На сайте с 24.09.2008
Offline
10
6641

Здравствуйте,

Есть несколько вопросов, для любопытных цели вопросов описал ниже.

1) PHP полностью написан на Си?

2) В момент выполнения код php транслируется в Си, а потом компилится в байт код Си?? Или сразу компилится в байт код??

3) Если верен первый результат, то логично что из PHP интерпретатора реально реализовать транслятор из php в Си, или нет??

4) Если нет, то в любом случае можно же создать официальный компилятор на в основе движка самого интерпретатора?

Цель моих вопросов в том, что хочу создать компилятор php -> Си -> байт код Си.

И реализовать на fastCGI, но при этом сохранить мелкоразмерные файлы подобия движков CMS, для возможного редактирование "на ходу", в данном случае "на ходу" это быстрое редактирование, компилирование и заливка мелких файлов.

Как мне сказали "тру-программеры" это повысит производительность не учитывая БД, -до коэффициента в 100 раз (СИшный байт-код).

Плюсы:

1) С помощью компилятора "php -> Си -> байт код Си" можно будет писать программы на php, но получать производительность байт кода языка Си без интерпретации(причем он будет в памяти висеть в случае с fastCGI).

2) Оставляя мелкоразмерные файлы можно так же будет мгновенно отлаживать небольшие файлы и быстро компилировать и заливать на сайт без остановки его работы (на подобие как сейчас с php, только нужно будет компилировать еще).

3) Компилятор поможет сообщать о некоторых ошибках сразу при компиляции, а не на сайте (а на модуле можно и уронить апачь)

4) Программистам поможет внедрять в код триал версии программы и предоставлять разработчикам его ограничивая по времени и скрывая исходный код, не боясь что его "кинут".

5) Получать высокую производительность на небольших хостингах. Тут не мне говорить как трудно бывает собрать на дедик обычным сайтам, а тут можно будет держать большой ресурс при маленьких хостинг-затратах.

6) Для, хостеров будет выгодней держать больше пользователей с той же нагрузкой. Сами представьте когда на мощном сервере можно уместить еще в 10-30 раз больше пользователей (следовательно и прибыль в 10-30 раз).

Единственный тормозящий ресурс тут будет база данных, но думаю можно будет реализовать кэш даже при динамичных изменениях (есть догадки).

Основная теория возможного выигрыша в том, что при быстром выполнение кода он будет меньше тратить процессорное время, а значит это процессорное время можно будет тратить даже на ту же БД или на сторонни задачи - что и есть выигрыш.

Жду вашего мнения, только скепсис и пессимизм просьба аргументировать.

Derek
На сайте с 23.09.2005
Offline
70
#1

у вас рвение к велосипедоизобретательству в теме, где не разбираетесь. у си нет никакого байткода, он в машинные коды компилируется. у пхп свой байткод - который исполняется zend engine. есть как кэшеры байт кода, которые позволяют опускать процесс компиляции (xcache, eaccelerator), так и инструменты по триалу и т.д.

(.)(.) или ( Y ) ? (http://www.realderek.ru/) : как заработать 20 миллионов долларов США за 2 года (http://www.realderek.ru/2010/04/20-millions-za-2-goda.html)
malls
На сайте с 08.08.2005
Offline
255
#2

Бу-га-га... Нормальные люди PHP любят за то что он прозрачен и редактируем, а тут чудак решил его компильнуть.

Вы не задумывались о том, что для проектов которым нужна компиляция проще сразу Си использовать?

kxk
На сайте с 30.01.2005
Offline
970
kxk
#3

malls, Человек охотиться на ведьм :)

Ваш DEVOPS
L2
На сайте с 24.09.2008
Offline
10
#4

скепсис без аргументов и слезы идут лесом!

Derek
На сайте с 23.09.2005
Offline
70
#5

list2008, я вам тему спалю -

пхп написан на си, а си написан на асме, так что делайте транслятор сразу в байткод асма, "тру-программеры" говорят тогда коэффициент и вовсе тыща 😂😂😂

[Удален]
#6

Смысл компилить PHP в си? Смысл компилить пхп в байт-код си?

Прежде чем что-то делать, задумайтесь зачем это надо.

Байт-код компиляторы и так есть - тот же Zend, APC и прочие.

Исполнять программы на PHP через CGI - тоже можно.

Смысл ваших поползновений? Какую цель преследуете? Никакого значимого прироста производительности это не даст, по сравнению с уже имеющимися решениями, только внесет дополнительную сложность и требования к хостингу.

И, к вашему сведению, операции с БД до 95% всего времени выполнения пожирают. Все остальное - экономия на спичках, нужно просто писать код нормально, а не тяп-ляп.

L2
На сайте с 24.09.2008
Offline
10
#7

Отвечаю лиш потому что у тебя под авой "программер" написанно.

==Смысл компилить PHP в си? Смысл компилить пхп в байт-код си?

==Прежде чем что-то делать, задумайтесь зачем это надо.

Плюсы читайте выше.

==Байт-код компиляторы и так есть - тот же Zend, APC и прочие.

ссылочку пожалуйста

==Исполнять программы на PHP через CGI - тоже можно.

но какие затраты на интерпритацию

==Смысл ваших поползновений? Какую цель преследуете?

читаем первый пост ниже обзацца плюсы

==Никакого значимого прироста производительности это не даст, по сравнению с уже

Даладно? лучше каждый раз интерпритировать да?

==имеющимися решениями, только внесет дополнительную сложность и требования к хостингу.

что за бред, какая сложность?? это вы про cgi?? или fastcgi? - о да это редкость на хостингах

Бред...

==И, к вашему сведению, операции с БД до 95% всего времени выполнения пожирают.

откуда цифра, про базу я писал, читайтем мой пост внимательней.

Но не как не 95, максимум 60%

Derek
На сайте с 23.09.2005
Offline
70
#8

list2008, а вы сами программист? или сочувствующий?

[Удален]
#9
list2008:

Плюсы читайте выше.

там написана полная чушь взятая с потолка

Байт-код компиляторы и так есть - тот же Zend, APC и прочие.

В гугл, пожалуйтса =)


что за бред, какая сложность?? это вы про cgi?? или fastcgi? - о да это редкость на хостингах
Бред...

Кто будет исполнять ваш байт-код? Без примочек к веб-серверу это никак


откуда цифра, про базу я писал, читайтем мой пост внимательней.
Но не как не 95, максимум 60%

это значит лишь что вы хреново пишете либо не используете все возможности субд

[Удален]
#10

Ещё один жгун за сегодня?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий