Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.11.2012, 16:18
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 21  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Мой пост не является универсальным решением, и всегда нужно отталкивать от рода задач поставленных на программное обеспечение.
Что конкретно вас интересует? Можно конечно же использовать СОМЕТ-сервер но мне достаточно было использовать протокол передачи данных AMF3 вместе с лонг-пулом где это нужно было.
кратко о лонг-пуле

Добавлено через 2 минуты
Конечно нужно добавить еще репликацию с шардингом но это уже другой вопрос, так как не всегда изначально есть н-серверов.

Добавлено через 1 час 5 минут
Цитата:
Сообщение от Krusty Посмотреть сообщение
А, ограничения архитектуры.
Какие ограничения архитектуры?
__________________
return this...

Старый 22.11.2012, 08:51
kackbip вне форума Посмотреть профиль Отправить личное сообщение для kackbip Найти все сообщения от kackbip
  № 22  
Ответить с цитированием
kackbip
 
Аватар для kackbip

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
В монгоДБ есть индекс. Почему она не нормальная?
Про индекс я протупил.
Основной ее недостаток в отсутствии SQL. Можно более-менее без проблем менять одну СУБД на другую, если они SQL. Но как только нам нужно перейти на NoSQL, тут же приходится переписать все модели. Хотя в ORM в playframework и сделана поддрежка mongodb, но это скорее исключение из правил.

Старый 22.11.2012, 12:49
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 23  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Вы, видимо, никогда не меняли одну СУБД на другую (замена сама по себе уже свидетельствует о огромном недостатке проектирования, и выбирать что-то на основе SQL только из-за возможности миграции на другой SQL продукт - опять-таки неверно в корне). Если вам кажется, что миграция между oracle, mysql, постгресс и mssql выполняется просто - это заблуждение. Вроде как заменил СУБД, а синтаксис тот же. Совершенно не так.

Добавлено через 6 минут
Цитата:
Сообщение от AlexCooper Посмотреть сообщение
Какие ограничения архитектуры?
Не умеет кэшировать некоторые запросы. Логично отсутствие кэша в случае с NOW(), например. Отсутствие кэширования на сложных join - это именно ограничения самого mysql - нет никаких теоретических ограничений, что бы это реализовать.

Старый 22.11.2012, 13:13
kackbip вне форума Посмотреть профиль Отправить личное сообщение для kackbip Найти все сообщения от kackbip
  № 24  
Ответить с цитированием
kackbip
 
Аватар для kackbip

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Цитата:
Вы, видимо, никогда не меняли одну СУБД на другую (замена сама по себе уже свидетельствует о огромном недостатке проектирования, и выбирать что-то на основе SQL только из-за возможности миграции на другой SQL продукт - опять-таки неверно в корне). Если вам кажется, что миграция между oracle, mysql, постгресс и mssql выполняется просто - это заблуждение. Вроде как заменил СУБД, а синтаксис тот же. Совершенно не так.
Да я вобще профан в этом деле. Дискутирую ради получения опыта

Но все таки возразу:
1) Если вы создаете некий модуль или фреймворк, то почему бы не реализовать совместимость с разными СУБД?
2) Если вы выбираете SQL, то у вас по-крайней мере будет возможность легкой миграции. У каждой NoSQL же интерфейс свой особенный.
3) В чем заключается сложность миграции с одной sql субд на другую? За исключением нюансов, большая часть запросов скорее всего не изменится.

Старый 22.11.2012, 15:37
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 25  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Цитата:
Сообщение от Krusty Посмотреть сообщение
Вы, видимо, никогда не меняли одну СУБД на другую (замена сама по себе уже свидетельствует о огромном недостатке проектирования, и выбирать что-то на основе SQL только из-за возможности миграции на другой SQL продукт - опять-таки неверно в корне). Если вам кажется, что миграция между oracle, mysql, постгресс и mssql выполняется просто - это заблуждение. Вроде как заменил СУБД, а синтаксис тот же. Совершенно не так.

Добавлено через 6 минут

Не умеет кэшировать некоторые запросы. Логично отсутствие кэша в случае с NOW(), например. Отсутствие кэширования на сложных join - это именно ограничения самого mysql - нет никаких теоретических ограничений, что бы это реализовать.
На данном этапе миграция происходит успешно, так как получилось организовать структуру в nosql базе так как было очень затратно а mysql. Да конечно не просто взять и перенести все, но оно себя оправдывает.
Посмотрите на структуру.

В MySQL для реализации подобного нужно было создавать три отдельных таблицы (картинки, лайки, комменты) и при получении информации нужно было делать выбор по всем трем таблицам плюс строковые обработки. В MongoDB все гараздо проще и поиск происходит в разы быстрее. Причём скажу что кэш монго работает на отлично, подтверждаю тем что результат одного и того же запроса выполняется с ускорением в 2-3 раза. (тесты).

Добавлено через 14 минут
Не могу не согласиться с тем что были проблемы в проектировании но над проектом работаем с прошлых бря-месяцев и сам проект уже видоизменялся н-количество раз. На ряду с увеличением нагрузок решили перенести проблемные места на монго. Теперь у нас получилась комбинированная система с MySQL и NoSQL базой данных.

p.s. to be continue... =)
Миниатюры
Нажмите на изображение для увеличения
Название: screen.png
Просмотров: 55
Размер:	29.0 Кб
ID:	28704  
__________________
return this...


Последний раз редактировалось AlexCooper; 23.11.2012 в 12:52.
Старый 23.11.2012, 00:20
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 26  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
Сообщение от kackbip Посмотреть сообщение
Про индекс я протупил.
Основной ее недостаток в отсутствии SQL. Можно более-менее без проблем менять одну СУБД на другую, если они SQL. Но как только нам нужно перейти на NoSQL, тут же приходится переписать все модели. Хотя в ORM в playframework и сделана поддрежка mongodb, но это скорее исключение из правил.
SQL разный у разных СУБД. Придется всё равно переписывать адаптеры или-что-там к этой самой БД, а SQL там или NoSQL особой роли не сыграет.
То есть, по хорошему: в модели должен быть метод select(name:String, value:String), а что он будет формировать -
Код:
mongoCollection.find({name: value})
или
Код:
sqlBase.execute(select * from table where name=value)
- дело модели.

Старый 08.07.2014, 17:17
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 27  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
Цитата:
flash->amfphp->mongoDB
А можно про это поподробнее? Сейчас изучаю монгу и появилось желание реализовать эту связку? Но конечно прежде чем писать свой, хотелось бы посмотреть на чужие варианты.

Старый 11.07.2014, 08:46
bifidokk вне форума Посмотреть профиль Отправить личное сообщение для bifidokk Найти все сообщения от bifidokk
  № 28  
Ответить с цитированием
bifidokk
 
Аватар для bifidokk

Регистрация: Jan 2011
Сообщений: 200
Цитата:
Сообщение от PainKiller Посмотреть сообщение
А можно про это поподробнее? Сейчас изучаю монгу и появилось желание реализовать эту связку? Но конечно прежде чем писать свой, хотелось бы посмотреть на чужие варианты.
а можно поподробнее рассказать, что вам именно в этой связке непонятно?

Старый 12.07.2014, 11:51
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 29  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
Мне в этой связке все понятно. Просто интересует вопрос (а проверить руки не дошли) получается ли на стороне явы откастовать приходящий в amf джисон к типу BasicBDObject? Вот на этот код как раз и хотелось бы взглянуть, если получается то это очень и очень круто. Хотя это не принципиально, даже если и не получается, просто придется писать лишний код.

Добавлено через 3 минуты
Но это если говорить про яву. А под влиянием монги, я взялся за Node.js, работать с монгой из явы это немножко извращение, с яваскриптом все значительно проще.

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:57.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:57.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.