Здравствуйте, VladD2, Вы писали:
VD>Нет, но те кто смотрит на Эрлэнг на РСДН-е как хотят использовать Эрлэнг не для написания свичей. Большинство как раз хотят использовать его в областях для которых как раз и создвались все эти MSMQ.
MSMQ создавалась для enterprise-messaging'а. То есть для участия в транзакциях с ACID-свойствами, гарантированной доставкой, failover'ом и т.п.
Использовать MSMQ для легкого параллелизма — это все равно, что использовать Web-Service'ы (через прокси в Антарктиде) для организации циклов в программею
Здравствуйте, IT, Вы писали:
IT>Совершенно верно. Проблема лишь в том, что здравый смысл оперирует вполне конкретными вещами. А "лучшее — враг хорошего" — это банальная отговорка.
Бывает и такое. Но как уже было подмечено ранее — необходимо оперировать здравым смыслом.
Здравствуйте, Turtle.BAZON.Group, Вы писали:
IT>>Совершенно верно. Проблема лишь в том, что здравый смысл оперирует вполне конкретными вещами. А "лучшее — враг хорошего" — это банальная отговорка.
TBG>Бывает и такое. Но как уже было подмечено ранее — необходимо оперировать здравым смыслом.
Ну вот ты, например, чем сейчас оперируешь? Здравым смыслом или словами?
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
IT пишет: > Да ну? Заметил, надо же > Не по твоей. Это тебе небольшой подарок от меня, так сказать > практическое пособие.
Спасибо большое, ума не приложу, что бы я без него делал... > Но не для повторения, конечно, а для умения распозновать демагогию в > сообщениях в том числе и твоих кумиров и кумиров твоего "общественного > мнения на твоей стороне".
Да нормально распознавалось и до этого. Огласите весь список моих
кумиров, пжлст. > Are you OK?
Да все в порядке Нет поводов для беспокойства.
Здравствуйте, eao197, Вы писали:
E>Т.е. во множестве *.log-файлов ищутся строки с pattern-1, все найденные строки сохраняются в файле found.txt и, кроме того, передаются дальше по конвейеру, из них выбираются все строки, в которых нет pattern-2, и количество таких строк подсчитывается. Каждая часть конвейера -- это отдельный процесс, который может работать на своем процессоре. При этом не трудно заметить, что работа может вестись ими параллельно:
Кстати, работу каждого из них тоже можно распараллелить (в особенности grep), и прирост производительности это даст намного выше.
E>И весь фокус состоит в том, чтобы имея линейную запись какого-нибудь вычислительного алгоритма, как можно лучше выявить те места, которые поддаются распараллеливанию. Как раз здесь участие программиста желательно свести к минимуму. Хотя бы из-за того, что мы люди и из-за недостатка опыта или элементарной забывчивости можем забыть что-нибудь распараллелить (или напротив, попробовать распараллелить то, что не следует). Т.е. переложить задачу распараллеливания вычислений на умный компилятор, который будет выявлять знакомые ему паттерны (например, умножение вектора на скаляр, сортировки строк матриц, сложение матриц/векторов и пр.) и эффективно параллелить соответствующие операции.
А может, надо просто использовать запись, которая не будет нагружать компилятор лишней работой по выявлению паттернов? Которую вдобавок усложняют программисты, которые пытаются оптимизировать вручную все что увидят?
Здравствуйте, PhantomIvan, Вы писали:
PI>но форум превращается в говно, когда начинается противостояние по типу eao197 — VladD2 PI>приходится продираться через какие-то личные разборки, перемешанные с программированием
Я бы уточнил — когда в теме участвует хотя бы один из них . Но, в отличие от eao197, Влад не только затевает разборки, но и пишет полезные статьи.
Здравствуйте, Mirrorer, Вы писали:
M>К слову. Я неоднократно предлагал сделать аналог шустриков для Erlang. M> Чтобы реально можно было посмотреть где что и как, и в случае чего отсылать интересующиеся стороны к конкретным фактам.
Проблема всех предложений заключается в том, что их нужно выполнять. Если ты начнешь делать хоть что-то то в советах пробелм не будет. У нас все же до сих пор страна советов, а не страна баранов (с).
M> Но предложений по поводу какие тестовые приложения делать, как их правильно мерять не поступило.
И не поступит пока сам делать не начнешь.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Курилка, Вы писали:
К>Влад,извини меня, но ты меня совсем за критина держишь чтоли?
Я стебаюсь. А у тебя с чувством юмора плохо.
К>В том и дело, что для вебсервера критичным является время отклика, поэтому приходится жертвовать.
Отнюдь не всегда. Если все запросы на сервере короткие, то выгоднее ставить в очередь. Вот если временами встречаются долгие запросы, то конечно их лучше выполнять параллельно или псевдо-параллельно.
К> Только жертвы будут разными в случае потоков ОС и процессов Эрланга.
Скорее всего окажется так, что на фоне потерь от доступа к БД и т.п. это все не будет заметно.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Нет там потоков.
VD>>В том весь и смысл, что параллельность получается не на потоках ОС, т.е. нет постоянных переключений контекста, что позволяет ускорить работу приложения (при наличии нескольких процессов).
К>>>Речь шла именно о паралеллизме и как раз о множетве задач.
VD>>Ну, да? Да, ну? Видимо я читать разучился. В отличии от трепа в жизни тут все ходы записываются. Поднимись на несколько сообщений вверх и почитай что писал.
К>Ну а теперь возьми и прочитай сам! К>При наличии нескольких процессов, а не процессоров. К>Разницу чувствуешь или помощь нужна?
Очень нужна. Объясни развернуто как в остуствии нескольких процессоров но при наличии нескольких процессов можно ускорить вычисления. Только по подробне.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Курилка, Вы писали:
К>ОК, возьмём конкретный пример: Apache vs. YAWS (веб-сервер на эрланге). К>Первый падает при 4 000 одровременных запросов, второй при 80 000. К>См. http://www.sics.se/~joe/apachevsyaws.html
Сражу возникает 3 вопроса:
1. Какое это отношение имеет к твоим заявлениямо о ускорении вычислений?
2. Что за операции осуществлялись на сервере в этих тестах?
3. Где тот мега-сайт где есть 4К запросов в секунду? Гугль? Да на Эрлэнге он ляжет сразу. В нем собственные нехилые подсистемы распределенные написаны и ядро пишется на копилируемых статически типизированных языках. Апачть там точно отдыхает. Какой вывод? Может просто не корректное сравнение? Может просто Апачь не очень рассчитан на такие нагрузки (ну, не гении их программисты)?
К>Есть мнение, что MSMQ будет очень далеко даже от первого по производительности.
Ага. А есть и другое мнение, что скорости MSMQ на современном железе за глаза для решения 100% задач в области финансов и автоматизации, а погоня за скоростью в этой области бессмысленна. Так же есть мнение, что MSMQ обеспечивает работу в условиях не непостоянной связи и длительные распределенные транзации. Кроме того есть мнение, что основные торомоза во многих приложениях будут отнюдь не в подсистеме передачи сообщений, а при доступе к БД. И все эти мнения отнющь не высасаны из пальца.
К>Хотя, конечно, это частный случай, будут частные случаи выгодные для MSMQ. К>Для каждой задачи свой инструмент.
Ага. Но почему-то при рассказах об Эрлэнге об этом упоминуть забывают. Ведь не факт, что если Эрлэнг прекрасно подходит для решения задач телекома (где его модель подхдит отлично, и тормоза самого интерпретатора нивелируются), то он будет так же отлично подходить для решения финансовых задач. Это вопрос для большого исследования. И хотелось увидить именно его.
К>Ммм, авторы чего?
Языка.
К>Воспроизвести можно, весь вопрос в том когда и как. И встаёт вопрос — почему это не сделано?
На этот вопрос есть очень прсотой ответ. Пока что не было реальной необхдимости. У нас на сайте до перехода на новый сервер были тормоза. Обрабатвалось около 4 запросов в секунду. Но тормоза были не из-за потоков ОС, а из-за того, что банально каждая сессия релза в БД и выполняла тяжелые запросы. Ведь любая страничка выводит статистику. Перенос СУБД на другой сервер разгрузил машину с IIS и он залетал. Незнаю сколько там сейчас ссобщений в секунду пролетает, но думаю что не более 10-20. Что с критической цифрой (4 000) для Апача просто не сопоставимо. А у нас заметь один из самых нагруженных серверов в рунете. Собственно то что Апач иIIS пригдны для большинства сайтов демонстрируется тем, что одни из самых посещаемых сайтов (www.microsoft.com, wwwmsn.com, www.ibm.com) живут на этих серверах. Ну, и что даст Эрлэнг в этих условиях?
К>Т.е. есть реально работающий Эрланг. Есть экзотический Oz. (всё руки не дойдут посмотреть подробней, но до мейнстрима явно ему дальше чем Немерле).
Эрлэнг тоже пока что не мэйнстрим. Для многих разницы между Оз и Эрлэнгом не существует.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Сергей, Вы писали:
VD>>Не бери пример с еао197 и ему подобных. Не квоть сообщения до потери смысла и не на летай на выдранные из контекста слова.
С>Влад, а это-то ты зачем написал?
Написал, чтобы не было желания использовать гнусные демагогические приемы в споре. Спорить с демогогией бесполезно. Ее можно только выявлять.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Mirrorer, Вы писали:
M>Свести вопрос Erlang sux\rulez к вопросу "Как можно сделать аналог Erlang на Scala или Nemerle".
Единственная проблема которую я тут вижу — это псевда-параллильное переключение контекста. Если эта задача рашается, то дальше все тривиально. Нужно обеспечить неизменяемые сообщения и простенткую инфраструктуру по их обрработке.
Для упрощеня задачи можно реализовать кооперативную версию в которой процессы будут обрабатывать сообщения и возвращать управление самостоятельно (аналогично обрботке сообщений в окнах Виндовс). Скорость работы такой системы будет значительно выше Эрлэнговской, но если будут попадаться долгие действия, то их прийдется врнучную вытаскивать в отдельные потоки. Это не сложно и применимо на практике но решение не 100%-но чистое.
В качестве сообщений можно использовать варианты специально помечанные некими атрибутами.
Обработку сообщений можно вести с помощью очереди приоритетов построенной на базе хипа (структуры данных хип).
Так же имеет смысл содрать с Эрлэнга иделогию слижения за жизнью связанных процессов и некоторые другие проработанные там и моменты.
В общем, спроктировать такое решение не так сложно. Реализовать сложнее, но тоже возможно. Вопрос только в необходимости и приоритетах. Лично в моих приоритетах подобная игрушка стоит на самом последнем месте. Если ктому-то охота — займитесь.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
VladD2 wrote: > 3. Где тот мега-сайт где есть 4К запросов в секунду? Гугль? Да на
Писали внутренний сайт, с которого клиенты закачивали обновления
программ. После выхода патчей легко бывало 2k коннектов (Апач
приходилось специально крутить чтоб не падал).
А еще есть IRC-серверы и прочие IMы. Там вообще 10k коннектов — норма.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Курилка, Вы писали:
К>> Только жертвы будут разными в случае потоков ОС и процессов Эрланга.
VD>Скорее всего окажется так, что на фоне потерь от доступа к БД и т.п. это все не будет заметно.
Т.е. конкретных сравнений для конкретных задач у тебя нет и ты делаешь лишь умозаключения. Понятно.
Хотя у меня тоже их нет
Здравствуйте, VladD2, Вы писали:
VD>>>Не бери пример с еао197 и ему подобных. Не квоть сообщения до потери смысла и не на летай на выдранные из контекста слова. С>>Влад, а это-то ты зачем написал? VD>Написал, чтобы не было желания использовать гнусные демагогические приемы в споре. Спорить с демогогией бесполезно. Ее можно только выявлять.
Да уж, донкихот блин, нашёлся... своё бревно сначала распили. Тебе твои слова уже давно на уши натянули и слюнявчиком на пузе завязали, только смысла в этом ноль — тебя это всёравно ничему не научит. Но вот от IT'а такого не ожидал. Вороде же взрослый мужик.
Здравствуйте, Cyberax, Вы писали:
C>Использовать MSMQ для легкого параллелизма — это все равно, что использовать Web-Service'ы (через прокси в Антарктиде) для организации циклов в программею
А кто говорит о каком-то "легком параллелизме"? Это скорее Эрлэнг по воздействием пиара пытаются без оглядки применять для организации безнес-приложений.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.