Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите определиться с технологиями для проекта, Социальная сеть 
V
    Опции темы
CaligoSpiritus
Дата 19.9.2008, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 8.12.2006

Репутация: 1
Всего: 2



Уже два года программирую на Java, но никаких "больших" проектов еще не делал. Решил, что уже пора. И вот, с сотрудником решили написать небольшую социальную сеть (по крайней мере, для начала - небольшую smile ).
Технологии намереваемся использовать следующие:
Spring Framework, Spring MVC, Hibernate для работы с БД, Velocity для  темплейтинга.
Однако, на счёт остальных компонентов пока сомневаемся.
Для пользовательского (web-browser) решено использовать AJAX, но какой движок выбрать? В "Pro Spring" советуют DWR, а какие ещё есть варианты, какие преимущества?
У сети будет тяжёлая фото-составляющая. Отсюда вопрос, как лучше хранить изображения - в файловой системе или в БД? (БД планируем использовать Oracle).
PM WWW Skype GTalk   Вверх
Llucas
Дата 22.9.2008, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


J2EE Developer
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 29.11.2006
Где: Одесса

Репутация: нет
Всего: нет



Ну все это хорошо и очень даже удобно использовать. Но вот DWR  я бы не рекомендовал.  Лучше просто использовать какую-нибудь javascript библиотеку (ExtJs, JQuery), где очень удобно делать AJAX-запросы. На мой взгляд это надежнее.
PM MAIL WWW   Вверх
CaligoSpiritus
Дата 22.9.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 8.12.2006

Репутация: 1
Всего: 2



На первый взгляд понравилась jQuery, но на сколько удобно её можно интегрировать со Spring MVC? Ведь там будут не просто AJAX запросы какого-то контента, вроде кусочка html или картинки, это будет запрос к слою сервисов. (Не уверен, на сколько это умный вопрос - с разработкой на JS ранее не сталкивался). В случае DWR всё понятно - вызываем функцию (на подобие RPC) она отрабатывает и возвращает результат, DWR занимается маршаллизацией этого действа.
PM WWW Skype GTalk   Вверх
dEEp
Дата 22.9.2008, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 9.5.2007

Репутация: нет
Всего: нет



а я бы не рекомендовал Hibernate. лучше юзать обычные JDBC запросы. Потому как при использовании Hibernate ваша соц.сеть упадёт при большом кол-ве online пользователей. Hibernate чаще всего применяют для админских целей (страниц).
PM MAIL   Вверх
AntonSaburov
Дата 22.9.2008, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 8
Всего: 118



Не надо путать DWR и тот же ExtJS - это разные вещи.
DWR служит для удобного интерфейса JavaScript обхектов на Java - т.е. на серверную часть. А ExtJS - это чистый JavaScript. Так что они прекрасно совмещаются. У нас в проекте как раз такая связка работает. Да еще и JSF подмешана. На серверной стороне Spring, Hibernate.
И вполне пристойно все получается.
PM MAIL WWW ICQ   Вверх
seth
Дата 22.9.2008, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 4.6.2006

Репутация: 1
Всего: 1



Цитата(dEEp @ 22.9.2008,  12:38)
а я бы не рекомендовал Hibernate. лучше юзать обычные JDBC запросы. Потому как при использовании Hibernate ваша соц.сеть упадёт при большом кол-ве online пользователей. Hibernate чаще всего применяют для админских целей (страниц).

не думаю что она куда то упадет именно из-за хибернейта, не вижу причин... smile

а насчет самому писать запросы - так это много времени уйдет ;)

а так посоветовал бы Flex как бэкэнд (ну или что то более экзотическое из РИА)

а еще посоветовал бы юзать платформу facebook если хочется соц сеть ;) идея как для обучения в принципе сойдет но имхо можно придумать что то более интересное smile

Это сообщение отредактировал(а) seth - 22.9.2008, 15:18


--------------------
PM MAIL   Вверх
dEEp
Дата 22.9.2008, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 9.5.2007

Репутация: нет
Всего: нет



[QUOTE=seth,22.9.2008,  15:16]
Цитата(dEEp @ 22.9.2008,  12:38)
а насчет самому писать запросы - так это много времени уйдет ;)

Писать самому долго??? О_о Не сказал бы. Всё зависит от вашего уровня знаний. 


Лан, это уже offtopic идёт...

Это сообщение отредактировал(а) dEEp - 22.9.2008, 15:22
PM MAIL   Вверх
powerOn
Дата 22.9.2008, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 28
Всего: 159



Цитата(dEEp @  22.9.2008,  13:38 Найти цитируемый пост)
а я бы не рекомендовал Hibernate. лучше юзать обычные JDBC запросы. Потому как при использовании Hibernate ваша соц.сеть упадёт при большом кол-ве online пользователей. Hibernate чаще всего применяют для админских целей (страниц). 


Были прецеденты? Каковы причины? 
Интересно очень, ибо сами в проекте расчитанном на большое количество пользователей используем JPA на базе Hibernate. Было бы круто узнать про грабли чтоб потом не напороться. smile


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
seth
Дата 23.9.2008, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 4.6.2006

Репутация: 1
Всего: 1



[QUOTE=dEEp,22.9.2008,  15:22]
Цитата(seth @ 22.9.2008,  15:16)
Цитата(dEEp @ 22.9.2008,  12:38)
а насчет самому писать запросы - так это много времени уйдет ;)

Писать самому долго??? О_о Не сказал бы. Всё зависит от вашего уровня знаний. 


Лан, это уже offtopic идёт...

тут дело не в уровне знаний а в технологии - SQL хороший язык только не для всего ;)
а для работы с объектами (да еще и имеющих сложные иерархии наследования) и связями между ними уж больно долго будут писатся все необходимые запросы из-за их большого колличества и сложности...
когда на хибернейте вобщемто генерация кода и мэппингов решит много проблем ;)


--------------------
PM MAIL   Вверх
DimW
Дата 23.9.2008, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1330
Регистрация: 24.2.2005
Где: Орёл

Репутация: 3
Всего: 44



Цитата(powerOn @  22.9.2008,  20:22 Найти цитируемый пост)
Было бы круто узнать про грабли чтоб потом не напороться.  


используя Hibernate у вас нет возможности проконтролировать и изменить сценарий выполнения запроса. 
это ограничение как раз таки приводит к падению производительности на БД сервере.
возможность влиять на план выполнения запроса является фундаментальной стартегией тюнинга запросов в оракле.

ссылка для автора топика, читать "Подход с использованием принципа черного ящика": http://www.citforum.ru/database/oracle/kyte/
CaligoSpiritus, поскольку ты выбрал именно оракл, то либо ты следуешь советам Т. Кайта, либо просто моменяй СУБД.

Цитата(seth @  22.9.2008,  15:16 Найти цитируемый пост)
а насчет самому писать запросы - так это много времени уйдет ;)

а сэкономленное время приумножим и потратим на переделку системы в самое неподходящее время, т.е. в момент когда ею действительно начнут интересоваться.
PM MAIL ICQ   Вверх
v2v
Дата 23.9.2008, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: 9
Всего: 56



для оракла существует аналог хибернейт , звётся он TOPLink.


--------------------
PM   Вверх
DimW
Дата 23.9.2008, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1330
Регистрация: 24.2.2005
Где: Орёл

Репутация: 3
Всего: 44



Цитата(v2v @  23.9.2008,  13:27 Найти цитируемый пост)
звётся он TOPLink

в TOPLink есть возможность менять запрос, или он так же генерируется как в хибернейт?
PM MAIL ICQ   Вверх
v2v
Дата 23.9.2008, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: 9
Всего: 56



Цитата(DimW @  23.9.2008,  13:35 Найти цитируемый пост)
так же генерируется как в хибернейт

да, 
но
DimW, в хибернейт тоже есть возможность менять запрос smile




--------------------
PM   Вверх
DimW
Дата 23.9.2008, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1330
Регистрация: 24.2.2005
Где: Орёл

Репутация: 3
Всего: 44



Цитата(v2v @  23.9.2008,  14:05 Найти цитируемый пост)
в хибернейт тоже есть возможность менять запрос 

ок, тогда зайду с другой стороны:
если есть необходимость каждый раз менять запрос по причине того что меня не устраивает тот что сгенерил хибернейт, имеет ли смысл его вобще использовать, что я выиграю в этом случае?
PM MAIL ICQ   Вверх
Vasay
Дата 23.9.2008, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 18
Всего: 73



А социальная сеть будет открытая, или закрытая (только для зарегистрированных пользователей)?

Есть необходимость индексации проекта поисковиками?
Если есть - читаем про СЕО и ограничиваем применение ajax только там, где это не вредит СЕО.

 А JSF вообще лучше обходить стороной, мало  того что с СЕО несовместимо, так пользователи материться будут - ни ссылку другу не пошлешь, ни в избранное сохранишь....


--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1142 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.