|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
maxlsd Я не хотел подменять тему. Просто хотел обратить внимание что DatumNode иметь гибкую плагинов и позволяет ходить не только к реляционным базам, но и к другим источникам данных. DatumNode отличается не только и сколько тем что использует WCF (с таким же успехом можно было использовать что-то другое). В первую очередь важна его архитектура (метабаза, система безопасности, плагины и.т.д.) и технология разработки которую он предлагает. А вот это важное замечание. Дело в том предлагаемый к обсуждению продукт нивелирует разницу между природой источников данных. Будь это реляционная БД, или объектная, или иерархическая - разницы нет. А следовательно невозможно выполнять произвольные запросы к данным и использовать оптимизацию, в чем так сильны реляционные Базы. А значит программист будет ходить только по тропочкам проложенным разработчиком соотвествующего источника данных. Отсюда и проистекает применимость такого продукта - разработать некоторую функциональность с использованием хранимых процедур БД и быстренько представить ее виде набора WebServices. Не больше не меньше. А дальше вступают в действие механизмы архитектуры SOА, как-то спецификации WS-Ыecurity,-Transaction, Reliability, повидимому реализованные в WCF. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2007, 15:20 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
ВМоисеев Пожалуйста, не горячитесь. Не сбивайтесь на ликбез и не стремитесь показать знания общих вопросов. Не обижайтесь, а покажите изюминки именно Вашего подхода к построению информационных систем. Имейте ввиду - среди Ваших коллег уже есть вполне убежденные (и вполне вменяемые ) в том, что системы на основе распределённых сервисов имеют право на существование. Думаю, что вызов метода удаленного сервиса (располагающегося в локальной и/или глобальной сети) с возвратом результата или ошибки, это то что минимально необходимо для построения подобных систем. Какая инфраструктура предоставляет подобный минимум - вопрос вторичный, правда, если дело не касается взаимодействия гетерогенных инфраструктур. В данном вопросе я определенные надежды возлагаю на моно. Иногда этот вызов может быть транзитивным (у меня так) - между сервисом, генерирующим сообщение-запрос, и сервисом, генерирующим сообщение-ответ, может находится промежуточный сервис. Сообщения шифруются. Промежуточный сервис не должен иметь воэможности шифрования. Следствие - сообщения (у меня) это byte[]. Работа с защищенными каналами в практическом плане - бо-о-о-льшая возня. В некоторых задачах, где на нижнем уровне имется локальная сеть или всего один компьютер, а транспортный канал (интернет) работает не стабильно, работа с единой точкой входа не представляется возможной. С Вашим подходом обязательно ознакомлюсь, очень интересно. Попробую раскрыть особенности нашей архитектуры: Основная часть системы - это метабаза. Метабаза представляет собой дерево объектов (Решение -> Проект -> Сущность -> Команда-> Параметр). Также в метабазе хранятся описание источников данных, роли и пользователи. По умолчанию, в качестве ролей и пользователей используются группы и пользователи Windows. Но можно настроить свой провайдер, например, хранить пользователей и их роли в какой либо СУБД. Каждый из объектов метабазы имеет свой ACL. Источник данных – представляет собой объект, в котором хранятся необходимые данные (Провайдер, Строка соединения и другие параметры) для подключения к СУБД или другим источникам данных. Для того чтобы, обращаться к данным - каждый из объектов (Решение -> Проект -> Сущность -> Команда) может иметь одну или несколько ссылок на источник данных. Ссылка на источник данных представляет собой объект в котором помимо самой ссылки на источник может хранится часть строки соединения к источнику данных. Если, например, у команды нет ссылок на источники данных, то используются ссылки на источники из сущности, если и там нет то из проекта, и в конце если нет нигде то из решения. Если у объекта больше чем одна ссылка на источник и пользователь имеет к ним доступ, то используется ссылка с наибольшим приоритетом. У ссылки на источник данных может быть одно или несколько соединений. Соединение – объект метабазы которой может храниться часть строки соединения к источнику данных. Соответственно если их несколько, ты выбирается соединение с наибольшим приоритетом доступное данному пользователю. Обращение сервису представляет вызов метода Execute где одним из параметров является строку запроса (которая собственно и определяет что мы хотим получить) следующего вида: [Ссылка на источник данных].[Соединение].[Решение].[Проект].[Сущность].[Команда] Строка запроса может иметь и такой вид (наиболее часто используемый): *.*.[Решение].[Проект].[Сущность].[Команда] - в таком случае источник данных и соединение выбирается автоматически в зависимости от прав пользователя и приоритета объектов. Естественно, чтобы запрос к сервису выполнился у пользователя должен быть права на решение, проект, сущность и команду. А также права и на параметры команды, которые он хочет задать, иначе будут использоваться для значения параметров по умолчанию. Пример можно посмотреть по ссылке Мне кажется он, достаточно наглядно показывает преимущества нашего подхода. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2007, 16:00 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
blinded maxlsd Я не хотел подменять тему. Просто хотел обратить внимание что DatumNode иметь гибкую плагинов и позволяет ходить не только к реляционным базам, но и к другим источникам данных. DatumNode отличается не только и сколько тем что использует WCF (с таким же успехом можно было использовать что-то другое). В первую очередь важна его архитектура (метабаза, система безопасности, плагины и.т.д.) и технология разработки которую он предлагает. А вот это важное замечание. Дело в том предлагаемый к обсуждению продукт нивелирует разницу между природой источников данных. Будь это реляционная БД, или объектная, или иерархическая - разницы нет. А следовательно невозможно выполнять произвольные запросы к данным и использовать оптимизацию, в чем так сильны реляционные Базы. А значит программист будет ходить только по тропочкам проложенным разработчиком соотвествующего источника данных. Отсюда и проистекает применимость такого продукта - разработать некоторую функциональность с использованием хранимых процедур БД и быстренько представить ее виде набора WebServices. Не больше не меньше. А дальше вступают в действие механизмы архитектуры SOА, как-то спецификации WS-Ыecurity,-Transaction, Reliability, повидимому реализованные в WCF. Мне кажется Вы ошибаетесь, я не вижу никаких ограничений. Приведите пример, пожалуйста. Или Вы хотите чтобы разработчик клиентской части напрямую ходил к таблицам и к другим объектам СУБД? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2007, 16:05 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
blinded А вот это важное замечание. Дело в том предлагаемый к обсуждению продукт нивелирует разницу между природой источников данных. Будь это реляционная БД, или объектная, или иерархическая - разницы нет. А следовательно невозможно выполнять произвольные запросы к данным и использовать оптимизацию, в чем так сильны реляционные Базы. А значит программист будет ходить только по тропочкам проложенным разработчиком соотвествующего источника данных. Отсюда и проистекает применимость такого продукта - разработать некоторую функциональность с использованием хранимых процедур БД и быстренько представить ее виде набора WebServices. Не больше не меньше. А дальше вступают в действие механизмы архитектуры SOА, как-то спецификации WS-Ыecurity,-Transaction, Reliability, повидимому реализованные в WCF. Важное замечание не набор сервисов, а один сервис. У нас сейчас работает всего один экземпляр DatumNode Service и он обслуживает несколько десятков систем (~10 источников данных) и обрабатывает примерно 5 млн запросов в день (плюс собираются логи и статистика). И это на Pentium 3 1GHZ правда двухпроцессорный. Нагрузка на сервер в пике не бывает больше 50%. Сейчас мы планируем поднять еще один экземпляр datumnode service на другой машине (будет ходить к той же самой метабазе) и объединим их в кластер, настроем load balancing. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2007, 16:17 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
iscrafm какой производитель СУБД больше травится? oracle хорошо справляется с распред. БД ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2007, 10:59 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
frm iscrafm какой производитель СУБД больше травится? oracle хорошо справляется с распред. БД не спорю. только со своими. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2007, 12:10 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
>maxlsd >Пример можно посмотреть по ... Можно ли получить ссылку на данный документ в русскоязычном варианте? С уважением, Владимир. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2007, 14:17 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
о какой интеграции идёт речь, если программка работает только на венде? так и напишите, дескать, сделали программку, помогает из .NET обращаться к MS SQL. причём здесь SOA и пр.? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2007, 14:31 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
iscrafmне спорю. только со своими. С чужими то же. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2007, 16:08 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
ВМоисеев Можно ли получить ссылку на данный документ в русскоязычном варианте? С уважением, Владимир. На русском пока нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2007, 01:12 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
chroо какой интеграции идёт речь, если программка работает только на венде? так и напишите, дескать, сделали программку, помогает из .NET обращаться к MS SQL. причём здесь SOA и пр.? Вы читать умеете или только писать? И при чем здесь Windows и как может помешать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2007, 01:14 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
maxlsd<...>Критика и замечания принимаются здесь.<...> На сайте нет "портфолио" платформы. Известно ли хотя бы одно удачное внедрение системы, созданной на основании этой платформы, в которой было бы >1'000 пользователей, из которых постоянно работают >500? Кстати, как обстоят дела с балансировкой нагрузки? Я спрашиваю потому, что считаю, что высокоуровневые фреймворки, абстракции от БД, расширение стандартных механизмов назначения прав доступа, кэширования и журналирования не способствуют эффективности, а "мельчание" сервисов и их размещение на отдельных серверах с некоторого момента упирается в пропускную способность сети и плохо влияет на архитектуру. maxlsdНа данный момент это решении успешно используется в одной крупной компании. С помощью него реализовано десятки систем, которые взаимодействуют с огромным количеством разнородных источников данных. Сейчас им пользуются около десятка разработчиков.В какой компании? Какие именно системы? 10 разработчиков (ничего себе сообщество :) ) на >20 систем... Либо все разработчики с приставкой "супер", либо системы не очень крупные и сложные. --- Не слишком ли рано приступили к коммерциализации? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2007, 13:59 |
|
Ваши мнения о платформе для разработки сервис ориентированных приложений
|
|||
---|---|---|---|
#18+
AlexTheRaven На сайте нет "портфолио" платформы. Известно ли хотя бы одно удачное внедрение системы, созданной на основании этой платформы, в которой было бы >1'000 пользователей, из которых постоянно работают >500? Кстати, как обстоят дела с балансировкой нагрузки? Я спрашиваю потому, что считаю, что высокоуровневые фреймворки, абстракции от БД, расширение стандартных механизмов назначения прав доступа, кэширования и журналирования не способствуют эффективности, а "мельчание" сервисов и их размещение на отдельных серверах с некоторого момента упирается в пропускную способность сети и плохо влияет на архитектуру. Портфолио пока нет, но обязательно будет. Платформа успешна внедрена и используется в качестве основной для разработки приложений в одной крупной компании. Пользователей значительно больше 1000. В день система обрабатывает около 5 млн. запросов и это количество постоянно увеличивается. Для балансировки нагрузки используется Load Balancing в Windows 2003. Платформа никак не является узким местом, а наоборот значительно увеличила эффективность приложений работающих с данными. Надеюсь, Ваше мнение изменится, если вы поближе познакомитесь с платформой. AlexTheRaven maxlsdНа данный момент это решении успешно используется в одной крупной компании. С помощью него реализовано десятки систем, которые взаимодействуют с огромным количеством разнородных источников данных. Сейчас им пользуются около десятка разработчиков. В какой компании? Какие именно системы? Компания телекоммуникационная. Разрабатываются: порталы, а также сервисы, веб-армы, гуи-приложения для различных внутренних систем (биллинг, техучет и т.д.) и обеспечения технологических процессов. AlexTheRaven 10 разработчиков (ничего себе сообщество :) ) на >20 систем... Либо все разработчики с приставкой "супер", либо системы не очень крупные и сложные. Всего разработчиков ~50. Из них около 10 пишет интерфейсы и взаимодействует DatumNode. Остальные пишут серверную часть на стороне Oracle и других СУБД. AlexTheRaven Не слишком ли рано приступили к коммерциализации? В промышленную эксплуатацию система вышла в феврале. Мне, кажется, коммерциализации приступили во время :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2007, 15:16 |
|
|
start [/forum/topic.php?fid=33&msg=34961788&tid=1548933]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
132ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 269ms |
total: | 501ms |
0 / 0 |