Re[6]: jsdk.jar
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.03.02 17:08
Оценка:
Здравствуйте IT, Вы писали:

AVK>>Увы, идеальной документации не бывает и некоторые тонкости могут быть не представлены. Когда есть исходники — всегдна можно в них заглянуть. В свое время мне очень исходники библиотек Дельфи помогли. Да и в исходники библиотек java несколько раз приходилось лазить.


IT>Я пытаюсь вспомнить когда мне исходники реально помогли.

IT>1. Надо было сделать локализацию ещё в DOS для DPMI в BC++ 4.5, что-то там Борланд нахимичил с DLL'ками.
IT>2. Много пришлось погулять по MFC, что бы понять what's going on там внутри.
IT>3. ATL пришлось покопать, хотя после ATL Internals
Автор(ы): Brent Rector, Chris Sells

When I first saw the title of this book, I told Chris Sells that it
sounded like the book I always wanted to writed. Ever since we released ATL,
some of us have been saying, "I've often thought that I should write a book on
how ATL works." After reading ATL Internals, I don't think there would
be much left for me to write about. Actually, this is kind of a relief.
At this point, I think most aspects of ATL have been covered,
and ATL Internals provides an excellent source of information on the
inner workings of ATL. So, Chris asked me to provide some information that
can't be deduced by looking at the ATL source code.
многие вопросы снялись.

IT>Т.е. в первом случае это было связано с глюками, в остальных с недостатком литературы по изучаемому вопросу.
Где это противоречит тому что я сказал? В свое время мне очень сильно пришлось поковыряться в исходниках Дельфей ввиду не очень внятной документации по design-time среде (тогда это была 2 версия ее). Увы, идеального в природе нет и .Net документация тоже не идеальна. И когда ты упрешся в какой нибудь темный угол — что ты будешь делать?

AVK>>Для корпоративных приложений java все же остается более предпочтительной. На порядок больше специфических API. Где например в .net аналог EJB или JDO?

IT>Давай ты мне расшифруешь эти аббревиатуры и скажешь для чего они нужны, а я постараюсь привести примеры аналогов.
Нет проблем. Начнем с более простой. JDO — Java Data Objects. Технология сериализации объектов в различные источники (обычно DB и XML) с возможностью выборочной десериализации. А главное — умеющая десериализовывать по набору условий при помощи языка похожего на SQL но для работы с объектами. Короче — механизм персистентности.
Ничего похожего у MS пока нет.
EJB — Enterprise Java Beans, ключевая технология J2EE. Это сервер приложений. Главное отличие от других подобных технологий — более глубокое взаимодейстиве с объектами. К примеру EJB сервер сам загружает, выгружает и инициализирует бизнес-объекты, активно их кеширует, обеспечивает безопасность, механизм транзакций, в т.ч. и распределенных, пул соединений с SQL сервером, балансировку нагрузки и работу в кластерах. Существуе механизм полностью автоматической загрузки\выгрузки объектов, когда контейнер сам создает запросы к БД, выполняет их и результат предоставляет разработчику. Ну и наконец это полноценный Object-Relational преобразователь реализующий отношения 1-1, 1-n, n-1, n-n. Самое похожее на это у MS — COM+ и serviced components, но они не умеют многое из того что могут EJB-сервера.

IT>Только сразу предупреждаю, как я уже говорил, .NET дополняет Win32 и возможно некоторые вещи эффективнее реализовывать на последней.

Э нет, так не пойдет. Идеология .Net такова что следует по возможности максимально избегать legacy интерфейсов, особенно Win32 API. И не только для переносимости. При этом вся система anti dll-hell идет нафик. Да и за что тогда боролись? Чтобы все писать на Win32? А нафига тогда дотнет?

AVK>>При чем здесь все возможности. Вот скажи для примера — если мне LinkedList нужен — мне его ручками писать или ArrayList пользовать? Ни Queue ни Stack мне не подходят ввиду необходимости удалять элементы из середины.

IT>А чем ArrayList не подходит?
Сделаем проще. Вот исходник
using System;
using System.Collections;

public class Coll {
 public static void Main() {
  ArrayList al = new ArrayList();
  int st = Environment.TickCount;
  for(int i = 0; i < 1000000; i++) {
   al.Insert(0,new object());
   if(al.Count > 1000)
    al.RemoveAt(al.Count-1);
  }
  Console.WriteLine(Environment.TickCount-st);

  Queue q = new Queue();
  st = Environment.TickCount;
  for(int i = 0; i < 1000000; i++) {
   q.Enqueue(new object());
   if(q.Count > 1000)
    q.Dequeue();
  }
  Console.WriteLine(Environment.TickCount-st);
 }
}

А вот результат его выполнения на моей машине
1859
188

Комментарии я думаю излишни. Если интересно почему такой результат — могу рассказать.

AVK>>Все же бывает он нужен. Да и от глюков в .Net никто не застрахован. Знаешь как xslt процессор в beta2 чудесатил.


IT>Ok, пусть без исходников никуда, убалтали ;o) Можете напечатаь исходники CRTL или библиотек Java и обвешать ими все стены.

Зачем ими стены обвешивать. Просто наличие исходников уменьшает степень риска. И ничего более.

IT> А про beta2 это не честно. Это ж бэта, она глючить должна по определению ;)

Думаешь есть существенная разница между бетами и релизами? То-то MS не успел выпустить релиз дотнета уже сервис пак к нему лежит.
AVK Blog
Re[8]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.03.02 17:29
Оценка:
Здравствуйте VladD2, Вы писали:

AVK>>По моему их заметно меньше. Это тоже не надо забывать.

VD>Во я и говорю это не спор это наезды. Ты приведи список того чего нет в .Net, но есть в Яве и чтобы при этом все это хоть кому ни будь было нужно.
Мне заняться что ли нечем? То с чем я столкнулся я уже перечислил. Могу еще раз
1) LinkedList
2) RandomAccessFile
3) MemoryMappedFile
Из API
1) JDO
2) EJB
3) JAAS. Правда что то похожее есть в ASP.NET, но не вебом единым
Ты не сомневайся, я не первый день пытаюсь что то на дотнете сделать. И искал то что мне нужно очень хорошо.

AVK>>Так что не надо бросаться из одной крайности в другую — да, многоплатформенность это не панацея от всех бед, но это не значит что она никому не нужна. Тому же MS придет блаж в голову и он что нибудь накорежит несовместимое. Или таки засудят его — и что, останешся на бобах?


VD>Я только не пойму, что мене представлять? Я вот этот сайт вижу, до этого месяца он жил на Access-е и выдерживал по 1500 человек в день... сейчас живет на MS SQL2k на этом гребаном Интеле. Будет здесь посетителей не 1500 и 1 500 000, то мы продадим пару реклам и за этот счет купим сервер с восьмью процессорами и будет все летать.

Господи, да что ты все про веб. Нафига он сухарепекателю нужен? Я про КИС толкую. А там нагрузки более другие нежели для веб серверов. Yahoo в свое время работал на 4 P-90 и обслуживал более миллиона запросов в день.

VD> Пусть этот твой сухареклепатель деньги зарабатывает, если заработает на заводик эдак на 30 000 человек, то у него и деньги будут на другое железо, да и систему нужно будет другую делать. Нельзя управлять пекарем и заводом по одному шаблону, а ПО как раз шаблон и задает.

Я тебе по опыту знаешь что скажу — заводик может так и остаться небольшим, а обороты возрастут на порядок. И именно хорошая КИС поможет ему не раздувать до неимоверных размеров управленческий аппарат. А работяг при хорошем оборудовании много не нужно. Так что КИС для него — вопрос жизни и смерти. В общем вопрос возможности миграции на другую платформу для подобных систем очень важен. Если не веришь — больше ничего доказывать тебе не буду, ибо бесполезно.

AVK>>Не знаешь — не говори. Есть много по крайней мере не худших средств разработки. Forte например или IDEA. Есть и покруче — Together.


VD>Не, ну, я конечно понимаю гордость за любимый продукт...

Я что то говорил про свой любимый продукт?

VD> но работать на бесплатной барахолке как-то от этого не хочется (для .Net-а этого го-а тоже хватает), а использовать продукты в сотни тысяч долларов, как то не скромно .

Все три вышеперечисленных не бесплатны и не стоят сотни тысяч. Так что мимо.

VD> Их у нас по 80 руб. не продают. Если же сравнить их с тем самым продуктом убогого монополиста... то и Borland-овские продукты конкуренции не выдерживают...

Т.е. ты считаешь что отсутствие выбора средства разработки это хорошо? Дальнейший разговор похоже лишен смысла.

AVK>>Чем тебе документация Java не понравилась, чем она хуже MSDN?

VD>Ну, ты открой... посмотри... поиск попробуй... по деревцу полазай...
Открывал, смотрел и лазил очень много.
VD> Знаешь, мне пришлось и с тем и с тем возится, но в .Net все находится в лет, а в Яве мучаешься, мучаешься потом лезешь в конфы.
Мне вот тоже. И нахожу я в DotNet информацию ничуть не быстрее чем в java.

VD> А в большинстве случаев нужная подсказка видна прямо в комплит-ворде, и лезть никуда не надо.

Это уже не документация а средства ее просмотра. И если ты не знаешь таковых в java это не значит что их нет в природе.
AVK Blog
Re[10]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.03.02 17:41
Оценка:
Здравствуйте IT, Вы писали:

IT>Почему огромные? Хотя конечно если сначала писать базу на Access, а потом всё переносить в многозвенку, то повозиться придётся.

Потому что сервера умеющие распределенные транзакции недешевы.

IT>Мы начали с того, что ты говорил, что тебя спасёт переносимое ПО. И где тут связь?

Иногда перенести с винтела на тяжелый сервер эффективнее нежели перенос на винтел кластер. Так моя мысль понятна?

IT>Переносимость не означает автоматическую расширяемость, проблемы будут те же. Более того, когда подобные проблемы начинают решаться закупками оборудования о котором ты говоришь, то суммы в $100k тут рояли уже не играют.

Давай к цифрам придираться не будем. Я тут не бизнес-план проекта составляю. Цифры взяты с потолка. А вот цифры не с потолка — стоимость железок в проекте обычно составляет 3-5% стоимости софта.

IT> Такие железки стоят на порядок дороже, а уж софт к ним и подавно. Если же ты имел ввиду, что сервер на Sun будет работать аж в 2 раза быстрее W2k+Intel, то во-первых сегодня это уже спорно, а во-вторых два раза ничего на даст, завтра это ПО будет тормозить и на Sun.

Да при чем здесь сан. Просто винтел сервера занимают только самый нижний уровень производительности. Это факт. Если я не прав — найди мне коммерческий винтель сервер ну скажем с 32 процессорами, парой десятков гиг оперативки и парой терабайт дисковых накопителей. И никакой кластер тут не поможет ибо эффективность его падает с увеличением количества машин.

IT>Распаралеливать можно ещё и задачи. Например можно бизнес-логику по заказу сухариков поставить на один сервер, отгрузку на другой, бухгалтерию на третий, сервер печати на четвёртый, а уже потом смотреть где остаются узкие места.

Вот! Об этом я и говорю. Бизнес логику придеться переделывать. И никаким супер-пупер апп-сервером это не сделать. А затраты на существенную переделку софта на порядок выше стоимости любых железок. Да и железку мне установят и настроят за 3 дня без моего участия. А софт будут переделывать месяца 3 в лучшем случае. А потом еще полгода будут глюки ловить.
AVK Blog
Re[7]: jsdk.jar
От: IT Россия linq2db.com
Дата: 25.03.02 17:56
Оценка:
Здравствуйте AndrewVK, Вы писали:

IT>>Давай ты мне расшифруешь эти аббревиатуры и скажешь для чего они нужны, а я постараюсь привести примеры аналогов.


AVK>Нет проблем. Начнем с более простой. JDO — Java Data Objects. Технология сериализации объектов в различные источники (обычно DB и XML) с возможностью выборочной десериализации. А главное — умеющая десериализовывать по набору условий при помощи языка похожего на SQL но для работы с объектами. Короче — механизм персистентности.

AVK>Ничего похожего у MS пока нет.

Я тоже иногда кидаюсь голословными заявлениями, потом приходится жалеть. ;) В .NET не просто сериализация, а сериализация на сериализации и сериализацией погоняет. Возможно она реализована не так как в Java, но это не значит что хуже. Всё сериализуется по-умолчанию, если есть желание, то можно этим довольно гибко управлять простыми атрибутами без всяких языков. Но если и этого не достаточно, то перекрывай ISerializable и вытворяй что хочешь. Для сохранения/восстановления объектов предназначены форматеры, сейчас их есть для binary и xml. Никто тебе не мешает нарисовать свой и сохранять как тебе хочется.

AVK>EJB — Enterprise Java Beans, ключевая технология J2EE. Это сервер приложений. Главное отличие от других подобных технологий — более глубокое взаимодейстиве с объектами. К примеру EJB сервер сам загружает, выгружает и инициализирует бизнес-объекты, активно их кеширует, обеспечивает безопасность, механизм транзакций, в т.ч. и распределенных, пул соединений с SQL сервером, балансировку нагрузки и работу в кластерах.


Насколько мне известно, там внутри под всем этим хозяйством лежит CORBA. Или я ошибаюсь? MS рекомендует для этих целей использовать COM+. С одной стороны он тесно интегрирован с ОС, с другой с .NET. Все перечисленные тобой возможности в нём имеются.

AVK>Существуе механизм полностью автоматической загрузки\выгрузки объектов, когда контейнер сам создает запросы к БД, выполняет их и результат предоставляет разработчику. Ну и наконец это полноценный Object-Relational преобразователь реализующий отношения 1-1, 1-n, n-1, n-n. Самое похожее на это у MS — COM+ и serviced components, но они не умеют многое из того что могут EJB-сервера.


Этого я не припомню, но пока и не соображу зачем это надо.

IT>>Только сразу предупреждаю, как я уже говорил, .NET дополняет Win32 и возможно некоторые вещи эффективнее реализовывать на последней.


AVK>Э нет, так не пойдет. Идеология .Net такова что следует по возможности максимально избегать legacy интерфейсов, особенно Win32 API. И не только для переносимости. При этом вся система anti dll-hell идет нафик. Да и за что тогда боролись? Чтобы все писать на Win32? А нафига тогда дотнет?


Ещё раз повторюсь. .NET не отменяет Windows, более того, это было бы просто самоубийство. Скороее всего, постепенно большинство сервисов, предоставляемых Windows будут заменяться на собственные. Но это будет происходить эволюционно. И это правильно. Переход должен быть постепенным и должна быть обеспечена интеграция с существующими технологиями. В частности для написания объектов COM+ в .NET совсем не надо прибегать к использованию WinAPI, всё делается интерфейсами и атрибутами.

AVK>>>При чем здесь все возможности. Вот скажи для примера — если мне LinkedList нужен — мне его ручками писать или ArrayList пользовать? Ни Queue ни Stack мне не подходят ввиду необходимости удалять элементы из середины.


IT>>А чем ArrayList не подходит?


AVK>Сделаем проще. Вот исходник


[skip]

Тогда рассказывай что такое LinkedList, если ни список ни коллекция тебе не подходит.

IT>> А про beta2 это не честно. Это ж бэта, она глючить должна по определению ;)


AVK>Думаешь есть существенная разница между бетами и релизами? То-то MS не успел выпустить релиз дотнета уже сервис пак к нему лежит.


То что я в бессильной злобе пытался решить на бете в релизе было пофиксено. А быстрые сервис-паки это неплохо, работают ребята :)
Если нам не помогут, то мы тоже никого не пощадим.
Re[11]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: IT Россия linq2db.com
Дата: 25.03.02 18:13
Оценка:
Здравствуйте AndrewVK, Вы писали:

IT>>Мы начали с того, что ты говорил, что тебя спасёт переносимое ПО. И где тут связь?


AVK>Иногда перенести с винтела на тяжелый сервер эффективнее нежели перенос на винтел кластер. Так моя мысль понятна?


Т.е. базу на Access или DBF перенести на DB2? Кажется мы начинали с совсем простых систем.

AVK>Да при чем здесь сан. Просто винтел сервера занимают только самый нижний уровень производительности. Это факт. Если я не прав — найди мне коммерческий винтель сервер ну скажем с 32 процессорами, парой десятков гиг оперативки и парой терабайт дисковых накопителей. И никакой кластер тут не поможет ибо эффективность его падает с увеличением количества машин.


Зачем кластер?

IT>>Распаралеливать можно ещё и задачи. Например можно бизнес-логику по заказу сухариков поставить на один сервер, отгрузку на другой, бухгалтерию на третий, сервер печати на четвёртый, а уже потом смотреть где остаются узкие места.


AVK>Вот! Об этом я и говорю. Бизнес логику придеться переделывать. И никаким супер-пупер апп-сервером это не сделать. А затраты на существенную переделку софта на порядок выше стоимости любых железок. Да и железку мне установят и настроят за 3 дня без моего участия. А софт будут переделывать месяца 3 в лучшем случае. А потом еще полгода будут глюки ловить.


Я не о том. Не надо кластеров, не надо особых переделок. Есть задача печати отчётов, есть работы с клиентами, есть что-то ещё. Разносим их по разным серверам и всё.
Если нам не помогут, то мы тоже никого не пощадим.
Re[8]: jsdk.jar
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.03.02 19:40
Оценка: 8 (1)
Здравствуйте IT, Вы писали:

IT>Я тоже иногда кидаюсь голословными заявлениями, потом приходится жалеть. ;) В .NET не просто сериализация, а сериализация на сериализации и сериализацией погоняет. Возможно она реализована не так как в Java, но это не значит что хуже. Всё сериализуется по-умолчанию, если есть желание, то можно этим довольно гибко управлять простыми атрибутами без всяких языков. Но если и этого не достаточно, то перекрывай ISerializable и вытворяй что хочешь. Для сохранения/восстановления объектов предназначены форматеры, сейчас их есть для binary и xml. Никто тебе не мешает нарисовать свой и сохранять как тебе хочется.

Вот так и знал что не стоит слово сериализация употреблять. Не сериализация это а персистентность. К примеру сериализуй ты как тебе хочется скажем 1000000 объектов. А потом выбери из них полсотни у которых свойство Prop1 like %XXX%. Теперь понимаешь что никаких форматтеры не помогут, нужен специальный фреймворк.

IT>Насколько мне известно, там внутри под всем этим хозяйством лежит CORBA.

Не обязательно. Все основные механизмы вполне работают без CORBA.

Или я ошибаюсь? MS рекомендует для этих целей использовать COM+. С одной стороны он тесно интегрирован с ОС, с другой с .NET. Все перечисленные тобой возможности в нём имеются.

IT>Этого я не припомню, но пока и не соображу зачем это надо.

Честно говоря долго здесь объяснять. Если интересно — посмотри на java.sun.com. EJB это не просто библиотека, это технология и методология создания и эксплуатации корпоративных систем.

IT>Ещё раз повторюсь. .NET не отменяет Windows, более того, это было бы просто самоубийство.

Ну так из Java тоже можно и до Win32 и даже до COM достучаться, только вот не надо этого делать.
IT>Скороее всего, постепенно большинство сервисов, предоставляемых Windows будут заменяться на собственные.
Вот об этом то я и говорю. Да, я надеюсь будет. Но пока то нет! А в java уже. Об этом я и говорю.
Дело то не в том что технология дотнет в чем то ущербна. Просто у нее нет многолетней истории развития как у java. Она ведь все эти годы не стояла на месте. И мне очень нравится то что дотнет многое перенял. Но мясом он пока что не оброс в должной степени.
IT> Но это будет происходить эволюционно. И это правильно. Переход должен быть постепенным и должна быть обеспечена интеграция с существующими технологиями. В частности для написания объектов COM+ в .NET совсем не надо прибегать к использованию WinAPI, всё делается интерфейсами и атрибутами.
Но сервер то по прежнему нативный. Вобщем я не против эволюции. И вполне верю что дотнет в конечном этоге превзойдет java по всем параметрам. Уже сейчас C# заметно удобнее. Но пока для серьезных проектов я бы дотнет применять не торопился бы. Вот для веб решений совсем другое дело.


IT>Тогда рассказывай что такое LinkedList, если ни список ни коллекция тебе не подходит.

А LinkedList это по сути Queue или Stack но с интерфейсом IList.

IT>То что я в бессильной злобе пытался решить на бете в релизе было пофиксено. А быстрые сервис-паки это неплохо, работают ребята :)

Хорошо конечно. Просто это доказывает что релиз увы не безглючен.
AVK Blog
Re[12]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.03.02 19:49
Оценка: -1
Здравствуйте IT, Вы писали:

AVK>>Иногда перенести с винтела на тяжелый сервер эффективнее нежели перенос на винтел кластер. Так моя мысль понятна?


IT>Т.е. базу на Access или DBF перенести на DB2? Кажется мы начинали с совсем простых систем.

Кажется мы начинали с дотнета?

IT>Зачем кластер?

Кто то здесь кластер предлагал как решение проблемы масштабируемости. Вот я и пытаюсь объяснить что кластер не есть самая оптимальная система.

IT> Я не о том. Не надо кластеров, не надо особых переделок. Есть задача печати отчётов, есть работы с клиентами, есть что-то ещё. Разносим их по разным серверам и всё.

Низзя просто так. Думаешь зря репликацию и DTC придумали? Данные то в корпоративных системах очень тесно связаны и просто так разрезать ядро на практически независимые части сложно. А тормозить как правило начинает не вся система а какое то узкое место. Я согласен — более правилным решением будет перепроектирование, но к сожалению это будет и самым дорогим решением.
Ладно, пора завязывать. Мы тут уже совсем не о том о чем начали говорим. Если хочешь обсудить вопросы проектирования корпоративных систем — давай другой топик заведем.
AVK Blog
Re[5]: jsdk.jar
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 19:52
Оценка:
Здравствуйте AndrewVK, Вы писали:

VD>>И вообще получается бесполезный разговор. Ты сам то пробывал писать под .Net?

AVK>Не воспринимай как наезд — а ты пробовал писать на java? Я вот пробовал писать и на том и на другом.

Пробывал. Причем на Яве дважды. Первый раз до появления джитов и зачислил Яву в разряд полной клиники и сумашедшего пиара, и второй раз после появления ХотСпота... это уже показалось похожим на нечто человеческое, только постоянно не покидает ощущение, что тебя связали по рукам и ногам. Я понимашъ, до этого на разных C/C++ по программировал и еще на десятке языков... Думаю, .Net замечательное средство для подстегивания Сана... может тепрь они начнут устранять дурь мешающую многим программистам.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 20:04
Оценка:
Здравствуйте AndrewVK, Вы писали:

AVK>Кроме того, кластеры наименее эффективный способ распараллеливания вычислений, как с точки зрения эффективности так и с точки зрения надежности и управляемости. SMP-система аналогичной производительности будет дешевле, значительно надежнее, ее проще администрировать. Так что не все так просто. Хотя иногда кластерное решение способно решить проблему.


В общем о чем разговр я уже не понимаю, но после столь смелых заявлений и таких убедительных аргументов дальнейший разговор безполезен. Ты хоть знаешь сколько стоит 8 однопроцесорных машин (без наворотов) и один 8-ми процесорный сервер? И что нужно предпринять чтобы это сервер не сдох от того что сгорел кондер в блоке питания? И как SMP-системы масшатбируются после 8-ми процессоров? Короче, при таких смелых заявлениях нужно хоть как то обосновывать свое мнение.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[13]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: IT Россия linq2db.com
Дата: 25.03.02 20:17
Оценка:
Здравствуйте AndrewVK, Вы писали:

AVK>Ладно, пора завязывать. Мы тут уже совсем не о том о чем начали говорим.


Да уж пора.

AVK>Если хочешь обсудить вопросы проектирования корпоративных систем — давай другой топик заведем.


Думаю не стоит. Видимо у нас разные представления на этот счёт, продиктованные спецификой используемых технологий.
Если нам не помогут, то мы тоже никого не пощадим.
Re[10]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 20:18
Оценка:
Здравствуйте IT, Вы писали:

IT>...Если же ты имел ввиду, что сервер на Sun будет работать аж в 2 раза быстрее W2k+Intel, то во-первых сегодня это уже спорно...


Не ну почему же спорно. Последние эксперементы уже доказывают, что тормозить будет... только Ява. MS тут очередной пресрелиз залудил. По их раскладкам даже обычный ASP + COM+ делает Ява сервера, а ASP.Net делает со свистом. Вот только как я уже говорил — это все бред. Программы писались... пишутся... и будут писаться в расчете на производиетльность и особенности конкретного железа. Если программа не способна паралелиться, то никакой супер пупер Сан или IBM не помогут. Там же SMP/MMP! А целочисленные операции отстают даже от AMD. Если есть параллелизм на уровне сессий, то опять же все будет зависить от крамотности проектирования и изначальной заточенности под этот самый параллеилизм. Система изготавливаемая для пекаря не нуждается во всех этих наворотах. Они попроту дороги в реализации. А система для супер-мега-завода построеная из системы для пекаря просто развалится или потребует больше ресурсов на переписывание. Так что лучше не мучаться. Кесарю ...

AVK>>Кроме того, кластеры наименее эффективный способ распараллеливания вычислений, как с точки зрения эффективности так и с точки зрения надежности и управляемости. SMP-система аналогичной производительности будет дешевле, значительно надежнее, ее проще администрировать. Так что не все так просто. Хотя иногда кластерное решение способно решить проблему.


IT>Распаралеливать можно ещё и задачи. Например можно бизнес-логику по заказу сухариков поставить на один сервер, отгрузку на другой, бухгалтерию на третий, сервер печати на четвёртый, а уже потом смотреть где остаются узкие места.


Ты чё серьезно считаешь, что SMP надежнее кластеров, да еще и, что SMP лучше масшатбируется?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: IT Россия linq2db.com
Дата: 25.03.02 20:42
Оценка:
Здравствуйте VladD2, Вы писали:

IT>>Распаралеливать можно ещё и задачи. Например можно бизнес-логику по заказу сухариков поставить на один сервер, отгрузку на другой, бухгалтерию на третий, сервер печати на четвёртый, а уже потом смотреть где остаются узкие места.


VD>Ты чё серьезно считаешь, что SMP надежнее кластеров, да еще и, что SMP лучше масшатбируется?


Кажется я неудачно применил слово распаралеливать
Я серьёзно считаю, что ещё до того как заниматься переделкой всей архитектуры, кое что (а иногда и очень много) можно выжать из существующей простым выносом некоторых ресурсоёмких и относительно независимых подзадач на отдельные недорогие машины (не процессоры). Например, какую-нибудь тупую обработку данных, поставил машинку в уголок и пусть себе маслает неспеша и главное никого не отвлекая. Можно ставить отдельные app-сервера для отдельных рабочих групп и т.д. Много чего можно до того как будет принято решение купить Крэй и замонстрячить всё под него.
Если нам не помогут, то мы тоже никого не пощадим.
Re[11]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: IT Россия linq2db.com
Дата: 25.03.02 20:49
Оценка:
Здравствуйте VladD2, Вы писали:

VD>Ты чё серьезно считаешь, что SMP надежнее кластеров, да еще и, что SMP лучше масшатбируется?


ЗЫ. За SMP я кажеться вообще ничего не говорил. Это вообще не моё прикладниковое дело. Помнится давным-давно один дядька на конференции кажется Графикон-92 долго рассказывал как они распаралеливают обсчёт графики на транспьютерах. Так вот, собственно о графике он ничего особенного и не говорил, в основном про то как это тяжко всё распаралелить. Повозился и я в своё время с этими транспьютерами, больше желания пока не возникало
Если нам не помогут, то мы тоже никого не пощадим.
Re[9]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 21:23
Оценка:
Здравствуйте AndrewVK, Вы писали:

AVK>1) LinkedList

AVK>2) RandomAccessFile
AVK>3) MemoryMappedFile
AVK>Из API
AVK>1) JDO
AVK>2) EJB
AVK>3) JAAS. Правда что то похожее есть в ASP.NET, но не вебом единым
AVK>Ты не сомневайся, я не первый день пытаюсь что то на дотнете сделать. И искал то что мне нужно очень хорошо.

И что в .Net по твоему для задачь решаемых этим миксом API, классов и отдельных алгоритмов нет замены? Хорошо же ты занимался .Net-ом.

AVK>Господи, да что ты все про веб. Нафига он сухарепекателю нужен? Я про КИС толкую. А там нагрузки более другие нежели для веб серверов. Yahoo в свое время работал на 4 P-90 и обслуживал более миллиона запросов в день.


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

AVK>Я тебе по опыту знаешь что скажу — заводик может так и остаться небольшим, а обороты возрастут на порядок.


Тогда этому сухареклёпу нужно думать как и где нанять нормальных менеджеров, а не вбухивать деньги в софт.

AVK>И именно хорошая КИС поможет ему не раздувать до неимоверных размеров управленческий аппарат. А работяг при хорошем оборудовании много не нужно. Так что КИС для него — вопрос жизни и смерти. В общем вопрос возможности миграции на другую платформу для подобных систем очень важен. Если не веришь — больше ничего доказывать тебе не буду, ибо бесполезно.


А что мне верить... не верить я как бы этим все занимался и знаю, что любая программа — это всего лишь инструмент. К ней голова и руки нужны. В нашей стране большая чатсть предприятий работают на 1C, Бэстах и разных там Галактиках... и ты не поверишь?! Работают и прибыль получают. Хороший менеджер и в Ёкселе все что нжуно (по зарез) посчитат. А похому и супер-пупер КИС не поможет. На западе разные SAP тоже без явы обходятся и все заявляют об ориентации на MS SQL (который сам знаешь на какой платформе работает) заявляют. Короче, я до сих пор не пйму, ну если другим переносимость не нужна, то чё ее так навязывать. Нужна тебе переносимость... ну, дык используй Яву, но не объясняй другим, что это главный критерий (в мире где PS 90%).

AVK>Все три вышеперечисленных не бесплатны и не стоят сотни тысяч. Так что мимо.


Ну, ты цены то обшие назови. Форт вроде стоит, около $2000. Это конечно не сотни тысяч, но примерно на эти деньги можно купить MSDN Universal и плучить весь софт MS, в том числе ОС, серверы [включая SQL Server] и VS.Net верхней редакции. А сколько стоит Together? И что такое IDEA? Мог бы и по подробнее рассказать.

VD>> Их у нас по 80 руб. не продают. :))) Если же сравнить их с тем самым продуктом убогого монополиста... то и Borland-овские продукты конкуренции не выдерживают...

AVK>Т.е. ты считаешь что отсутствие выбора средства разработки это хорошо? Дальнейший разговор похоже лишен смысла.

Не, я о том, что из из чувства протеста, или непостижимой любви к переносимости пользоваься менее удобными средствами я бы не стал. :(

AVK>Это уже не документация а средства ее просмотра. И если ты не знаешь таковых в java это не значит что их нет в природе.


Будь добор, отрой глаза. Что же за чудо средства зарыты от простых смертных так глубоко и зачем?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 21:45
Оценка:
Здравствуйте AndrewVK, Вы писали:

AVK>Да при чем здесь сан. Просто винтел сервера занимают только самый нижний уровень производительности. Это факт. Если я не прав — найди мне коммерческий винтель сервер ну скажем с 32 процессорами, парой десятков гиг оперативки и парой терабайт дисковых накопителей. И никакой кластер тут не поможет ибо эффективность его падает с увеличением количества машин.


Класс! Ты на TCP-тесты ходил смотреть? http://www.tpc.org/tpcc/results/tpcc_perf_results.asp
Особое внимание обрати на колонки: Database, Operating System и TP Monitor.
:)))

AVK>Вот! Об этом я и говорю. Бизнес логику придеться переделывать. И никаким супер-пупер апп-сервером это не сделать. А затраты на существенную переделку софта на порядок выше стоимости любых железок. Да и железку мне установят и настроят за 3 дня без моего участия. А софт будут переделывать месяца 3 в лучшем случае. А потом еще полгода будут глюки ловить.


Ну, бизнес-логику можно и сразу разрабатывать с расчетом на параллелизм, а про 3 дня на какой-нить Fujitsu PRIMEPOWER 2000 с Solaris 8 тебе и за три месяца не поставят. :)
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 21:59
Оценка:
Здравствуйте IT, Вы писали:

IT>Кажется я неудачно применил слово распаралеливать

IT>Я серьёзно считаю, что ещё до того как заниматься переделкой всей архитектуры, кое что (а иногда и очень много) можно выжать из существующей простым выносом некоторых ресурсоёмких и относительно независимых подзадач на отдельные недорогие машины (не процессоры). Например, какую-нибудь тупую обработку данных, поставил машинку в уголок и пусть себе маслает неспеша и главное никого не отвлекая. Можно ставить отдельные app-сервера для отдельных рабочих групп и т.д. Много чего можно до того как будет принято решение купить Крэй и замонстрячить всё под него.

Другой бы спорить начал... кулаками махать... а я так не буду. Я почему-то тоже считаю, что голова — лучшее средство повышение производительности.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: jsdk.jar
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.03.02 22:50
Оценка:
Здравствуйте AndrewVK, Вы писали:

AVK>Вот так и знал что не стоит слово сериализация употреблять. Не сериализация это а персистентность. К примеру сериализуй ты как тебе хочется скажем 1000000 объектов. А потом выбери из них полсотни у которых свойство Prop1 like %XXX%. Теперь понимаешь что никаких форматтеры не помогут, нужен специальный фреймворк.


А ты разницу в производительности прямой работы с SQL и бинднутых бобов сравнивал?

IT>>Насколько мне известно, там внутри под всем этим хозяйством лежит CORBA.

AVK>Не обязательно. Все основные механизмы вполне работают без CORBA.

А ну как поделись. Какая реазация объодится без CORBA-ы?

AVK>Честно говоря долго здесь объяснять. Если интересно — посмотри на java.sun.com. EJB это не просто библиотека, это технология и методология создания и эксплуатации корпоративных систем.


А-га. То-то сплош и рядом вопросы по RMI всплывают. :)

AVK>Ну так из Java тоже можно и до Win32 и даже до COM достучаться, только вот не надо этого делать.


Ну, зачем же так? Не на Яве, а на C... ведь про JNI?

AVK>Вот об этом то я и говорю. Да, я надеюсь будет. Но пока то нет! А в java уже. Об этом я и говорю.


Во-во! И разница в том, что если в .Net чего-нить нет, можно взять из WinAPI (причем в два счета, не используя других языков), а если чёго-нить нет в Яве, то можно смело отдыхать предвкушая трах по обходу проблем. За то переносимость! И фиг с ним, что не одна версия программы никогда не запускалась на чем-нибудь отличном от PC.

AVK>Дело то не в том что технология дотнет в чем то ущербна. Просто у нее нет многолетней истории развития как у java. Она ведь все эти годы не стояла на месте. И мне очень нравится то что дотнет многое перенял. Но мясом он пока что не оброс в должной степени.


Нда... с такими критериями нужно выбирать Паскаль или С. У них история куда больше...
Мяса то у .Net хватает. На рынке програм для клиентских ПК Ява даже рядом не стояла, да и на сервере все очень даже ничего. В области Web-а Ява опять же отдыхает. Как ты думаешь в какую сторону изменится положение через год? Ну, а два?

AVK>Но сервер то по прежнему нативный. Вобщем я не против эволюции. И вполне верю что дотнет в конечном этоге превзойдет java по всем параметрам. Уже сейчас C# заметно удобнее. Но пока для серьезных проектов я бы дотнет применять не торопился бы. Вот для веб решений совсем другое дело.


Значит Web-решения вещь не серьезная. :) Вон IT вообще все хочет не Web-сервисах переписать. :)

AVK>А LinkedList это по сути Queue или Stack но с интерфейсом IList.


А ты что (конкретно) сделать хочешь? Зчем он тебе нужен? И что мешает просто написать это дело самому (так ты хочешь) или просто не сделать сэлф-ссылку в класе?

IT>>То что я в бессильной злобе пытался решить на бете в релизе было пофиксено. А быстрые сервис-паки это неплохо, работают ребята :)

AVK>Хорошо конечно. Просто это доказывает что релиз увы не безглючен.
А что есть хоть одна безглючная программа размеров более чем в 100 000 строк кода? Или глюки исчезают через 5 лет существования продукта?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: jsdk.jar
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 26.03.02 05:40
Оценка:
Здравствуйте VladD2, Вы писали:

VD>Пробывал. Причем на Яве дважды. Первый раз до появления джитов и зачислил Яву в разряд полной клиники и сумашедшего пиара, и второй раз после появления ХотСпота... это уже показалось похожим на нечто человеческое, только постоянно не покидает ощущение, что тебя связали по рукам и ногам. Я понимашъ, до этого на разных C/C++ по программировал и еще на десятке языков...

Я тебя понял. Дело в том что java помимо всего прочего представляет собой еще и методологию программирования, заметно отличную от применяемой в том же С/С++. И если пытаться программировать вразрез с этой методологией — как раз и будет появляться подобное ощущение. Либо ты ее принимаешь либо нет. C# в этом плане чуть менее академичен, но и он много ближе к java нежели к С++. Т.е. на C# таки можно программировать в стиле С++, но при этом все его преимущества теряются.

VD> Думаю, .Net замечательное средство для подстегивания Сана... может тепрь они начнут устранять дурь мешающую многим программистам.

Ну не такая уж там и дурь. Есть две крайности — крайне правильный, чисто объектный и очень строгий язык и язык, не накладывающий практически никаких ограничений. Истина как всегда по середине.
AVK Blog
Re[10]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 26.03.02 05:48
Оценка:
Здравствуйте VladD2, Вы писали:

VD>Здравствуйте AndrewVK, Вы писали:


VD>В общем о чем разговр я уже не понимаю, но после столь смелых заявлений и таких убедительных аргументов дальнейший разговор безполезен. Ты хоть знаешь сколько стоит 8 однопроцесорных машин (без наворотов) и один 8-ми процесорный сервер?

Знаю. А ты? Учти — однопроцессорные машины — это тоже сервера + дорогой коммутатор.
VD> И что нужно предпринять чтобы это сервер не сдох от того что сгорел кондер в блоке питания?
Вот еслки палки. Ты поинтересуйся для интереса чем сервер отличается от обычной машины. Отнюдь не только быстродействием. В частности в 8-мипроцессорных серверах 2 или 4 блока питания. Еще один вопрос — что вероятнее, сгорание одного дорогого блока питания — или одного из 8 подешевле?
VD> И как SMP-системы масшатбируются после 8-ми процессоров?
Лучше чем кластеры. а главное проще.
VD> Короче, при таких смелых заявлениях нужно хоть как то обосновывать свое мнение.
Честно говоря разговор об этом мне не очень интересен. Я для себя этот вопрос в свое время хорошо изучил. Если не веришь — ради бога, из порток выпрыгивать я не стану.
AVK Blog
Re[10]: Зачатки флейма ".Net vs. Java2" -- не выйдет!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 26.03.02 06:14
Оценка:
Здравствуйте VladD2, Вы писали:

VD>Здравствуйте AndrewVK, Вы писали:


AVK>>1) LinkedList

AVK>>2) RandomAccessFile
AVK>>3) MemoryMappedFile
AVK>>Из API
AVK>>1) JDO
AVK>>2) EJB
AVK>>3) JAAS. Правда что то похожее есть в ASP.NET, но не вебом единым
AVK>>Ты не сомневайся, я не первый день пытаюсь что то на дотнете сделать. И искал то что мне нужно очень хорошо.

VD>И что в .Net по твоему для задачь решаемых этим миксом API, классов и отдельных алгоритмов нет замены? Хорошо же ты занимался .Net-ом.

ОК. Давай, расскажи хотя бы про 1 пункт. Как мне на .Net получить LinkedList?

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

Можно. Вот только реальная жизнь увы все красивые планы ломает. Естественно, разрабатывая новую систему нужно уделять очень большое внимание ее архитектуре. Но, в отличие от того же веб софта КИС очень активно видоизменяется в процессе жизнедеятельности. А планировать на 5 лет вперед просто не реально. Крупные фирмы с нуля создаются очень редко, как правило на этих фирмах уже накоплен приличный багаж. Ты предлагаешь все это похерить и переписать все заново. Извини, но ни один нормальный руководитель тебе этого не позволит. И дело даже не во вложеных деньгах. Дело в том что смена информационной системы для крупного предприятия это очень тяжелое испытание. И это чревато потерей денег куда больших нежели стоимость самой разработки. Перепроектировать систему имеет смысл только в том случае когда иными способами улучшения ее работы уже не добиться. И поверь — любой сановский или ибмовский сервер обойдется на порядок дешевле нежели перепроектирование. Зайди в любую более менее серьезную фирму подобного профиля и задай вопрос — увидишь что тебе ответят.
Да и вобще, к корпоративному софту предъявляются совершенно иные требования нежели к десктопному, это другая вселенная со своими законами. И именно на этот софт нацелены все те технологии которые вызывают здесь ожесточенные споры в их нужности.
Ладно, все, на эту тему я больше спорить не буду, ибо не вижу смысла.


AVK>>Я тебе по опыту знаешь что скажу — заводик может так и остаться небольшим, а обороты возрастут на порядок.

VD>Тогда этому сухареклёпу нужно думать как и где нанять нормальных менеджеров, а не вбухивать деньги в софт.
Ему нужно думать и о том и о том.

VD>А что мне верить... не верить я как бы этим все занимался и знаю, что любая программа — это всего лишь инструмент. К ней голова и руки нужны. В нашей стране большая чатсть предприятий работают на 1C, Бэстах и разных там Галактиках... и ты не поверишь?! Работают и прибыль получают.

У меня здесь 1С. Так что поверю.

VD>Хороший менеджер и в Ёкселе все что нжуно (по зарез) посчитат.

В экселе? Эдак несколько сотен заказов в день? Все, я тебя понял. Мы вобще то о разных масштабах говорим. Фактик для примера — на одном предприятии не очень большого размера список тех. операций одного цеха — толмуд больше тысячи листов. Задача — в разумное время посчитать в экселе фактическую себестоимость продукции.

VD> А похому и супер-пупер КИС не поможет. На западе разные SAP тоже без явы обходятся и все заявляют об ориентации на MS SQL (который сам знаешь на какой платформе работает) заявляют.

А не к ночи буде упомянутый SAP зачем то свою SAP DB ваяет

VD> Короче, я до сих пор не пйму, ну если другим переносимость не нужна, то чё ее так навязывать.

А ее никто и не навязывает.

VD> Нужна тебе переносимость... ну, дык используй Яву, но не объясняй другим, что это главный критерий (в мире где PS 90%).

Э нет, ты пожалуйста за меня не говори. Это ты всем доказывал что переносимость нафик никому не нужна. Я тебе и объясняю что иногда она таки нужна. Найди цитату где я говорил что это главный критерий.

AVK>>Все три вышеперечисленных не бесплатны и не стоят сотни тысяч. Так что мимо.


VD>Ну, ты цены то обшие назови. Форт вроде стоит, около $2000. Это конечно не сотни тысяч, но примерно на эти деньги можно купить MSDN Universal и плучить весь софт MS, в том числе ОС, серверы [включая SQL Server] и VS.Net верхней редакции.

Ага, 120-тидневные. А знаешь сколько студия стоит?

VD>>> А сколько стоит Together?

www.togethersoft.com
VD>>> И что такое IDEA? Мог бы и по подробнее рассказать.
www.intellij.com

AVK>>Это уже не документация а средства ее просмотра. И если ты не знаешь таковых в java это не значит что их нет в природе.


VD>Будь добор, отрой глаза. Что же за чудо средства зарыты от простых смертных так глубоко и зачем?

Они не зарыты.
AVK Blog
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.