Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / конечно меня могу принять за тролля! Но... / 23 сообщений из 23, страница 1 из 1
19.06.2012, 09:37:45
    #37843640
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Все началось с того ....
да я и сам уже позабыл с чего все началось :)

есть у меня на работе старенький Socket сервер, написанный на когда-то любимом мною Delphi (ох уж эти далекие времена, писал его и проектировал не я), но вот пришло время и я решил все это переносить в web

т.е. сервер, то хороший работает (ну падает иногда, глючит и настраивать его надо в 10 местах, но работает)
но вот надоело мне до ужаса его настраивать, и бороться с его глюками, ну и просто удивительная по размерам и корявости БД

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

итог таков
хочу переписать сервер на Java, сервер должен принимать сообщение (XML), парсит его и выполнять действия.
в чем загвоздка:

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

2) что лучше использовать ORM или же все таки SQL c учетом того что SQL я знаю неплохо и сейчас используется очень старая СУБД, но планируется переход на более современную, но из той же оперы. Просто нагрузка на БД высокая и не будет ли через чур тяжело крутить ORM (Hibernate к примеру), для 200 000 вставок и примерно в разы больше выборок из БД

3) что все таки посоветуете использовать, может разграничить ядро и web или что можно еще сделать?

собственно вот так вот все выглядит.
P.S. в проектировании приложений такого глобального типа я еще не созрел, так что прошу помощи
может кто еще посоветует в какую сторону хоть обратить внимание.
...
Рейтинг: 0 / 0
19.06.2012, 11:05:35
    #37843837
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
323381) хочется что бы можно было все это как-то динамически развивать т.е. как-то писать обработчики отдельно от основного модуля который будет вызывать их, но при этом искоренить или хотя бы свести к минимуму дублирование кода (не так как сейчас)

Это всё от выбора технологии слабо зависит. В Java все фреймверки стараются быть хоть как-то модульными. Поэтому вопрос не понятен. Если у вас дублирование кода, то что мешает его отрефакторить?

323382) что лучше использовать ORM или же все таки SQL c учетом того что SQL я знаю неплохо и сейчас используется очень старая СУБД, но планируется переход на более современную, но из той же оперы. Просто нагрузка на БД высокая и не будет ли через чур тяжело крутить ORM (Hibernate к примеру), для 200 000 вставок и примерно в разы больше выборок из БД

ORM хорошо подходит для манипуляции "широким" набором связаных записей. Т.е. у вас есть 20-50 таблиц. Данные об одной сущности раскиданы по ним согласно нормализации. И нужно вытянуть это всё в объекты и сохранить обратно. Вот для этого ORM подходит.
Если у вас не нормализированая структура. Если вы оперируете таблицами данных, а не отдельными записями, то тогда ORM не поможет

323383) что все таки посоветуете использовать, может разграничить ядро и web или что можно еще сделать?

Задача не очень ясна. Если это всё на базе HTTP, то я бы браз Spring MVC и прикрутил какой-нибудь XML сериализатор в качестве View.
Если нужне сокет-сервер, то, возможно MINA или Netty. Тут уже нужно смотреть для чего там эти сокеты.
...
Рейтинг: 0 / 0
19.06.2012, 11:32:10
    #37843895
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

немножко поясню:

я хочу сделать web проект, который на мои запросы вида xml будет делать различные действия
ходить через одну дырку (ну или один url кому как (for exmple: http://lockalhost:8080/server))

и я не хочу для создания небольшого обработчика пересоьирать весь проект. от главного сервлета, до самого последнего класса - обработчика (для сборки использую maven который создает war архивы), это что касается 1-го

на счет ORM как раз таки, я создал БД которая нормализованна (более или менее на вкус каждого)
но мне надо в 50% случаев делать вставку в остальных выборку (выборка из разных таблиц по разным критериям), что будет быстрее вставка через SQL или же все таки вставка через ORM тоже касается и выборки. Стоит ли притягивать ORM если вставок в таблицы около 200 000 за 5-8 часов ? или все же обойтись SQL + может быть Spring; это что касается 2-го

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

на счет Spring MVC эм а он то тут как поможет? я не совсем понимаю (может потому что я его только в туториах видел)
...
Рейтинг: 0 / 0
19.06.2012, 11:40:35
    #37843911
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338я хочу сделать web проект, который на мои запросы вида xml будет делать различные действия
ходить через одну дырку (ну или один url кому как (for exmple: http://lockalhost:8080/server))

Tomcat либо Jetty.

32338и я не хочу для создания небольшого обработчика пересоьирать весь проект. от главного сервлета, до самого последнего класса - обработчика (для сборки использую maven который создает war архивы), это что касается 1-го

Не понятно в чем проблема пересобрать проект. Что вы сэкономите, используя динамические модули? Вам тогда, возможно, стоит подключить какой-нибудь скриптовый язык и писать свои обработчики на нём. Не понятно только какую это проблему решит.

32338на счет ORM как раз таки, я создал БД которая нормализованна (более или менее на вкус каждого)
но мне надо в 50% случаев делать вставку в остальных выборку (выборка из разных таблиц по разным критериям), что будет быстрее вставка через SQL или же все таки вставка через ORM тоже касается и выборки. Стоит ли притягивать ORM если вставок в таблицы около 200 000 за 5-8 часов ? или все же обойтись SQL + может быть Spring; это что касается 2-го

Вы меня не читаете. Я выше объяснил по какому критерию стоит выбирать\отказываться от ORM. По тем критериям что вы приводите - разницы между SQL и ORM никакой. 200К записей в течении 5ти часов, или каждые 5 часов в течении минуты?

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

Ничего не понятно.


32338на счет Spring MVC эм а он то тут как поможет? я не совсем понимаю (может потому что я его только в туториах видел)
Это простой web-framework на все случаи жизни, который убирает кучу рутины по сравнению с работой с голыми сервлетами.
...
Рейтинг: 0 / 0
19.06.2012, 11:55:15
    #37843967
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
И каким боком к проекту сокет-сервер? Нужен server-push, очень малые задержки или это так, общий набор терминов?
...
Рейтинг: 0 / 0
19.06.2012, 11:56:02
    #37843972
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
IDVsbruckИ каким боком к проекту сокет-сервер? Нужен server-push, очень малые задержки или это так, общий набор терминов?
server-push тут каким боком? Или ты по инерции предлагаешь?
...
Рейтинг: 0 / 0
19.06.2012, 11:56:37
    #37843975
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

да на счет ORM я погорячился, приношу извинения вы действительно правы он мне поможет при выборке и даже очень сильно

не желание пере собирать проект связанно с тем что в идеале хочется не пере запускать основной модуль =)
(хотя наверное без этого все равно не получится и тогда мои детские амбиции останутся таковыми =) )

на счет 3-го:
наверное стоит попробовать так: есть сервлеты все прекрасно знают что они умеют хранить глобальные объекты ( я их так называю, это то что выше основного метода service), мне как раз надо что бы они хранили эти состояния (это будут настройки) и не перечитывали их из БД.
наверное стоит задать вопрос так, а сможет ли Spring сделать это и по необходимости пере создавать объекты перечитывая настройки из БД? (надеюсь так моя логика будет яснее =))

ну и попутно, что может убрать Spring MVC? (желательно ссылку на русскоязычный ресурс, а то все какие-то непонятные уроки попадаются о том как надо все сделать но без пояснения почему так а не иначе)
...
Рейтинг: 0 / 0
19.06.2012, 11:58:11
    #37843981
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
IDVsbruck,

Socket сервер при том что я собираюсь убить переписав его вот каким он тут боком, просто сказал какая техника использовалась там и что хотелось бы ее повторить тока на java
...
Рейтинг: 0 / 0
19.06.2012, 12:00:35
    #37843994
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowiczserver-push тут каким боком? Или ты по инерции предлагаешь?
Не, постановка задачи - вроде просто проект с веб-мордой. Человек собирается его переписывать (ты даже Мину или Нетти посоветовал). Не пойму назначение этой реализации в таком проекте.
...
Рейтинг: 0 / 0
19.06.2012, 12:04:42
    #37844009
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
IDVsbruckНе, постановка задачи - вроде просто проект с веб-мордой. Человек собирается его переписывать (ты даже Мину или Нетти посоветовал). Не пойму назначение этой реализации в таком проекте.

32338сервер должен принимать сообщение (XML), парсит его и выполнять действия.
Не совсем было понятно хотел ли автор сокет или HTTP. Поэтому и предложил.
...
Рейтинг: 0 / 0
19.06.2012, 12:07:34
    #37844019
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

спасибо я понял, буду стараться яснее излогать свои мысли
...
Рейтинг: 0 / 0
19.06.2012, 12:13:36
    #37844034
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338не желание пере собирать проект связанно с тем что в идеале хочется не пере запускать основной модуль =)
(хотя наверное без этого все равно не получится и тогда мои детские амбиции останутся таковыми =) )

Дык может ну её ту яву тогда? PHP?
...
Рейтинг: 0 / 0
19.06.2012, 12:30:58
    #37844073
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

не хватит с меня PHP надоело....
=)
...
Рейтинг: 0 / 0
19.06.2012, 12:36:17
    #37844084
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338не хватит с меня PHP надоело....
=)
Не понятно что именно ваши модули должны делать. JSP, например, можно в рантайме подменять. Но решит ли это вашу задачу?
Новые классы можно на ходу добавлять проект. Проблема только в том как нучить основной код их находить. Это всё решаемо для конкретных случаев.
...
Рейтинг: 0 / 0
19.06.2012, 12:59:32
    #37844126
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

что делать, сложный вопрос...
начиная от банального поиска в БД заканчивая добавлением информации
генерации некоторого контента (XML контента) бродить по интернету искать нужное =)
работу с подписью клиента... и т.д.
...
Рейтинг: 0 / 0
19.06.2012, 15:36:14
    #37844578
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338Socket сервер при том что я собираюсь убить переписав его вот каким он тут боком, просто сказал какая техника использовалась там и что хотелось бы ее повторить тока на java Add support for the WebSocket ?
...
Рейтинг: 0 / 0
19.06.2012, 17:45:49
    #37844969
Bogdanov Andrey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
BlazkowiczНовые классы можно на ходу добавлять проект. Проблема только в том как нучить основной код их находить. Это всё решаемо для конкретных случаев.Да и существующие можно обновлять. Тот же jsp отнюдь не по секретной технологии это делает.
...
Рейтинг: 0 / 0
19.06.2012, 18:05:45
    #37845016
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338хочу переписать сервер на Java, сервер должен принимать сообщение (XML), парсит его и выполнять действия.
почему не проще:
сервер (ВЕБ) должен принимать сообщение (HTTP-POST\...), НЕ парсит его, и выполнять действия (VIEW)
...
Рейтинг: 0 / 0
19.06.2012, 18:18:21
    #37845042
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Bogdanov AndreyДа и существующие можно обновлять.
Можно. Но автору рановато вникать в детали загрузки классов и подключаемой архитектуры в Java. Поэтому я и советовал посмотреть в сторону интерпретируемых скриптов, например.

Bogdanov AndreyТот же jsp отнюдь не по секретной технологии это делает.
Но и не по самой удобной для использования в других задачах.
...
Рейтинг: 0 / 0
19.06.2012, 20:18:11
    #37845202
fixxer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338не желание пере собирать проект связанно с тем что в идеале хочется не пере запускать основной модуль =)
(хотя наверное без этого все равно не получится и тогда мои детские амбиции останутся таковыми =) )


Погуглите OSGi
...
Рейтинг: 0 / 0
20.06.2012, 08:58:03
    #37845580
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

мне кажется вы уже о чем-то о своем начали =)

а по делу ведь, ведь реально OSGI, ведь по сути класс-обработчик это плагин получается...

только вот как это все реализовать.... пошел гуглить еще вернусь =)
...
Рейтинг: 0 / 0
20.06.2012, 09:53:24
    #37845684
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
32338а по делу ведь, ведь реально OSGI, ведь по сути класс-обработчик это плагин получается...

OSGi слишком продвинутая технология для такой простой потребоности, как ваша. Поэтому и не вижу смысла её рекомендовать. Хотя есть и более простые системы ( http://jpf.sourceforge.net/). Но я подозревают что связавшись с ними вы будете больше времени тратить на решение проблем самих плагинов, чем на решение вашей задачи.
...
Рейтинг: 0 / 0
20.06.2012, 09:55:59
    #37845694
32338
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
конечно меня могу принять за тролля! Но...
Blazkowicz,

спасибо за заботу о моем времени, и ведь действительно проще все сделать на Spring MVC + Hibernate (хотя с хибернайтом тут еще стоит много раз подумать) и не запариваться, все равно обработчики писать раз в месяц придется если не реже
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / конечно меня могу принять за тролля! Но... / 23 сообщений из 23, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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