Sheridan wrote: > C>А как сам язык — PHP намного медленнее C# или Java, тут даже спорить > глупо. > Ну запусти на такойже машине с такойже нагрузкой на ИИС подобные выборки > и покажи результат. > Кстати версии апача пхп и файрберда у меня из последних. Так что прошу > также использовать в тестовом забеге последние версии асп, иис и БД на > выбор.
Давай конкретные SQLи и скрипты.
Здравствуйте, Cyberax, Вы писали: C>Есть такое. Еще оно вообще не любит работать с небольшим объемом памяти.
И ровно по тем же причинам. Ну не предназначены Java/Net GC для работы через своп. C>Ну да, Java для очень-бюджетного-хостинга подходит плохо. Но сейчас C>виртуальные серверы очень дешевы.
Виртуальный сервер — это оксюморон. В том смысле, что он работает ничуть не лучше шаред хостинга на той же железке.
Вся фишка виртуального сервера — в том, что он предоставляет на всех столько памяти, сколько есть RAM+Swap. Это работает в предположении, что не всем VE память потребуется одновременно. Для JVM/Net ситуация как раз в том, что они могут отожрать ровно все ресурсы. Тогда реальная производительность виртуального сервера упадет ниже плинтуса.
А это означает, что денсити виртуальных джава-хостингов будет ниже, чем у PHP.
А стоимость подсчитывается грубо говоря именно как стоимость дедикейтед поделить на денсити. Я доступно излагаю?
Мы сейчас думаем над тем, как обеспечить повышение производительности ASP.NET на виртуальном хостинге.
C>Да это я шучу так. Если исключительно PHP-программисты, то ни на что C>кроме VB их лучше не выпускать — уровень обычно у них ниже плинтуса.
А-а
На самом деле это проблема. Парадоксальная причем: с одной стороны, хорошей замены PHP на рынке не видно. С другой стороны, квалифицированные кадры предпочитают из PHP уходить.
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Sinclair wrote: > C>Ну да, Java для очень-бюджетного-хостинга подходит плохо. Но сейчас > C>виртуальные серверы очень дешевы. > Виртуальный сервер — это оксюморон. В том смысле, что он работает ничуть > не лучше шаред хостинга на той же железке. > Вся фишка виртуального сервера — в том, что он предоставляет на всех > столько памяти, сколько есть RAM+Swap. Это работает в предположении, что > не всем VE память потребуется /одновременно/.
Виртуальные серверы бывают разные. Например, на нашем хостинге гарантируется наличие 256Мб памяти и 400Mhz процессора.
Естественно, это стоит несколько дороже, но неточтобы запредельно дорого.
> Для JVM/Net ситуация как > раз в том, что они могут отожрать ровно все ресурсы. Тогда реальная > производительность виртуального сервера упадет ниже плинтуса.
Ну так есть же квоты. И они везде стоят.
> А стоимость подсчитывается грубо говоря именно как стоимость дедикейтед > поделить на денсити. Я доступно излагаю?
Ну естественно, никто с этим вроде не спорит.
> C>Да это я шучу так. Если исключительно PHP-программисты, то ни на что > C>кроме VB их лучше не выпускать — уровень обычно у них ниже плинтуса. > А-а > На самом деле это проблема. Парадоксальная причем: с одной стороны, > хорошей замены PHP на рынке не видно. С другой стороны, > квалифицированные кадры предпочитают из PHP уходить.
Ну есть еще Ruby с RoR, он хотя и требует больше ресурсов, но не слишком
сильно больше. Ну и он покрасивее PHP все же будет.
Здравствуйте, Horror_Infinity, Вы писали:
H_I>А вот когда оно же работало на ASP — вот это было нечто! При числе коннектов 15-20 машина была практически в дауне. Загрузка процессоров под 100%, делать ничего невозможно.
ASP или ASP.NET? Это всеже разные вещи. Если ASP.NET то ты точно чтото не так делал. На RSDN нагрузка на порядки больше и ASP.NET близко не узкое место.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Cyberax, Вы писали:
C>Ну а ближе к практике — где мне для PHP взять аналог Hibernate? А что у C>нас там с транзакциями? Руками расставлять begin-end я не собираюсь. А C>как насчет компонентной модели страниц?
Оно?
Пользуйся, если тебе оно так надо. Я же привык не плакаться — ойой, кнопочку нарисовать этоже надо хтмл код выводить... ойой, не умею, ойой долго писать...
Я привык контролировать хтмл.
C>Понимаешь, на bash можно быстро написать скрипт, который будет удалять C>файлы с буквой P в имено. Этот скрипт будет работать легко и быстро даже C>на 386 компьютере.
C>Но будешь ли ты на bash писать Quake 5?
нет конечно, не сравнивай пожалуйста несравнимые вещи. Баш и с++ даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит асп и на п8000. Точка.
Здравствуйте, Cyberax, Вы писали:
C>Sheridan wrote: >> C>А как сам язык — PHP намного медленнее C# или Java, тут даже спорить >> глупо. >> Ну запусти на такойже машине с такойже нагрузкой на ИИС подобные выборки >> и покажи результат. >> Кстати версии апача пхп и файрберда у меня из последних. Так что прошу >> также использовать в тестовом забеге последние версии асп, иис и БД на >> выбор. C>Давай конкретные SQLи и скрипты.
<?php
if (!defined("CMEMBERSBASE.INC"))
{
define("CMEMBERSBASE.INC",0);
/*
* @author Sheridan
*/class CMembersBase
{
function __construct()
{}
function __destruct()
{}
private function get_member_co_phones($STA_NUM, $check_field)
{
global $st;
$_result = '';
$sql = <<<eod
SELECT PHONE FROM ATC_CO_LINES WHERE LINE_NUM IN (SELECT CO_LINE FROM ATC_CO_STA WHERE {$check_field} > 0 AND STA_NUM = {$STA_NUM})
eod;
$db_data = $st->db()->query($sql);
while($row = $st->db()->fetch_assoc($db_data)) {
$_result .= "{$row['PHONE']} "; }
$st->db()->close_query($db_data);
return $_result != '' ? $_result : ' ';
}
protected function get_member_in_co_phones($STA_NUM)
{
return $this->get_member_co_phones($STA_NUM, 'IN_DAY_NIGHT');
}
protected function get_member_out_co_phones($STA_NUM)
{
return $this->get_member_co_phones($STA_NUM, 'OUT_ALLOWED');
}
}
}
?>
и
<?php
if (!defined("CPHONEBOOK.INC"))
{
define("CPHONEBOOK.INC",0);
/*
* @author Sheridan
*/include_once'src/organisation/cmembersbase.inc';
class CPhoneBook extends CMembersBase
{
function __construct()
{
parent::__construct();
}
function __destruct()
{
parent::__destruct();
}
public function get_title()
{
return'[Телефонная книга]';
}
private function get_select_sql()
{
return <<<eod
SELECT
ORG_MEMBERS.ID, ORG_MEMBERS.F, ORG_MEMBERS.I, ORG_MEMBERS.O, ORG_MEMBERS.STA_NUM, ORG_MEMBERS.JOB,
ORG_DIVISIONS.NAME AS DIVISIONNAME,
ATC_STATIONS.PHONE AS STA_PHONE
FROM ORG_MEMBERS
INNER JOIN ORG_DIVISIONS ON ORG_DIVISIONS.ID=ORG_MEMBERS.DIVISION
INNER JOIN ATC_STATIONS ON ATC_STATIONS.STA_NUM=ORG_MEMBERS.STA_NUM
WHERE ORG_MEMBERS.STA_NUM != -1
ORDER BY ORG_MEMBERS.F, ORG_MEMBERS.I, ORG_MEMBERS.O
eod;
}
public function get_content()
{
global $st;
echo <<<eod
<table class='data'>
<tr>
<th class='data_title'>ФИО</th>
<th class='data_title' colspan='2'>Телефоны</th>
</tr>
eod;
$db_data = $st->db()->query($this->get_select_sql());
while($row = $st->db()->fetch_assoc($db_data)) {
$this->make_item($row); }
$st->db()->close_query($db_data);
echo <<<eod
</table>
eod;
}
private function make_item($row)
{
global $st;
$city_phones = $this->get_member_in_co_phones($row['STA_NUM']);
$job = $row['JOB'] != -1 ? ', ' . $st->db()->simple_query('ORG_JOBS','NAME',"ID='{$row['JOB']}'") : '';
echo <<<eod
<tr>
<td class='data_cell'>{$row['F']} {$row['I']} {$row['O']} <font size='-1'>[{$row['DIVISIONNAME']}{$job}]</font></td>
<td class='data_cell'>{$row['STA_PHONE']}</td>
<td class='data_cell'>{$city_phones}</td>
</tr>
eod;
}
public function get_control()
{
return' ';
}
}
}
?>
Хотя с другой стороны тут полпроекта надо дать дабы видно было картину...
[RSDN@Home][1.2.0][alpha][0]
[Возобновленная рана много хуже противу новой. [К. Прутков]]
Здравствуйте, Mamut, Вы писали:
D>>Народ! А какие аргументы (кроме моего субъективного отношения) можно привести в защиту замены указанной конфигурации на IIS/ASP.NET? Повесомее, пожалуйста.
M>Главный вопрос — стоимость перевода уже существующего на РНР кода на ASP.NET
Пока он не настолько большой, но начальство хочет что-то (правда, само мало представляет, где такое может пригодиться), что потребует по первым прикидкам писать немало. А именно — систему документооборота. И чего они там хотят, это примерно такую же функциональность, как у средних подобных продуктов. Предложил я им купить уже готовую вещь — бесполезно. ТЗ требую. "Ну чего вам надо", спрашиваю. Ответы пока противоречивы, к счастью, ибо пока не скажут, чего надо, делать, естественно, не буду. Но хотят, хоть и расплывчато, но много.
D>>Народ панически боится IIS и .NET. Мол, IIS кривой, а Apache — невзламываемый. А от NET сервак вообще зависнет. Такое мнение, в принципе, весьма распространено. Простой тест — сделайте запросы "Уязвимость Apache" и "Уязвимость IIS". В Яндексе на первый запрос ссылок больше было. Для тех, кто так думает — скажу одну истину, сказанную одним из неизвестных мне хакеров — если программа запускается, значит, ее можно взломать.
M> +1
M>Хм. А что, для C# IDE покупать не надо?
Visual Studio Express Edition, у себя дома в темноте под одеялом, по крайней мере . О приобретении организацией речи вообще не идет.
M>Для редактирования РНР + HTML вполне хватит SciTe.
Здравствуйте, Sheridan, Вы писали:
S>Как правило то что дали — это наследство от программера который писал на том что нравится.
Да S>Что мешает переписать?
Все снес и с нуля переписал. И вообще сделал, чтоб работать меньше.
D>>Что использую — Notepad2 для редактора PHP и Visual Web Developer для структуры каталогов и редактирования HTML (крутое сочетание, не правда ли?). Есть IDE для PHP, но не стану же я покупать сайта организации на свои бабки офигенный редактор PHP. S>Скачай PSPad.
скачал
D>>Народ! А какие аргументы (кроме моего субъективного отношения) можно привести в защиту замены указанной конфигурации на IIS/ASP.NET? Повесомее, пожалуйста. S>А что аналога .htaccess у IIS нету???
В стандартной поставке нет.
Есть ISAPI Rewrite с коммерческой и бесплатной версиями
C>Ну а ближе к практике — где мне для PHP взять аналог Hibernate?
Будет в Zend Framework. B? наверное, есть имплементация в Cake PHP.
Еще есть Propel
C>А что у C>нас там с транзакциями?
PEAR:Mdb их поддерживает и даже эмулирует, если база данных не поддерживает
C>Руками расставлять begin-end я не собираюсь. А C>как насчет компонентной модели страниц?
>> На самом деле это проблема. Парадоксальная причем: с одной стороны, >> хорошей замены PHP на рынке не видно. С другой стороны, >> квалифицированные кадры предпочитают из PHP уходить. C>Ну есть еще Ruby с RoR, он хотя и требует больше ресурсов, но не слишком C>сильно больше. Ну и он покрасивее PHP все же будет.
У RoR есть одна маааленькая проблема Его грамотная настройка на хостере и последующая scalability требуют весьма серьезных плясок с бубном
Sheridan wrote: > Компонентная модель? > Не пожалею даже код. > Оно?
Даже близко не оно. Это как если бы я говорил про виджеты в QT, а ты бы
отвечал: "А у меня есть процедуры рисования линий и квадратов с помощью
SetPixel, так что у меня такие же крутые компоненты!"
К примеру, пишем форму для логина:
[html]
<html>
<head>
<title>Login</title>
</head>
<body>
<h1>Login</h1>
<span style="color: red"><span jwcid="errorMsg"/></span>
<form jwcid="loginForm">
<table border="0">
<tr><td>Username:</td><td><input type="text" jwcid="username"/></td></tr>
<tr><td>Password:</td><td><input type="password" jwcid="password"/></td></tr>
<tr><td></td><td><input type="submit" value="Login"/></td></tr>
</table>
</form>
</body>
</html>
[/html]
Теперь пишем байндинг полей формы к данным (это можно делать как с
помощью отдельных XML-файлов, так и с помощью аннотаций в коде). Кстати,
с помощью Spindle для Eclipse сразу будут подсвечиваться несоответствия
в XML и HTML:
...
@InjectState("mutableUser")
public abstract MutableUser getMutableUser();
@Bean
public abstract ValidationDelegate getDelegate();
public String onLogin() {
MutableUser mutableUser = DummyFactory.getMutableUser(username,
password);
if (mutableUser != null)
{
// remember that this user has logged in.
getMutableUser().copyFrom(mutableUser);
return"SomeOtherPage"; //Это пошлет нас на следующую страницу
} else {
// display an error and show the Login page again.
ValidationDelegate delegate = getDelegate();
delegate.setFormComponent(null);
delegate.record("Login failed", null);
return null;
}
}
...
Все, страница у нас готова. Теперь Tapestry сама будет выполнять
привязку, обрабатывать кнопки back (с помощью rewinding), рисовать
ошибки, управлять состоянием и т.п.
Для простой страницы с парой полей преимущества могут быть неочевидны.
Но теперь представим, что мы хотим вывести таблицу с поддержкой
сортировки по колонкам и фильтрации (то есть сверху таблицы есть поле
ввода, в котором задается строка фильтрации). Причем мы хотим сделать
так, чтобы листание таблицы и фильтрация работала через AJAX.
Для PHP придется писать горы кода, для Tapestry я просто беру http://tacos.sourceforge.net/ , добавляю на форму их компонент Grid,
добавляю поле для фильтра и связываю их через binding.
> Пользуйся, если тебе оно так надо. Я же привык не плакаться — ойой, > кнопочку нарисовать этоже надо хтмл код выводить... ойой, не умею, ойой > долго писать...
Я умею. Но тратить зря на это время — нафиг.
> Я привык контролировать хтмл.
А кто мешает?
> C>Понимаешь, на bash можно быстро написать скрипт, который будет удалять > C>файлы с буквой P в имено. Этот скрипт будет работать легко и быстро даже > C>на 386 компьютере. > C>Но будешь ли ты на bash писать Quake 5? > нет конечно, не сравнивай пожалуйста несравнимые вещи.
Нет. ASP.NET — это наааамного более высокий уровень по сравнению с PHP.
> даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из > одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а > ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит > асп и на п8000. Точка.
Нда... А откуда такая уверенность?
Mamut wrote: > C>Ну а ближе к практике — где мне для PHP взять аналог Hibernate? > Будет в Zend Framework. B? наверное, есть имплементация в Cake PHP. > Еще есть Propel <http://propel.phpdb.org/trac/>
Вопрос только в том, когда это станет юзабельно Пока что это все на
зачаточном уровне.
> C>А что у нас там с транзакциями? > PEAR:Mdb их поддерживает и даже эмулирует, если база данных не поддерживает
Просто мне как человеку, измученому нарзаном, хочется декларативного
управления транзакциями, да еще и с поддержкой XA.
> C>Руками расставлять begin-end я не собираюсь. А > C>как насчет компонентной модели страниц? > Компонентная модель — см. Prado <http://xisc.com/>
Ну хоть что-то похожее на Tapestry трехлетней давности появилось
Просто у меня есть большие сомнения, что эти проекты уйдут далеко. В
Java, например, Hibernate обычно дает примерно 5% оверхеда. В PHP это
будет все 50% оверхеда за счет отсутствия JIT-компилятора.
А если добавлять в PHP еще и JIT со строгой типизацией, то в итоге
получится Java
Mamut wrote: >> > На самом деле это проблема. Парадоксальная причем: с одной стороны, >> > хорошей замены PHP на рынке не видно. С другой стороны, >> > квалифицированные кадры предпочитают из PHP уходить. > C>Ну есть еще Ruby с RoR, он хотя и требует больше ресурсов, но не слишком > C>сильно больше. Ну и он покрасивее PHP все же будет. > У RoR есть одна маааленькая проблема Его грамотная настройка на хостере > и последующая scalability требуют весьма серьезных плясок с бубном
Это, в принципе, проблема решаемая (в том числе и коммерческим продуктом).
...Хотя если армия индусов с PHP переедет на Ruby...
>> C>А что у нас там с транзакциями? >> PEAR:Mdb их поддерживает и даже эмулирует, если база данных не поддерживает C>Просто мне как человеку, измученому нарзаном, хочется декларативного C>управления транзакциями, да еще и с поддержкой XA.
Ха-ха
>> C>Руками расставлять begin-end я не собираюсь. А >> C>как насчет компонентной модели страниц? >> Компонентная модель — см. Prado <http://xisc.com/> C>Ну хоть что-то похожее на Tapestry трехлетней давности появилось
Ну, PRADO тоже немолод Но это скорее попытка эмулировать оведение ASP.NET. Хотя что у них там сейчас твоорится — фиг знает
C>Просто у меня есть большие сомнения, что эти проекты уйдут далеко. В C>Java, например, Hibernate обычно дает примерно 5% оверхеда. В PHP это C>будет все 50% оверхеда за счет отсутствия JIT-компилятора.
C>А если добавлять в PHP еще и JIT со строгой типизацией, то в итоге C>получится Java
Здравствуйте, Cyberax, Вы писали:
C>Все, страница у нас готова. Теперь Tapestry сама будет выполнять C>привязку, обрабатывать кнопки back (с помощью rewinding), рисовать C>ошибки, управлять состоянием и т.п.
Вобщем из хорошего только то что оно ошибки само проверяет, да back, а остальное... Вобщем не впечатлило меня почемуто...
И мы наверное поразному воспринимаем понятие "компонент".
C>Для простой страницы с парой полей преимущества могут быть неочевидны. C>Но теперь представим, что мы хотим вывести таблицу с поддержкой C>сортировки по колонкам и фильтрации (то есть сверху таблицы есть поле C>ввода, в котором задается строка фильтрации).
Без проблем писал такое, причем сортировка выполнялась не на уровне построения таблицы а на уровне sql запроса к БД. И поэтому с фильтрацией тоже проблем не вижу.
C>Причем мы хотим сделать так, чтобы листание таблицы и фильтрация работала через AJAX.
Дачтож это за панацея ажакс? Объясни жураку... Чтото все чаще и чаще слышу... Очередной Nemerle?
C>Для PHP придется писать горы кода, для Tapestry я просто беру C>http://tacos.sourceforge.net/ , добавляю на форму их компонент Grid, C>добавляю поле для фильтра и связываю их через binding.
Вобщем делфи какоето получается...
>> Пользуйся, если тебе оно так надо. Я же привык не плакаться — ойой, >> кнопочку нарисовать этоже надо хтмл код выводить... ойой, не умею, ойой >> долго писать... C>Я умею. Но тратить зря на это время — нафиг.
Тратить время? О повторном использовании кода слышал?
>> Я привык контролировать хтмл. C>А кто мешает?
А ты уверен что твои компоненты тебе дадут валидный хтмл в итоге? что </td> нигде не пропустят, что в урлах будет & вместо просто &, что все параметры тегов будут в кавычках, что не пропустит оно alt для картинок и прочее прочее прочее.
>> C>Понимаешь, на bash можно быстро написать скрипт, который будет удалять >> C>файлы с буквой P в имено. Этот скрипт будет работать легко и быстро даже >> C>на 386 компьютере. >> C>Но будешь ли ты на bash писать Quake 5? >> нет конечно, не сравнивай пожалуйста несравнимые вещи. C>Нет. ASP.NET — это наааамного более высокий уровень по сравнению с PHP.
Из твоего кода я понял что асп успешно движется в сторону шаблонной писанины, и в конце концов все будет под один гребень причесано...
>> даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из >> одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а >> ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит >> асп и на п8000. Точка. C>Нда... А откуда такая уверенность?
Обычная индукция.
[RSDN@Home][1.2.0][alpha][0]
[Все люди хотят жить долго, но никто не хочет быть старым. [Д. Свифт]]
Sheridan wrote: > C>Все, страница у нас готова. Теперь Tapestry сама будет выполнять > C>привязку, обрабатывать кнопки back (с помощью rewinding), рисовать > C>ошибки, управлять состоянием и т.п. > Вобщем из хорошего только то что оно ошибки само проверяет, да back, а > остальное... Вобщем не впечатлило меня почемуто...
Ага, там еще управление потоком (то есть что куда переходит), удобные
сессии, отладчик страниц и еще огромное количество приятных вещей.
> C>Для простой страницы с парой полей преимущества могут быть неочевидны. > C>Но теперь представим, что мы хотим вывести таблицу с поддержкой > C>сортировки по колонкам и фильтрации (то есть сверху таблицы есть поле > C>ввода, в котором задается строка фильтрации). > Без проблем писал такое, причем сортировка выполнялась не на уровне > построения таблицы а на уровне sql запроса к БД. И поэтому с фильтрацией > тоже проблем не вижу.
Ну-ну. И сколько десятков килобайт кода это заняло? Кстати, еще учти,
что в ячейках таблицы могут быть custom-рендерер'ы. Да, а еще есть
редактирование — щелкаем на строку и тут же редактируем поля.
И все это уже написано, мне просто надо вставить "<span jwcid="grid">" и
написать реализацию TableModel на Java.
> C>Причем мы хотим сделать так, чтобы листание таблицы и фильтрация > работала через AJAX. > Дачтож это за панацея ажакс? Объясни жураку... Чтото все чаще и чаще > слышу... Очередной Nemerle?
AJAX=Asynchronous Java And XML. То есть страницы, которые не требуют
полной перезагрузки при действиях с ними. В качестве примера можешь
посмотреть Google Mail (могу инвайт прислать, если надо).
Да, а еще компоненты в Tapestry умеют делать graceful degradation до
обычных странцчных компонентов, если браузер не поддерживает AJAX.
> C>Для PHP придется писать горы кода, для Tapestry я просто беру > C>http://tacos.sourceforge.net/ , добавляю на форму их компонент Grid, > C>добавляю поле для фильтра и связываю их через binding. > Вобщем делфи какоето получается...
Именно, причем более правильный и адаптированый для Web. Что проще для
использования: Дельфи или голый WinAPI?
>> > Пользуйся, если тебе оно так надо. Я же привык не плакаться — ойой, >> > кнопочку нарисовать этоже надо хтмл код выводить... ойой, не умею, ойой >> > долго писать... > C>Я умею. Но тратить зря на это время — нафиг. > Тратить время? О повторном использовании кода слышал?
В PHP оно примерно равно cut&paste.
Я про другое говорил — нафиг мне возиться с деталями HTML-разметки, если
я могу просто собрать страницу из компонентов и с помощью CSS назначить
им нужные визуальные стили?
>> > Я привык контролировать хтмл. > C>А кто мешает? > А ты уверен что твои компоненты тебе дадут валидный хтмл в итоге?
??? Естественно!
Более того, они выдадут валидный XHTML, который при желании еще и через
XSL можно протащить будет.
> что </td> нигде не пропустят, что в урлах будет & вместо просто &, что > все параметры тегов будут в кавычках, что не пропустит оно alt для > картинок и прочее прочее прочее.
Это скорее проблема PHP. О таких мелочах я уже и думать забыл — к
хорошему быстро привыкаешь.
>> > C>Но будешь ли ты на bash писать Quake 5? >> > нет конечно, не сравнивай пожалуйста несравнимые вещи. > C>Нет. ASP.NET — это наааамного более высокий уровень по сравнению с PHP. > Из твоего кода я понял что асп успешно движется в сторону шаблонной > писанины, и в конце концов все будет под один гребень причесано...
Какой "гребень"? Весь HTML — это сплошные шаблоны. Везде одинаковые тэги
<html>, <body> — ничего нового нет!
>> > даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из >> > одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а >> > ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит >> > асп и на п8000. Точка. > C>Нда... А откуда такая уверенность? > Обычная индукция.
Мда. А на чем основана база индукции?
Позвольте-позвольте. Asynchronous JavaScript And XML
Java и JavaScript — это две большие разницы.
Ну и многие уже отказались от идеи использовать XML в Аяксе. Гораздо удобнее предавать или JSON или напрямую сгенерированный HTML. Но название осталось.
Здравствуйте, Sheridan, Вы писали:
C>>А как сам язык — PHP намного медленнее C# или Java, тут даже спорить глупо. S>Ну запусти на такойже машине с такойже нагрузкой на ИИС подобные выборки и покажи результат.