[room] Вопрос по PHP (или I Hate PHP)
Денис Смирнов
=?iso-8859-1?q?mithraen_=CE=C1_altlinux=2Eru?=
Пн Фев 26 01:16:15 MSK 2007
On Mon, Feb 26, 2007 at 12:55:05AM +0300, Eugene Prokopiev wrote:
EP> Я не про BlockingChannelConnector вообще-то, а например, про
EP> SelectChannelConnector ;)
А, я его по той ссылочке не нашел.
EP> Можно прочесть еще вот это -
EP> http://www.webtide.com/downloads/whitePaperAjaxJetty.html
EP> NIO позволяет обслужить меньшим количеством потоков больше запросов.
Угу, теперь понял.
EP> Т.е. пытается обыграть Erlang на его поле ;) . Да, подход Erlang с
EP> практически неограниченным количеством легких потоков изящнее, но NIO,
EP> похоже, в большинстве случаев работает не хуже.
У Erlang преимущество другое -- распределнность возведенная в абсолют. А
по производительности пытаться обогнать nginx дело неблагодарное, лучше
его использовать как фронтенд. Ну или быть полным психом, и встраивать его
код в свой :)
Мне больше нравится первое.
>>EP>>> Сейчас для одного совсем маленького web-проекта я использую DWR, там
>>EP>>> работа ведется не в терминах http-запросов, а скорее в терминах RPC. GUI
>>EP>>> на HTML (еще лучше здесь будет смотреться XUL), клиентская логика на
>>EP>>> JavaScript, серверная - Java (точнее контекст Spring со встроенными в
>>EP>>> него бинами Jetty, DWR, самого Spring и моими). Собственно DWR нужен,
>>EP>>> чтобы из JavaScript дергать Java-код (бины, размещенные в контексте
>>EP>>> Spring) и наоборот. Не факт, что тебе это подойдет, но посмотри.
>>>>%-)
> EP>> Не годится? ;)
>> Много слоев.
EP> 2 - это немного (если не считать переходники JS<->Java, JSON<->JavaBeans
EP> и JavaBeans<->БД, но они взяты готовыми). Я с трудом представляю себе
EP> задачу, в которой не требовалось бы разделять UI и основную логику
EP> работы (разве что последняя отсутствует - например, простая форма для
EP> ввода данных в БД)
Логично.
>> Сходу не въехать, а при том я бы хотел оставить портируемость
>> большей части своего кода между языками. Да, я знаю что я псих.
EP> Т.е. свой DSL и его интерпретатор/компилятор на java/php/... ?
Ага, компилятор. Как я посмотрел в реальном приложении типа "простой
документооборот для малого бизнеса", например, объем логики хоть и
большой, но она вся тривиальная. И если писать такое на каком-нибудь PHP,
то проверка параметров, и простейшая работа с БД будут занимать большую
часть кода. На конструкции где полсотни строк кода валидации параметров, а
потом строк пять реального кода я уже даже смотрю спокойно.
Да, есть небольшие куски специфичного кода, но они занимают меньшую часть
кода. И как раз эти куски разумнее портировать вручную, думая что делаешь.
Хотя можно и для них свой DSL сделать, но столько я не выпью. Ибо для меня
написание даже самого простого компилятора это дни работы.
--
С уважением, Денис
http://freesource.info
----------------------------------------------------------------------------
God is Real, unless declared as Integer.
Подробная информация о списке рассылки smoke-room