powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Система электронных платежей
17 сообщений из 17, страница 1 из 1
Система электронных платежей
    #36949485
Lord British
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Встала задача реализации системы электронных платежей для оплаты всевозможных служб в пределах города.

Система примитивная: профиль пользователя, электронный счет в нашей системе, осуществление операций оплаты со счета и ввода денег на счет.

Хочется сделать так:

реализовать SOAP/REST over HTTP API и к нему написать несколько "морд": web, desktop, mobile (android, symbian, iOS)

Возник ряд вопросов:

1) Балансировка нагрузки/масштабируемость сервиса. Хочется сервисную часть (морда, api) крутить на несколких серверах. Соединения к которым разбрасываются каким-нибудь балансировщиком аппаратным или программным. Кто в теме как это обычно выглядит? Хочется по единому DNS имени попадать на один из серверов эдакого HA (high avail...) кластера, прозрачно дщля пользователя. Т. е. его перекидывает балансировщик сам.

2) Балансировка нагрузки/масштабируемость БД. Что лучше применить? Шардинг какой-нибудь дикий с репликациями? Или кластер предлагаемый той или иной СУБД. Рассматривается использование Oracle или MS SQL.

Спасибо. Буду рад любой информации.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951159
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lord British
1) Балансировка нагрузки/масштабируемость сервиса. Хочется сервисную часть (морда, api) крутить на несколких серверах. Соединения к которым разбрасываются каким-нибудь балансировщиком аппаратным или программным. Кто в теме как это обычно выглядит? Хочется по единому DNS имени попадать на один из серверов эдакого HA (high avail...) кластера, прозрачно дщля пользователя. Т. е. его перекидывает балансировщик сам.


Хмм... Ну вот так, как Вы описали, так и делается:-) В принципе, можно вообще сделать чисто на уровне TCP/IP. Например, не секрет, что одному имени DNS не обязательно должен соответствовать один адрес. Ну вот хоть yandex попробуйте попинговать и посмотреть на IP-адреса. Ну или nslookup глянуть на ту же тему. Но это такой вариант не очень, если у Вас цель HA кластер.
Можно использовать специальный софт какой-нибудь. К примеру,
Apache .

С аппаратными я хуже знаком, но и там есть решения. Подороже выйдет только, я боюсь.

Lord British
2) Балансировка нагрузки/масштабируемость БД. Что лучше применить? Шардинг какой-нибудь дикий с репликациями? Или кластер предлагаемый той или иной СУБД. Рассматривается использование Oracle или MS SQL.

Спасибо. Буду рад любой информации.

Есть опыт работы с Oracle RAC. Реально решает такую задачу. Единственно что, это совсем не то, что просто на одну машину - и ставиться сложнее и поддерживать сложнее и информации/специалистов меньше. Плюс по-любому тогда нужен SAN. Про MSSQL не знаю, но думаю, что хуже будет, из общих соображений. SAN все равно нужен будет.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951293
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
CQRS + ESB + Oчередь сообщений. В nServiceBus или в других аналогах, есть полный комплект для этих целей(WCF,Gateway для доступа по HTTP, балансировщик нагрузок, поддерживаются очереди сообщений основных вендеров). В результате: отказоустойчивость, маштабируемость, минимальные требования к железу.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951306
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
i,

А морда?
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951402
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
Haueri,

А морда?

WCF = SOAP. Морда может быть любой
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951535
Lord British
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hauer

Есть опыт работы с Oracle RAC. Реально решает такую задачу. Единственно что, это совсем не то, что просто на одну машину - и ставиться сложнее и поддерживать сложнее и информации/специалистов меньше. Плюс по-любому тогда нужен SAN. Про MSSQL не знаю, но думаю, что хуже будет, из общих соображений. SAN все равно нужен будет.



У меня был опыт установки Oracle RAC на виртуалки с общим виртуальным хранилищем. Примерно представляю как выглядит. Но к сожалению в продакшне никогда не видел. Работал только со standby/primary. Но это больше относится ко времени восстановления. Кроме того, полагаю, что необходимо придерживаться некоторых требований при написании приложения, чтобы не завалить этот кластер (использование последовательностей например...). Если поделитесь соображениями по этому поводу буду признателен.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951615
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iHaueri,

А морда?

WCF = SOAP. Морда может быть любой

Ну так о том и вопрос, кто будет балансировать нагрузку на морду. Или считается, что морда нисколько не нагружается?
...
Рейтинг: 0 / 0
Система электронных платежей
    #36951631
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lord BritishHauer

Есть опыт работы с Oracle RAC. Реально решает такую задачу. Единственно что, это совсем не то, что просто на одну машину - и ставиться сложнее и поддерживать сложнее и информации/специалистов меньше. Плюс по-любому тогда нужен SAN. Про MSSQL не знаю, но думаю, что хуже будет, из общих соображений. SAN все равно нужен будет.



У меня был опыт установки Oracle RAC на виртуалки с общим виртуальным хранилищем. Примерно представляю как выглядит. Но к сожалению в продакшне никогда не видел. Работал только со standby/primary. Но это больше относится ко времени восстановления. Кроме того, полагаю, что необходимо придерживаться некоторых требований при написании приложения, чтобы не завалить этот кластер (использование последовательностей например...). Если поделитесь соображениями по этому поводу буду признателен.

Да нет, особых требований никаких к приложениям нет (с чего бы быть каким-то проблемам с последовательностями?). Stanby/primary это все-таки не совсем то, мне кажется. RAC состоит из ноудов, которые в принципе равноценны. Т.е. обращение целиком к кластеру, точно так же. как и к одному серверу (connection string только отличается).
...
Рейтинг: 0 / 0
Система электронных платежей
    #36953554
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, тот тоже повторюсь - для платежной системы в пределах города подходят любые прямолинейные решения, нагрузка очень маленькая.

При средней доходности системы платежей, в масштабах города Oracle RAC, скорее всего, выйдет за пределы бюджета.
Вообще, основное требование к БД для платежной системы - это возможность организовать более-менее осмысленный HA - а тут, в общем, кроме Postgress 9.0 (слишком свежего) и DB2 Express C с годовой поддержкой ничего и нет, увы.

Application Layer, в общем, все равно на чем делать - что разработчику знакомо, то и использовать. Нагрузки, как я уже говорил, сравнительно небольшие.

Да, кстати, надо отметить, что для целей масштабирования платежной системы RAC малопригоден - так как основная проблема будет, по идее, в масштабировании update, а тут RAC ничем не поможет, если даже не помешает.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36953576
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DPH3При средней доходности системы платежей, в масштабах города Oracle RAC, скорее всего, выйдет за пределы бюджета.

Собственно, я про RAC только исходя из:

Lord British
Рассматривается использование Oracle или MS SQL.


А так, конечно, это огромная нагрузка на бюджет. Хотя.... Местами Oracle может проявить гибкость в плане лицензирования, мне думается.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36953633
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hauer
Рассматривается использование Oracle или MS SQL.

Ну, судя по всему, или с другими не знакомы или проект попильный, денег не считают.
Тогда, наверно, Oracle EE - оптимальное решение, дороже уже сложно что-нибудь впихнуть.
Где-то за 200+K$



А так, конечно, это огромная нагрузка на бюджет. Хотя.... Местами Oracle может проявить гибкость в плане лицензирования, мне думается.
Ну, на таком заказе где-то 30% скидки получить получится. Вот больше, насколько я знаю, уже сложнее. Впрочем, при больших заказах там и 75% скидки бывают и 90% :)
Но если проект "откатный", то зачем скидки?
...
Рейтинг: 0 / 0
Система электронных платежей
    #36953836
Hauer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DPH3,

Я видел и 70 на не таком уж большом заказе. Но это вариант типа "всё или ничего", т.е. берите 200К и давайте нам, что мы хотим или вообще ничего не купим.
...
Рейтинг: 0 / 0
Система электронных платежей
    #36953925
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hauer,
Охотно верю. Но тут-то заказ даже по чистым ценам где-то на 200K$, не больше (3 машинки по 2 ядра - две в RAC для локального HA и нормального обновления версий, одна - в другой ДЦ с DataGuard), т.е. 6 лицензий EE. А, еще поддержка, конечно...

До аналогичного решения на DB2 (где-то около 12К$ или вообще 4k$ в год) все-таки не дойдет. Да и ручное на Postgress будет подешевле :)
...
Рейтинг: 0 / 0
Система электронных платежей
    #36954004
Пробегал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите расшифоровку сокращению "НА" ? И есть ли более подробное описание решения на PostgreSQL и DB2 ? И какая в этом случае СУБД более подходит ?
...
Рейтинг: 0 / 0
Система электронных платежей
    #36954027
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробегал,


HA = High Availability, т.е. высокая доступность.

Аналоги Ораклового DataGuard, в общем, все примерно про одно и то же.
В DB2 это называется HADR, доступно при покупке годовой поддержки для бесплатной версии DB2 Express C (т.е. 2k$ в год). Описание - на ibm.com, например.

В PostrgresSQL в 9ой версии появилось несколько механизмов для обеспечения высокой доступности, аналогичные DataGuard, но в продакшне, насколько я знаю, их еще нет.

Я бы для платежной системы использовал бы DB2. Но если уже есть хороший DBA по Postgress - то можно и Postgress. Oracle - только если есть на это деньги (и, опять таки, очень хороший DBA - настройка в оракле DataGuard - вещь очень не простая).
...
Рейтинг: 0 / 0
Система электронных платежей
    #36954188
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lord British2) Балансировка нагрузки/масштабируемость БД. Что лучше применить? Шардинг какой-нибудь дикий с репликациями? Или кластер предлагаемый той или иной СУБД. Рассматривается использование Oracle или MS SQL.

Спасибо. Буду рад любой информации.А как возникла идея масштабировать нагрузку БД? Планируются в перспективе миллиарды платежей в день?

Зачем вам платить лишнее??? Или просто поучиться?
...
Рейтинг: 0 / 0
Система электронных платежей
    #36955897
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgLord British2) Балансировка нагрузки/масштабируемость БД. Что лучше применить? Шардинг какой-нибудь дикий с репликациями? Или кластер предлагаемый той или иной СУБД. Рассматривается использование Oracle или MS SQL.

Спасибо. Буду рад любой информации.А как возникла идея масштабировать нагрузку БД? Планируются в перспективе миллиарды платежей в день?

Зачем вам платить лишнее??? Или просто поучиться?
Кстати, хороший вопрос
предположим, в городе 50 000 000 людей (понаехали) и каждый (включая новорожденных) решил в конце месяца сделать по 100 платежей...
получится 5 000 000 000 транзакций... с одной стороны много...
с другой стороны - транзакции примитивные, да и понаедут до такого количества платежей явно не в этом десятилетии
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Система электронных платежей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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