TPS база данных через облако
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
У вас tps падает при работе в файл-сервером режиме, то есть по сети. Я пишу про терминальный сервер, то есть локальную работу. В файл-серверном режиме у нас никто не работает, просто смысла нет. Разницу между локальной и сетевой работой объяснять не надо, надеюсь. Или все таки до сих пор кто-то не понимает?
Сравнивать терминальный и sql сервера задача неблагодарная, все зависит от задач. Если у меня 30 пользователей, то выгоднее запускать и поддерживать приложение на одном компьютере, чем на 30. Потом, на моё восприятие, это не очень хорошо делать бизнес логику на скриптовом языке, тем более, зарубаться на неявные планы выполнения запросов за пределами приложения и вне его контроля. Опять таки, у кого-то могут быть другие взгляды, это его личное мнение. У Критора очень простое по функционалу приложение, как он сам писал. Если попробует реализовать, к примеру, расчёт наценки методом фифо или определение оплаченных накладных с учётом возвратов, корректировок задним числом и прочих нюансов, критичных для бизнеса наших клиентов, то, возможно, задумается, что не все так просто и однозначно, как ему кажется.
Между sqlite и tps принципиальная разница в том, что sqlite на период записи блокирует работу всех других пользователей, и читателей, и писателей. Tps на период записи блокирует только других писателей, читатели не ждут. Параллельная работа читателей реализуется в обоих случаях. Если учесть, что запись выполняется достаточно быстро (к примеру, сотые доли секунды) , то можно прикинуть, сколько пользователей будет комфортно работать. Ещё надо учесть, что при работе с sqlite не обязательно все хранить в одном физическом файле (который блокируется при записи). Разумеется, речь про sqlite, а не про кларионовский драйвер, который делали в SV. Я не вижу смысла в его использовании, тем более, что там проблемы с кириллицей.
Сравнивать терминальный и sql сервера задача неблагодарная, все зависит от задач. Если у меня 30 пользователей, то выгоднее запускать и поддерживать приложение на одном компьютере, чем на 30. Потом, на моё восприятие, это не очень хорошо делать бизнес логику на скриптовом языке, тем более, зарубаться на неявные планы выполнения запросов за пределами приложения и вне его контроля. Опять таки, у кого-то могут быть другие взгляды, это его личное мнение. У Критора очень простое по функционалу приложение, как он сам писал. Если попробует реализовать, к примеру, расчёт наценки методом фифо или определение оплаченных накладных с учётом возвратов, корректировок задним числом и прочих нюансов, критичных для бизнеса наших клиентов, то, возможно, задумается, что не все так просто и однозначно, как ему кажется.
Между sqlite и tps принципиальная разница в том, что sqlite на период записи блокирует работу всех других пользователей, и читателей, и писателей. Tps на период записи блокирует только других писателей, читатели не ждут. Параллельная работа читателей реализуется в обоих случаях. Если учесть, что запись выполняется достаточно быстро (к примеру, сотые доли секунды) , то можно прикинуть, сколько пользователей будет комфортно работать. Ещё надо учесть, что при работе с sqlite не обязательно все хранить в одном физическом файле (который блокируется при записи). Разумеется, речь про sqlite, а не про кларионовский драйвер, который делали в SV. Я не вижу смысла в его использовании, тем более, что там проблемы с кириллицей.
C6/C11, ШВС, tps/btrieve.
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1379
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 7 раз
- Поблагодарили: 1 раз
- Контактная информация:
TPS база данных через облако
То что мне присылают на лечение, сплошь однопользовательское. Работают локально. Падает. И это ж не значит что падает каждый день. Пусть раз в год. Только это остановка бизнеса, лечить то некому
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Такое можно представить, если вырубают питание, когда данные на записались на диск с кэша винды. Иногда ещё антивирь может заблокировать файлы, но по моему, поломок это не вызывало. На серверах все таки попроще с этим, там хотя бы бесперебойнки стоят и люди вменяемые работают, если не выделенный.
Встройте автоматическое восстановление данных tpsfix, как Игорь предложил. У меня такое тоже есть на всякий случай, хотя практически не пользуются.
Встройте автоматическое восстановление данных tpsfix, как Игорь предложил. У меня такое тоже есть на всякий случай, хотя практически не пользуются.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Вообще, если на компьютере помойка и за этим никто не следит, то тут ничто не спасёт, периодически будут проблемы. И диск накрыться может, и кулер на материнке сдохнуть, и вирусняк подхватить. Не думаю, что если поставите версию с mssql, проблем станет меньше, скорее наоборот.
C6/C11, ШВС, tps/btrieve.
-
- ✯ Ветеран ✯
- Сообщения: 5025
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 22 раза
- Игорь Столяров
- Ветеран движения
- Сообщения: 7447
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 16 раз
- Поблагодарили: 51 раз
TPS база данных через облако
Многое зависит ещё и от техники программирования доступа к спискам БД, особенно если проект старый.
В Clarion есть неприятное место, что по умолчанию списки открываются с полным доступом (на запись) и
редко кто-то парится это настраивать. Хотя в 80% случаев вполне достаточно доступа только на чтение.
(и это ещё замедляет работу с БД)
Как следствие - если юзер создаёт большой отчёт, в котором задействовано несколько TPS списков и что-то
отваливается (компьютер, сеть и т.д.) - то велика вероятность разрушения файлов, так они открыты на запись ...
Нафига ? Молчит тайга. Мы перевели отчёты и расчётные операции в режим доступа к БД "только чтение" и
в разы сократили свои доходы от ремонта TPS файлов ...
В Clarion есть неприятное место, что по умолчанию списки открываются с полным доступом (на запись) и
редко кто-то парится это настраивать. Хотя в 80% случаев вполне достаточно доступа только на чтение.
(и это ещё замедляет работу с БД)
Как следствие - если юзер создаёт большой отчёт, в котором задействовано несколько TPS списков и что-то
отваливается (компьютер, сеть и т.д.) - то велика вероятность разрушения файлов, так они открыты на запись ...
Нафига ? Молчит тайга. Мы перевели отчёты и расчётные операции в режим доступа к БД "только чтение" и
в разы сократили свои доходы от ремонта TPS файлов ...
За теми кто отстал - не возвращаться. (С) Кодекс
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Не замечал такого, что режим открытия файла как-то влияет на сбои. Если содержимое файла не меняется, то нет и записи на диск, откуда сбои? У меня все файлы открываются на чтение и запись, проблем не зафиксировано. Может речь снова про сетевую работу? ИМХО, про неё надо забыть в случае с tps. На крайняк, можно ip драйвер заюзать. У меня такая возможность встроена, хотя у реальных пользователей не используется. То есть, если подключение локальное или терминальное, то работаем напрямую с файлами, если сетевое, то через ip драйвер. Приложение одно и тоже, практически ничего менять не надо.
C6/C11, ШВС, tps/btrieve.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7447
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 16 раз
- Поблагодарили: 51 раз
TPS база данных через облако
Тогда обратите внимание на то, что меняется дата/время изменения файлов.
Разница, как я понимаю, в организации буфера и способах доступа к файлу (см. WinAPI)
Мы просто всё доводим до какого-то финала и поэтому ведём статистику сбоев.
Так вот каково же было удивление, когда пользователь под пыткой с пристрастием, продолжал
утверждать, что только создавал отчёты (директор магазина - больше ничего делать не умеет).
И возник вопрос, как печать ценников может завалить БД при отключении питания компьютера ?
Натурный эксперимент показал - что да, такое происходит. Проблему убрали лет 15 назад (см. ниже).
Последний раз редактировалось Игорь Столяров 23 Февраль 2021, 21:22, всего редактировалось 1 раз.
За теми кто отстал - не возвращаться. (С) Кодекс
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Открывают в режиме чтения и записи по простой причине. Если в одном потоке вызывается цепочка оконных процедур, то открытие и закрытие файлов происходит по счётчику. То есть если файл открыли только на чтение в первой процедуре потока, то он таким останется до закрытия потока. Если в вызываемой процедуре встретится попытка изменения, то будет ошибка. За этим сложно следить, поэтому не заморачиваются.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Игорь, как-то непонятно. Директор этого магазина открывал файлы по сети или локально? Какой характер сбоя был, что конкретно ломалось?
C6/C11, ШВС, tps/btrieve.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7447
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 16 раз
- Поблагодарили: 51 раз
TPS база данных через облако
Вот именно ! И в отчётах, которые вообще открываются в отдельных потоках, тоже не заморачиваются.
Последний раз редактировалось Игорь Столяров 23 Февраль 2021, 21:31, всего редактировалось 1 раз.
За теми кто отстал - не возвращаться. (С) Кодекс
- Игорь Столяров
- Ветеран движения
- Сообщения: 7447
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 16 раз
- Поблагодарили: 51 раз
TPS база данных через облако
Спасибо, что так хорошо думаете о моей памяти ... Ломались TPS файлы, там всегда одно и тоже (но причины разные).
см. рисунок. Доступ к БД конечно по сети, в многопользовательском режиме. Вегетарианского не держим-с !
За теми кто отстал - не возвращаться. (С) Кодекс
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Кстати, я на терминальный серверах у основных клиентов держу запущенную копию приложения, в которой все файлы базы данных открыты в режиме чтения и записи. С одной стороны, это дополнительная защита от всяких вирусняков шифровальщиков, с другой стороны админская копия выполняет различные функции сервера. Полезная штука, проблем не возникало.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
Ну, если по сети, то сам себе злобный Буратино.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4688
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 10 раз
- Поблагодарили: 37 раз
TPS база данных через облако
У меня такого нет. Репорт структура для отчётов моветон. Неудобно, не функционально. Не любите своих пользователей.Игорь Столяров писал(а): ↑23 Февраль 2021, 21:24Вот именно ! И в отчётах, которые вообще открываются в отдельных потоках, тоже не заморачиваются.
C6/C11, ШВС, tps/btrieve.