Ах ынтырпрайз, ынтырпрайз. Слово то какое красивое. Вот его и лепят направо и налево. В общем, столкнулся я с одной ынтырпрайзной системой в исполнении русских ынтырпрайзных кодеров. Итак, приступим. Краткое описание системы:
Есть торговая точка, на ней ставятся компоненты: контроллер оборудования (на него заводятся кассы, терминалы оплаты и т.п.), сервер приложений и база данных. Данные со всех торговых точек заливаются в одну большую центральную базу, где потом дообсчитываются. Центральная база - под 3000 таблиц, оракел, все дела. На объекте обсчитывается только количество товара, деньги и всякие мелочи. Ну 50-60 таблиц максимум.
Как поступают нормальные люди? Они делают на объектах маленькую упрощенную донельзя базу, в которой ведутся только нужные операции. Но... Мы ведь работаем с русским ынтырпрайзом, который «в целях унификации» сделал базу торговой точки полностью совпадающей по структуре с центральной. В результате в каждом сраном магазине где торгуют презервативами и шоколадками, необходимо поставить сервер оракла(!). Ынтырпрайз - это вам не хухры-мухры. Хрен с ним, с ораклом - это не так страшно. Страшно то, что сервер только один на объекте, и бэкапы базы делаются на тот же диск в другой каталог...
Сервер приложений. Он конечно самописный. На передовых технологиях, на .NET естественно (ынтырпрайз ведь!). Естественно, что сервер приложений теперь работает под виндой. Как мы разворачиваем сервер для каждого нового магазина? Мы берем сервер уже существующего и клонируем его диски, епта! «Почему???» спросите вы? Потому, что компоненты необходимые для его работы, надо ставить в строго определенном порядке. Если изменить порядок - сервер приложений крашится и глючит. Вот. И потом даже если в правильном порядке всё снова заинсталить - он всё равно уже крашится и глючит. А мы, идиоты, тут о каких-то package manager'ах рассуждаем, репозиториях и зависимостях.
Вот такой вот русский энтерпрайз - жестокий, бессмысленный и беспощадный :-)