:: Visual Foxpro, Foxpro for DOS
Перевод на веб-клиента приложения VFP
Божья_коровка
Автор

Сообщений: 25720
Дата регистрации: 23.08.2001
Всем привет!

Знаю, что на форуме время от времени возникают подобные темы и обсуждаются. То что нашла перечитала, но в мозгу никак не может сложится чёткая картинка, поэтому нужна ваша помощь

Исходные данные, приложение на VFP8/дельфи2010, БД Оракл. Начальство хочет "перевести" на веб-клиент. Мне нужно сориентироваться и понять, что необходимо для такой вот "хотелки", чётко по пунктам.

1. Насколько я понимаю, клиентскую часть необходимо переписывать с нуля выбрав один из языков для веба, к примеру ASP.Net или PHP, всю логику приложения переносить на сервер.
2. Нужен ли свой хостинг? Если нужен, то какой?
3. Что еще нужно?

Теперь по варианту, много писали про Citrix - www.citrix.ru
1. Покупается необходимое ПО, разворачивается и переписывать работающее приложение не нужно. Работа по принципу "удалённого стола".
2. Насколько поняла из предыдущих сообщений на форуме у большинства возникает проблема с квалификацией админов.
3. Что упускаю? Если кто уже юзает этот вариант, поделитесь чем хороша и плоха эта технология? Плюсы\Минусы, какие проблемы возникали.


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...




Исправлено 4 раз(а). Последнее : Божья_коровка, 03.12.17 14:08
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Taran

Сообщений: 13623
Откуда: Красноярск
Дата регистрации: 16.01.2008
По пункту 1.
Плюс еще HTML+CSS + JavaScript. Особенно при выборе варианта PHP.
PHP по большому счету не относится к клиентской части. Но, тем не менее, участвует в формировании интерфейса.
Писать на чистом HTML+CSS+JS+PHP несколько утомительно и "не модно".
Необходимо использовать некоторые фреймворки и пр. Коих вагон и маленькая тележка.

2.Что имеется в виду под "свой хостинг". Ежели сервер на своей географической территории, то совсем не обязательно.
У провайдера может быть виртуальный хостинг, или физически отдельная машина.
Соответственно ресурсы либо используешь часть, либо всё железо твоё. И соответственно устанавливаемый софт и настройки. Либо ограничения общей политики, либо всё что угодно.
Ну и естественно разный уровень администрирования и цены за хостинг.
Виртуальный дешевле и проще.

---
И не забываем про нескромность желаний людей и руководства в частности.
Порой бывает, что говоря о ВЕБ-приложении имеется в виду банальная удаленная БД, доступная из любой точки.
При этом морда может остаться и на фоксе. Что конкретно всё упрощает.
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Божья_коровка
Автор

Сообщений: 25720
Дата регистрации: 23.08.2001
Taran
И не забываем про нескромность желаний людей и руководства в частности.
Порой бывает, что говоря о ВЕБ-приложении имеется в виду банальная удаленная БД, доступная из любой точки.
При этом морда может остаться и на фоксе. Что конкретно всё упрощает.
Это то да Дело в том, что пока мои не знают что хотят конкретно, я конечно задала уточняющие вопросы, будут думать. Я пока рассматриваю сложности и возможности реализации всех вариантов, чтобы в случае чего, быть готовой ко всем "тяжким"


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Pliskin

Сообщений: 2959
Откуда: Новосибирск
Дата регистрации: 19.11.2003
У нас то же самое!
Хотим сделать аренду ПО через интернет, пока всё как-то латентно развивается...
Идея: через удалённый рабочий стол запускать программу для пользователя и считать время.
Уже нашли хостинг, где дают виртуальные Windows, дальше - все и так в запарке, некогда и некому заниматься.
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Под Citrix только в чистой теории "ничего переписывать не надо". Косяки повылазят и придётся фиксить - от "глупой" привычки писать в папку где лежит сам exe (например какие-то настройки/параметры), до тупо проблем совместной/одновременной работы N копий программы на одной машине (например, единые имена "временных" файлов, размещаемых к тому же не в GETENV("Temp") а в каком-нить "C:\отчёты").
Вычислительные мощности, естественно, под такое решение нужны очень некислые - на порядки больше чем для схожего "настоящего веб-приложения". Конечно если речь про 10-20 одновременно работающих юзеров, это не так важно, но если намечаются тысячи, и тем более десятки/сотни тысяч - тут Citrix явно проиграет.

В любом случае RDP НЕ является веб-решением. Это именно RDP...

Для настоящего веб нынче есть много всяких технологий. Я бы посоветовал обратить внимание на архитектуру микро-сервисов. Особенно если разработка предполагается коллективная, компонент/функций в ПО масса, базы разнородные и слабо друг с другом связанные. Подход позволяет ваять компоненты на чём угодно, т.е. вполне нормально для этого подхода иметь смесь из дотнета, руби, питона, дельфи и даже фокса (хотя он, как "серверное приложение", очень неочень на сегодня - да и RESTful сервис напрямую не нём не сделать, нужна будет прослойка для обработки HTTP части).
Главный плюс микросервисов, как я это понимаю, он ОБЯЗЫВАЕТ разработчиков соблюдать модульность - т.е. в модуле связанном, скажем, с "товарами" не будет никакой хрени связанной со складом, клиентом, накладными и тому подобным - и программа не превратится в жуткое нагромождение и переплетение разнородных частей - всё останется "разложенным по полочкам". Конечно, без адекватного архитектора и постановщика это "не взлетит", равно как и любой другой способ разработки


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Божья_коровка
Автор

Сообщений: 25720
Дата регистрации: 23.08.2001
Ага, про Citrix поняла. У нас кстати как раз очень большое кол-во юзеров

А вот про
Igor Korolyov
Я бы посоветовал обратить внимание на архитектуру микро-сервисов.
Погуглила инфу, читаю, просвещаюсь


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Taran

Сообщений: 13623
Откуда: Красноярск
Дата регистрации: 16.01.2008
К слову про распределение на модули.
Некоторые IDE, распространенные при разработке под WEB, выкидывают предупреждения при длине метода более 20 строк или при длине класса более 200 строк.
Так что все к этому и толкает. Небольшие модули и краткие методы.
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
А как делают что-то типа "куски кода которые всем подойдут, и которые главный разработчик будет менять", при совместной разработке? Это про то, что "каждый микромодуль не знает о наличии соседнего"... Т.е. "подпрограммы" по-нашему, "фреймверк".
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Taran

Сообщений: 13623
Откуда: Красноярск
Дата регистрации: 16.01.2008
of63
А как делают что-то типа "куски кода которые всем подойдут, и которые главный разработчик будет менять", при совместной разработке? Это про то, что "каждый микромодуль не знает о наличии соседнего"... Т.е. "подпрограммы" по-нашему, "фреймверк".

Про соседний не знает и бог с ним. А вот про класс-родитель - знает.
Т.е. наследование и пр.. все это есть. Более того, объявления классов и методов гораздо правильней и безопасней нежели в VFP.
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Дурацкий вопрос, навскидку, какой взять продукт, "язык" (или готовый фремверк?) технологию?), чтобы сделать "Hello, world", и который далее довести до мелкого сервиса с веб-доступом к своей БД?
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
of63
Т.е. "подпрограммы" по-нашему, "фреймверк".
Это делают (и должны делать) не прикладные программисты. Нынче этих самых "фреймворков" - как грязи. Выбирай любой и вперёд. Даже MS в той же студии затачивает на определённый фреймворк (свой MVC), или даёт возможность подключить готовый. Когда нужно соорудить проект за месяц (в лучшем случае), гораздо полезнее потратить всё время на "предметную" часть, а не на конструирование своего велосипеда фреймворка.

Taran
екоторые IDE, распространенные при разработке под WEB, выкидывают предупреждения при длине метода более 20 строк или при длине класса более 200 строк.
К сожалению "формальным" способом победить сильное зацепление (coupling) не получится. Ни ограничения, ни метрики кода сами по себе не запретят сделать класс в котором будут смешаны мухи, котлеты, короли и капуста - и всё "в рамках 20 строк"...
При том это ж не сразу возникает - это со временем - в изначально "хороший" класс при наращивании/изменении функционала проникает "грязь" - не свойственная данной части проекта логика. Микросервис этому по своему препятствует - т.к. не даёт никому даже теоретической возможности "влезть внутрь" - только то что выставлено через простой (я бы даже сказал сверх-простой) АПИ. И утянуть кусок кода себе не выйдет тоже - в частности по причине разных БД в разных сервисах Прощай единая мега-связанная схема на 100500 таблиц где "есть всё".
Естественно это больно бьёт по производительности в некоторых случаях. Но плюсы могут перевесить...


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
of63
который далее довести до мелкого сервиса с веб-доступом к своей БД?
Если речь про микросервисы, то ответ "никакой". Эта архитектура НЕ предполагает строительства приложения "вокруг БД", тем более существующей. Она основана на строительстве ПО вокруг "функций". А уж как там конкретная функция реализует свою логику, где хранит данные (если вообще хранит - может она банально данные с того же egrul таскает, или из гуглокарт) - вопрос далеко не первый.


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
А секретность данных? Вот у меня прога с персональными данными (ПД) работает. Если я размещу БД с ПД на сервере провайдера - то это опасно, даже непозволительно.
- Если сайт (программа фактически на машине юзера, открывшего интернет-страницу) будет доступаться до моей БД по интернету (по какому адресу?), то это проблемы моей БД, и наших безопасников?
- Если я размещу все ПД (всю БД) на провайдере... то так не делают, вероятно?
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Taran

Сообщений: 13623
Откуда: Красноярск
Дата регистрации: 16.01.2008
Igor Korolyov
К сожалению "формальным" способом победить сильное зацепление (coupling) не получится. ... Микросервис этому по своему препятствует - т.к. не даёт никому даже теоретической возможности "влезть внутрь" - только то что выставлено через простой (я бы даже сказал сверх-простой) АПИ.

Ну это понятно. В некоторой степени у меня еще и на VFP было типа такого.
В частности ни одна форма, ни один прикладной модуль не мог ничего никуда ни записать самостоятельно, ни взять из БД. Только через некоторый... Ну теперь я знаю, что это называется Микросервис. ;)
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
of63
А секретность данных? Вот у меня прога с персональными данными (ПД) работает.
Не в курсе - там больше формальные правила, чем "технические" решения важны, насколько я понимаю. Т.е. это не привычная "безопасность данных компании" а нечто в совсем другой плоскости...
А в общем и целом... Ну т.к. всякие гиганты онлайна не шибко парятся по поводу этого - нетфликс, гугл и амазон - по сути пионеры этой архитектуры - то, вероятно, они предлагают определённые решения и в сфере безопасности.
Я так понимаю что под ПД понимается очень узкий круг данных - грубо говоря (в старой терминологии) 10 таблиц из общих 500 в системе. Так что тут, я полагаю, у микросервисов будут неоспоримые преимущества - вынеся ВСЮ работу с ПД в один сервис и защитив его (в т.ч. "сертифицировав" его у КейДжиБи) можно спокойно играться/развивать/расширять систему, не трогая этот сервис. Тогда как для традиционного "монолита", как я понимаю, всю мутотень и бюрократию придётся повторять при каждом изменении в ПО. Новая функция - давай по новой доказывай что "с ПД всё ок". А так - пока сам модуль работы с ПД не меняется, не надо к бюрократам ходить Всё "уже защищено" - а прочие компоненты системы работают, как и положено, "с обезличенными данными" - id юзера, который можно соотнести с ПД только и исключительно через модуль этих самых ПД...


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Да нет, как раз бюрократия - дело десятое. Просто чтобы реально данные не скопировали с хостинга, или с предоставленного доступа сервера с ПД в интернет.
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Офа удивительно бодр после такого славного юбилея
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Taran

Сообщений: 13623
Откуда: Красноярск
Дата регистрации: 16.01.2008
of63
Просто чтобы реально данные не скопировали с хостинга, или с предоставленного доступа сервера с ПД в интернет.

Тут два момента. Юзеры обычным способом и сам хостер.
Ежели физически выделенный сервер, то и защита от хостера более надежна чем при виртуальном.

Насчет слива БД.
Прямой доступ к БД предоставляет далеко не всякий хостер. И, как правило, только при дополнительных настройках.
В обычном виде запрос идет через HTTP. На сервере идет проверка параметров и отдается только требуемая часть данных. В том или ином виде. Либо страница целиком, либо часть страницы, либо данные в том или ином виде, JSON/XML.
Т.е. просто вот взять и запросить некоторую таблицу целиком не получится.
Соответственно даже часть данных чтобы получить необходимо пройти некоторую процедуру.
Либо авторизация, либо какие коды.
Это уже сам придумываешь как.

++
Ну и развивая тему Микросервисов.
Когда у меня был дома проводной интернет и белый IP, то я разворачивал дома/офисе свой веб-сервер. На котором и хранились данные и пр.
Запрос от юзера отправляется к серверу хостера на фиксированный открытый адрес.
От него идет запрос на мой домашний сервер и ответ обратно по цепочке. Т.е. хостер так-же не имеет доступа ни к БД, ни к прочей бизнес-логике.
А я имею возможность модификации своего сервера не трогая интерфейс связи с конечным потребителем услуг. Ну и решаю вопросы объема БД и резервного копирования самостоятельно.
Естественно при этом теряется некоторое время на второй запрос.



Исправлено 1 раз(а). Последнее : Taran, 05.12.17 08:55
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
Дмитрий Петров

Сообщений: 3066
Откуда: Пермь
Дата регистрации: 09.07.2001
По теме безопасности добавлю чуть из своей практики.
Делали прием оплат в своею учетную систему от агентов по приему платежей через веб-сервис
и WCF сервис в дальнейшем.(читай Микросервисы в терминах данной темы)

Основной принцип такой, что в каждый метод передается параметр, по которому можно понять
"свой" клиент обратился или "чужой".
В принципе можно было сделать на уровне сертификатов безопасности, у нас было сделано так- по колхозному.

Договорились от алгоритме формирования "подписи", который знаем мы и тот кто отправляет данные.
Все строковые представления параметров склеивались в одну строку, и справа добавлялся пароль известный только нам двоим.
Из этой строки отправитель получает MD5 хеш и передает эту "подпись" наряду с другими параметрами.

На принимающей стороне по такому же алгоритму строится хеш для проверки пакета.
Если хеши совпадают- значит свой клиент.
Не оригинально конечно, но имеет право на жизнь
Ratings: 0 negative/0 positive
Re: Перевод на веб-клиента приложения VFP
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Посмотрев отладчиком текст HTML-страницы (которая обращается в микросервис за данными) в ней видно этот пароль? (И видно что он MD5-сворачивается ?)
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 17 kornienko_ru FaustGreen dafni_2004 PaulWist  (Гостей: 13)

© 2000-2024 Fox Club 
Яндекс.Метрика