Остановимся подробнее на данных факторах:
1. Производительность заключается в получении необходимого результата с учетом баланса скорости обработки, передачи и нагрузки на ресурсы. Расчет такого баланса необходимо закладывать в архитектуру в самом начале проекта, в противном случае мы можем столкнуться либо с неудовлетворительной скоростью работы системы, либо с существенной нагрузкой на действую инфраструктуру (например сервера).
Рассмотрим подробнее ограничения по производительности:
1) Аппаратные ресурсы
— Не хватает скорости процессора (CPU/GPU)
— Энергозатраты
— Данные должны помещаться в памяти
— Скорость чтения с диска ограничена
— Пропускная способность сети
— Объём хранилища
2) Ввод данных человеком
3) Поступление данных со специфических устройств (IoT)
— Датчики
— Устройства
2. Ограничения по масштабируемости, по сути, заключаются в невозможности с учетом имеющихся или приобретаемых ресурсов (финансовые ресурсы, технические ресурсы) обеспечить адекватное исполнение при росте объемов обработки и выполнения количества операций.
Рассмотрим подробнее ограничения по масштабируемости:
1. Вычислительная сложность алгоритма (программы)
2. Ограничения архитектуры компьютера
3. Можно ли распараллелить алгоритм? (использовать несколько компьютеров)
4. Не придётся ли пересылать большие объёмы данных в реальном времени?
5. Происходит ли экспоненциальный рост стоимости обработки информации?
3. Экономическая целесообразность заключается в обоснованности затрат. Необходимо провести адекватное и полноценное исследование рынка имеющихся решений и поставщиков на предмет соответствия заявленным целям и стоимости внедрения, обслуживания и содержания системы, стоимости дальнейшего масштабирования. Очень важно сделать правильный выбор между развертыванием системы на мощностях организации или в облаке.
Облако может иметь ряд преимуществ перед использованием собственных вычислительных мощностей, а именно: скорость, стоимость развертывания, масштабируемость, надежность у облаков в ряде случаев могут оказаться существенно выше. Необходимо учитывать модели развертывания и модели обслуживания облачных сервисов.
Если Вы заинтересованы во внедрении программных решений, проведении Цифровизации отдельных блоков бизнеса в Вашей компанией, то я с удовольствием помогу в реализации таких проектов. Прошу обращаться ко мне через мой сайт: http://akonnov.ru/ или через мой Телеграм канал: https://t.me/biz_in