Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Разместите свой проект бесплатно и начните получать предложения от фрилансеров-исполнителей уже спустя минуты после публикации!

Исправить программу на Delphi


Приложения 2

Просмотр приложений доступен только зарегистрированным пользователям.
Заказчик не желает делать предоплату? Оплата через Сейф поможет избежать возможного мошенничества.
  1. 550
     4  0

    14 дней5000 UAH

    "Если же увеличить, например, до 5120, то через некоторое время перестает работать (на веб запросы к ней отвечает, но запросы в БД не выполняет). И появляется ошибка о недостатке памяти. Но я никогда не видел, чтобы программа использовала больше 200 мб памяти. После перезапуска опять работает некоторое время, после чего история повторяется."
    Видите, у вас ошибка "Thread creation error"? При создании потока выделяется память как в UserMode, так и в ядре системы. И вот эта память в ядре системы с особыми свойствами, в частности, она не может быть вытеснена на диск, в файл подкачки. Она обязательно всегда должна находиться в реальной оперативной памяти. И её не очень много. Грубо говоря, вы создаёте слишком много потоков.
    Но думаю, что причина ещё несколько глубже. Из этого множества потоков вы одновременно создаёте слишком много файлов. Насколько я представляю себе работу драйверов файловой системы Винды, они для такого просто не предназначены. Нет, она не падает, но работать начинает очень неэффективно, расходуя тот самый драгоценный пул памяти в ядре, который нельзя свопировать на диск.
    Я бы посоветовал перепроектировать программу в этом месте. Есть менее ресурсоёмкие решения.
    ----------------
    Мне тут подсказывают, что я ошибся и, похоже, это так и есть. Я не обратил внимание на то, что процесс у вас 32битный. Обычно по умолчанию размер стека резервируемого для вновь создаваемого потока равен 1Мб. И 5120 новых потоков просто исчерпают всё адресное пространство 32 своими стеками.

  2. 17  
    1 день1000 UAH

    На посмотреть розобраться цена такая.
    Смотрим исходники и какие компоненты используються.
    Тогда можно о чемто говорить.
    А так с того что есть сразу скажу тупиковый подход. Нужно менять логику, на всех пользователей ядер не хватит некогда.

  3. 84    1  0   1
    5 дней3000 UAH

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

  4. 559    70  13   2
    3 дня1500 UAH

    Готов заняться Вашей задачей. Проблема с нехваткой памяти и с таймаутом для запросов понятны - но надо понимать, что безграничных ресурсов всё равно не возникнет. Ещё желательно знать версию используемого Вами SQL-сервера. Подробнее могу сказать после того, как посмотрю исходники.

  5. 1351    62  2   1
    5 дней3000 UAH

    Здравствуйте,
    насколько я понял, какие-то запросы вызывают задержку/нехватку памяти - программа перестаёт работать. Если есть доступ к базе и можно получить текст запроса, смогу переписать.

  6. Еще 3 ставки скрыты
  • Профиль удален
    2 августа 2019, 20:12 |

    Подозреваю что можно решить - уменьшив размер стека (и перекомпилировав)

  • Вячеслав Азаров
    3 августа 2019, 7:29 |

    При таком количестве (5120) одновременных запросов к РБД вам понадобится машина баз данных (например от Оракл) или услуги провайдеров облачных технологий c репликацией РБД, а не персональный компьютер с MySQL.

  • Ігор Лозовський
    3 августа 2019, 8:46 |

    "Даже самые сложные задачи могут иметь простое решение"

    И всё-таки есть решение за счёт изменения архитектуры. 🙂

Актуальные фриланс-проекты в категории Десктопные приложения

Разработка кастомного ПО (Android-приложения + CMS) для киосков самообслуживания SUNMI K2 (Фастфуд)

1000 UAH

Ищем опытную команду или Middle/Senior Android-разработчика (возможно, с Full-stack навыками) для создания собственного программного обеспечения для киосков самообслуживания сети заведений быстрого питания. Сейчас наши терминалы работают на базе готового облачного интегратора,…

CMSДесктопные приложения ∙ 14 часов 14 минут назад ∙ 13 ставок

Нужно сделать миграцию текущей рабочей программы с foxpro на C#

Всем привет! у нас есть программа на foxpro (в ней есть несколько модулей, программа для учета), есть исходники программы, при острой необходимости можно проконсультироваться с людьми по поддержке текущей программы что нужно сделать: 1. аналитику, что и как работает, составить…

C#Десктопные приложения ∙ 5 дней 22 часа назад ∙ 18 ставок

ПО Мастер-программа «KONSTRUCTOR»

185 977 UAH

Мы ищем очень опытного C++ разработчика для модернизации существующего ПО (мастер-программы). Программа отвечает за создание производного ПО представляющего аудио-визуальные сеансы психологической коррекции. Текущая версия написана на чистом WinAPI (Visual Studio 2019/2022).…

C и C++Десктопные приложения ∙ 8 дней 10 часов назад ∙ 19 ставок

Настройка ODOO Enterprise для строительства

Необхідно побудувати картки та налаштувати зручний імпорт, інтеграцію з ЕДО і загалом Workflow ODOO Компанія займається системною інтеграцією: маємо поставки обладнання В2В або з прямою маржинальністю, або з рібейтами в подальшому. Крім того, ведемо будівельні роботи на об'єктах…

Автоматизация управления предприятиемДесктопные приложения ∙ 8 дней 20 часов назад ∙ 7 ставок

Добавить возможность работы с Новой почтой и Делиери в BAS Малый бизнес 1.6.21.1

5000 UAH

Реализовать по возможности через расширение. Потребна загрузка справочников и создание ТТН. Заполнение данных на отгрузку в Заказе покупателя. Далее на основе заказа создается ТТН. Будет несколько кабинетов. Возможность привязать кабинет к менеджеру или пользователю. Сумма…

Десктопные приложенияУправление клиентами и CRM ∙ 12 дней 16 часов назад ∙ 19 ставок

Заказчик
Проект опубликован
6 лет назад
206 просмотров