Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / самодельная JVM / 12 сообщений из 12, страница 1 из 1
05.11.2013, 19:04:39
    #38453598
ghoully
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
Добрый день!
Изучаю С/С++ и Java. Есть идея написать open source java vartual machine, только чтобы она работала на нескольких компьютерах одновременно. Устанавливаем ее на компьютеры, настраиваем и на любом запускаем программы на java, при этом, она сама распараллеливает потоки по разным физическим машинам. Что-то вроде java cluster virtual machine. Общение между разными узлами* планирую сделать на IP. Как вам идея? Если кто-то хочет поучаствовать пишите, так же предложения/пожелания.
Основные принципы:
автор- Все узлы равноправны, нет ни мастер ни слейв
- Параметры взаимодействия с аппаратной частью (сеть, файловая система и т.д.) настраиваются.
- JVM должна уметь самостоятельно обновлять ПО, на ней работающее без перезапуска
- Возможность создания групп из узлов и их специальное конфигурирование
- Наверное, еще много чего...


*узел - физически отдельный компьютер (или виртуалка) на котором установлена специальная JVM.

К концу года планирую сделать сайт и опубликовать немного кода.

Платформа Linux 64.
...
Рейтинг: 0 / 0
05.11.2013, 19:16:13
    #38453609
DoSOfRedRiver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
ghoully,

Весьма сомнительная затея.
Не будут ли все ресурсы уходить на распараллеливание и передачу данных?
В чём преимущество такой машины перед традиционными средствами распараллеливания?
Как будете параллелить всё без мастер узла?
Как насчёт всяких data race

ghoullyJVM должна уметь самостоятельно обновлять ПО, на ней работающее без перезапуска
Вот это вообще непонятно как работать будет.
...
Рейтинг: 0 / 0
05.11.2013, 19:26:45
    #38453621
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
ghoully, ты попробуй просто реализовать app-сервер в режиме кластера на базе имеющейся Java
Все механизмы (network, multitrheading) там уже есть. Я тебе гарантирую массу гемора
который тебя обломает.

А уж когда реализуешь - то пробуй (ш)кодить свою JVM. Кстати все JVM проходят определённую
сертификацию чтобы гордо носить своё название. Это тоже облом и гемор. И занимаются этим
сообщества а не одиночки.
...
Рейтинг: 0 / 0
05.11.2013, 19:45:47
    #38453638
cdtyjv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
ghoully ,
Идея высокая и интересная. Но совершенно оторванная от реальности. Для достижения подобных вещей есть уже масса распределенных кэшей и гридов, которые принципиально ничем не отличаются от того, что предлагаете вы. Просто они написаны на Java, а вы хотите написать это на сях.

Примеры:
Hadoop
Storm
Terracota
Hazelcast
Gigaspaces
GridGain

И еще с десяток проектов поменьше. Смысл делать такие вещи на сях, и зашивать в JVMку - ну хз, очень сомнительно. В чем профит?

И есть такое ощущение, что вы недооцениваете сложность такого рода задач. Ну это субъективно.
...
Рейтинг: 0 / 0
05.11.2013, 21:57:23
    #38453735
rfq
rfq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
Трэш и угар. Два потока, взаимодействующих через общий объект, попали на разные машины. Этот объект теперь туду-сюда гоняется по сети. Время взаимодействия выросло с 1 микросекунды до нескольких миллисекунд. Соответственно в сотни раз упала производительность. Уходить надо от общей памяти.
...
Рейтинг: 0 / 0
06.11.2013, 00:53:42
    #38453854
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
К трэшу и угару добавляется содомия. Ненулевая вероятность что одна из нод в сети ушла в down.
Далее - таймаут. Протокол аварийного восстановления. И жёсткие ограничения на саму возможность
восстановиться. Требование сериализируемости для всего-всего.
...
Рейтинг: 0 / 0
06.11.2013, 18:46:22
    #38455062
Лагман
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
mayton,


maytonодна из нод в сети ушла в down
Ноды должны будут писать что-то типа журнала транзакций или своего дампа в общее место, чтобы какой-нибудь "Мастер" мог поднять другую ноду вместо упавшей. Естественно, это выглядит как-то не очень, при большом размере памяти ноды. Однако если сделать ноды очень мелкими, то может проканать. Хотя тогда уже получится не JVM а кластер нанонод для распределенных вычислений.
...
Рейтинг: 0 / 0
06.11.2013, 19:28:39
    #38455102
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
ghoullyИзучаю С/С++ и Java. Есть идея написать open source java vartual machine...
Такая маленькая-маленькая задачка, просто крохотная. Как раз, что бы изучить C/C++ и Java
...
Рейтинг: 0 / 0
06.11.2013, 19:48:51
    #38455129
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
Перед тем как писать свою JVM неплохо-бы изучить исходники OpenJDK. Это так... для затравки.
Чтобы проникнуться с "глыботой и шыриной".
...
Рейтинг: 0 / 0
06.11.2013, 20:26:29
    #38455166
cdtyjv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
ЛагманНоды должны будут писать что-то типа журнала транзакций или своего дампа в общее место, чтобы какой-нибудь "Мастер" мог поднять другую ноду вместо упавшей. Естественно, это выглядит как-то не очень, при большом размере памяти ноды. Однако если сделать ноды очень мелкими, то может проканать. Хотя тогда уже получится не JVM а кластер нанонод для распределенных вычислений.Да здрасти, у вас тогда производительность будет на нуле. Такие наивные решения в мире распределнных вычислений не катят.
...
Рейтинг: 0 / 0
07.11.2013, 12:33:17
    #38455868
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
самодельная JVM
Вспомнилось:
В 1986 году флагман советского автопрома посетил М. С. Горбачев. И с ходу предложил заводчанам стать законодателями мировой автомобильной моды. Словом, догнать и перегнать...
Видео, было б в тему, но к сожалению я не нашел его.

Иными словами, ваше желание изучения плюсожабства не соотносится с маштабом задачи для этого выбраной.

Кстати, небольших и средних jvm полно, некоторые из них даже собираются и (частично) работают, некоторые надо доводить напильником. Так что если вы немножко уменьшите свои хотелки и откажетесь от идей догнать и перегнать, стать флагманом мирового автопрома, то сделать свою jvm вы сможете, теоретически. Или например адаптировать одну из существующих под 1.7 формат байткода. Это более-менее реальные вменяемые задачи, и если человек грамотный и у него есть на это свободное время и он любитель "поманьячить за компом", то такое он сможет.
...
Рейтинг: 0 / 0
08.11.2013, 16:04:55
    #38458126
самодельная JVM
Народ, вы еще не поняли откуда ноги растут?
Все эти обновления без перезапуска и т.д.
Автор начитался про эрланг и решил запилить виртуальную машину по типу эрланга, но только для Java.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / самодельная JVM / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]