powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Ограничить потребление CPU или хоть выяснить, что делается
25 сообщений из 27, страница 1 из 2
Ограничить потребление CPU или хоть выяснить, что делается
    #36262823
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый.

Есть хитрое 3-х уровневое приложение, написанное на VFP9 (!)
База - Oracle, миддлтайер и клиент - на Фоксе.
Чужое.

Архитектура такая: на каждого клиента на сервере поднимается фоксовое приложение и живет.
Проблема в том, что практически при любом клиентском чихе этот серверный процесс съедает 100% CPU.
Oracle практически ничего не делает, сеть тоже свободна, дисковой активности нет, памяти валом. По самой задаче с данными тоже особо делать нечего - объемы небольшие. Но когда 5 пользователей одновременно жмут кнопку, ответа они уже не дожидаются.
Идея ограничить использование процессора на уровне ОС остается на крайний случай.
Вопрос, можно ли выяснить, чем фокс занимается в это время?

Вариант ограничить CPU usage через, скажем, config.fpw тоже интерестен, как и опыт использования фокса в таком (ну, не точно таком, а, например, терминальном) виде.

Программа уже куплена, авторы предлагают приобрести датацентр, дабы 40 человек (!) смогли работать :), нам такое не подходит. Может, кто-то встречался с таким? Сервер Windows 2003 Server sp2
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262854
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сэмка,

refox в помощь :)

PS. афтары мониаки, сваяли на фоксе аналог одногоце
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262873
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
refox не катит, спецов нет. Я больше 10 лет тому хоть vfp3.0 пощупал, а так пара чел-к еще раньше на 2.6 остановилась. И прога монстровая, я так понимаю, раз они пожадничали на чем-то поадекватней переписать и предпочли такого уродца изготовить.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262914
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сэмка,

Мне встречаться с этим не приходилось.
Может чего-то я и не понимаю, но есть мысли по поводу.

Пусть авторы, если умные такие, разгребают проблему перегрузки процессора, и все прочие проблемы, чтобы нормально работало нужное ВАМ число юзеров.

Теперь еще непонятки, для меня, во всяком случае:

Сэмка Архитектура такая: на каждого клиента на сервере поднимается фоксовое приложение и живет.

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

Наконец, если данных немного, юзеров тоже, то зачем Оракл? И зачем клиент-сервер?? Все можно элементарно сделать на Фоксе при желании, и даже серверную часть.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262930
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, именно 40 юзеров - 40 процессов. И 1 процесс-диспетчер. Оракл нужен для вынесения обработки сравнительно больших (и растущих!) объемов данных из приложения. Т.е. обычный файлсервер разнесли по уровням. К базе нет претензий - запросы нормальные, работают быстро, мы в этом-то как раз нормально разбираемся.

Разработчики видят 1 решение: качать железо. И нашли в контракте какой-то пункт, который наши манагеры проморгали. Понятно, когда продавали, о фоксе никто и не заикался - по документам это 3-х уровневое приложение с оракловым бэком, программерам его на всякий случай не показывали :)

Теперь или мы за них должны найти решение (уверен, что оно существует, живут же многопользовательские фоксовые системы и не жужжат!), или нужно потратить эндесят килобаксов на новое железо.

Смешно, конечно, но не нам.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262946
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сэмка,

Опишите свое железо
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262983
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да ладно, в принципе какая разница на чем написано? Тут же затык не в производительности интерпретатора. Может, в цикле делается попытка эксклюзивно что-то занятое открыть или еще что-то. А эффект - 100% утилизация.
Попробую на системном уровне поиграться, типа processmon-ом
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36262989
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
igorbik,

Железо не ахти, 2.4 CQ, 4G RAM,

Но еще раз: 4 процесса забирают 4 ядра на 100%, при этом гиг памяти свободен, сеть занята в пике на 2%, дисковая активность отсутствует.
Понятно, что если сейчас 15 человек затыкаются, то, добавив еще 3 таких проца, мы, вероятно, разрулим и 50. Вернее, они так же станут в очередь, но позже :) Смысл?
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36263015
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сэмка,

Похоже, не в железе дело.
Не факт, что наращивание мозгов разрулит загрузку.

Возможно, что железо уже подпортилось.
Возможно, в клиенте имеются зацикленные процессы, ждущие выхода по значению переменной, либо неоптимизированные с точки зрения Фокса запросы, фильтры иле еще что такое, что жрет ресурсы. Конечно, поставить бы эту программу на отладку и проследить за нагрузкой...

Однако с точки зрения юзера, незнакомого с программированием и железом, можно было бы где-то взять (типа напрокат на 1 неделю) железо с мозгами, соотв. требованиям контракта, и проверить, что будет. Дальше уже будет думаться легче.

Интересно, где это все происходит?
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36263022
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сэмкаrefox не катит, спецов нет. Я больше 10 лет тому хоть vfp3.0 пощупал, а так пара чел-к еще раньше на 2.6 остановилась. И прога монстровая, я так понимаю, раз они пожадничали на чем-то поадекватней переписать и предпочли такого уродца изготовить.А со стороны кого-нить пригласить? Может даже удаленно?
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36263533
XAndy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Фоксовский процесс в режиме ожидания CPU практически не потребляет, может у них там бесконечные циклы какие-то крутятся? :)
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36263540
XAndy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
... которые отключатся после приобретения датацентра :)
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36263847
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
100% - крутят тупые циклы!
Таких "разработчиков", да еще и с идеей датацентра...
Ну и кто покупал - куда смотрел?!

- Это у вас кто висит?
- Выродки!
- А за что вы их вешаете?
- За шею, конечно!
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36264184
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В режиме ожидания все нормально, речь идет о выполнении каких-то действий
Кто виноват - сейчас не рассматривается, интересно, что делать.
Железо не битое
Датацентр продают не они, так что это головотяпство, а не злой умысел.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36264218
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, со стороны никого не пригласишь, там уже реальные данные и люди работают.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36264263
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СэмкаДа, со стороны никого не пригласишь, там уже реальные данные и люди работают.Ну, для декомпиляции то никаких данных не нужно. Получите исходники, а дальше уже будет над чем думать. Для отладки не нужны все данные, к тому же реальные, достаточно нескольких записей "похожих" на настоящие.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36264353
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Несколько записей в КАЖДОЙ из 300 таблиц с констрейнтами - нереально.
Я уже молчу об авторских правах.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36268907
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OK, задача слегка изменилась. Во-первых, оказалось, что это не чистый фокс, а сишная прога, которая вызывает фоксовую dll. Хрен редьки не слаще. Оказалось, что фокс создает файл подкачки, хотя памяти валом и внем что-то молотит. Можно ли его заставить пользоваться памятью или это вне контроля? Тут история обратная классической: память есть :) Я еще не обнаружил обращений к config.fpw, что, dll-ка пользуется чем-то другим? Можно ли на нее как-то воздействовать, дабы иметь возможность менять параметры по-умолчанию?
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36268935
СэмкаОказалось, что фокс создает файл подкачки,На каком основании сделан такой вывод? хотя памяти валомИ что из этого следует? Фокс обязан все деалть в памяти? Опять же, на каком основании? и внем что-то молотит. Можно ли его заставить пользоваться памятью или это вне контроля?А нужно ли? Тут история обратная классической: память есть :) Я еще не обнаружил обращений к config.fpw, что, dll-ка пользуется чем-то другим?Он может быть внутри. Можно ли на нее как-то воздействовать, дабы иметь возможность менять параметры по-умолчанию?Декомпиляция.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36268954
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проходящий.На каком основании сделан такой вывод?[/quot ]
procmon

[quot проходящий.]И что из этого следует? Фокс обязан все деалть в памяти? Опять же, на каком основании?[/quot ]
Фокс никому ничем не обязан, я задал вопрос, как его попросить. Операции в памяти несколько быстрее, знаете...

[quot проходящий.]Он может быть внутри. [/quot ]
Он - это кто?

[quot проходящий.]Декомпиляция.
Невозможно, код собирается динамически
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36268974
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри, не разобрался с тегами
Повторю читабельней

проходящий.На каком основании сделан такой вывод?
procmon

проходящий.И что из этого следует? Фокс обязан все деалть в памяти? Опять же, на каком основании?
Фокс никому ничем не обязан, я задал вопрос, как его попросить. Операции в памяти несколько быстрее, знаете...

проходящий.Он может быть внутри.
Он - это кто, файл? Внутри чего, сишного модуля?

проходящий.Декомпиляция.

Невозможно, код собирается динамически
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36268977
СэмкаprocmonВременные файлы и файл подкачки - две большие разницы. Фокс создает первое. И без них он работать не может.
Фокс никому ничем не обязан, я задал вопрос, как его попросить. Никак. Да и нужно ли? Особенно не разобравшись в вопросе?Операции в памяти несколько быстрее, знаете...Знаете ли, не всегда. Фокс, знаете ли, СУБД, и работает по своим правилам.

проходящий.Он может быть внутри. [/quot ]
Он - это кто?Config.fpw
проходящий.Декомпиляция.Невозможно, код собирается динамическиКод DLL?
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36269510
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОК, я понял, действительно, временные файлы.

Динамически собирается фоксовый код, декомпиллить "авторскую" dll - малополезное занятие, поскольку все равно работа потом передается фоксовой, которую разобрать, думаю, вообще неподъемно. И вообще, трудно себе представить, как криво должен был написать программу пограммист фокспро, чтобы для отображения практически просто отсортированных и сгруппированных 10 тыс. записей процессор полчаса утилизировался на 100%. Поэтому я надеялся найти какой-то системный промах.

procmon показывает все это время обращения к временным файлам, читает из них по 65К, судя по скорости, все и так сидит в памяти.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36269581
Сэмка,
что-то я не понял. Ранее было заявлено
сишная прога, которая вызывает фоксовую dllТеперь уже
Динамически собирается фоксовый кодВы уж определитесь.
работа потом передается фоксовой, которую разобрать, думаю, вообще неподъемноКому неподъемно? Вам? Может быть. Специалисту, который еще и специализируется на этом - вполне решаемо.
...
Рейтинг: 0 / 0
Ограничить потребление CPU или хоть выяснить, что делается
    #36269743
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А чего тут определяться, все правильно. Сишная часть - оболочка над фоксом, которая через сокет общается с программой-диспетчером. Диспетчер передает ей некие команды, которые инициируют обращения к фоксовой библиотеке. Далее уже фокс через интерфейсную таблицу получает от диспетчера входные данные (думаю, это досокетный рудимент) и на их основании динамически формирует выполняемый фоксовый код. Далее результаты через интерфейсную таблицу возвращаются диспетчеру, а тот - клиенту. Выполнеие собранной фоксовой программы и занимает те самые полчаса, в это время кроме процессора никакой другой активности нет.

ЗЫ
За специалистом, который специализируется на декомпилляции майкрософтовских библиотек я бы не обратился сюда.
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Ограничить потребление CPU или хоть выяснить, что делается
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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