Предисловие: эта статья была написана больше года назад, и потом была немного дополнена в части автоматов EKF, после чего - была положена на полку и забыта. Возможно, сейчас ситуация стала лучше. И заранее приношу свои извинения за таблицы, сделанные картинками: редактор Хабра - это какой-то позор...
Рубрика «надежность»
Про автоматические выключатели
2024-06-03 в 14:03, admin, рубрики: Автоматические выключатели, надежность, тестированиеНадежно как швейцарские часы, CubeSatы и надежность
2023-06-04 в 5:51, admin, рубрики: космонавтика, космос, кубсат, кубсаты, надежность, Производство и разработка электроники, спутник, спутники, Электроника для начинающихВведение
Все, кто участвовал в запусках космических аппаратов, знает, что на этапе разработки нужно уделить большое внимание надежности разрабатываемых электронных систем. Казалось бы, звучит довольно банально, ведь любой разумный инженер должен обдумывать риски. Проблема, с которой сталкиваются, разработчики космических аппаратов (в отличие от иной промышленности) заключается в том, что никто и никогда не полетит чинить поврежденную электронику.Читать полностью »
Как устроен поиск Яндекс.Маркета и что будет, если упадёт один из серверов
2019-11-21 в 9:06, admin, рубрики: highload, балансировка нагрузки, Блог компании Яндекс, микросервисы, надежность, облачные сервисы, Разработка веб-сайтов, Серверная оптимизация, яндексПривет, меня зовут Евгений. Я работаю в инфраструктуре поиска Яндекс.Маркета. Хочу рассказать сообществу Хабра о внутренней кухне Маркета – а рассказать есть что. Прежде всего, как устроен поиск Маркета, процессы и архитектура. Как мы справляемся с внештатными ситуациями: что случится, если упадёт один сервер? А если таких серверов будет 100?
А ещё вы узнаете, как мы внедряем новую функциональность на куче серверов сразу. И как тестируем сложные сервисы прямо в production, не доставляя пользователям никаких неудобств. В общем, как устроен поиск Маркета, чтобы всем было хорошо.
Программист-защитник сильнее энтропии
2019-10-28 в 8:12, admin, рубрики: best practices, fallback, post mortem, безопасность, Блог компании FunCorp, валидация, высокая производительность, кеширование, надежность, оптимизация, прагматизм, практики, практики программирования, Программирование, Проектирование и рефакторинг, процесс разработки, процессы, Разделение привилегий, разделяй и властвуй, разработка, Совершенный код, стабильность![Программист-защитник сильнее энтропии - 1 Программист-защитник сильнее энтропии - 1](https://www.pvsm.ru/images/2019/10/28/programmist-zashitnik-silnee-entropii.jpg)
© Dragon Ball. Goku.
Программист-защитник в любой момент и в любом месте кода ожидает появления потенциальных проблем и пишет код таким образом, чтобы заранее от них защититься. А если от проблемы нельзя защититься, то хотя бы сделать так, чтобы её последствия и влияние на пользователей были минимальными.
Вспоминается эффект FlashForward из голливудских блокбастеров, когда главный герой видит грядущую катастрофу и остаётся предельно спокойным, потому что заранее знает, что она произойдёт, и имеет от неё защиту. Идея защитного программирования в том, чтобы защититься от проблем, которые сложно или вовсе невозможно предвидеть. Программист-защитник ожидает появления ошибок в любом месте системы и в любой момент времени, чтобы предотвратить их до того, как они нанесут ущерб. При этом цель не в том, чтобы создать систему, которая никогда не падает, это всё равно невозможно. Цель в том, чтобы создать систему, которая падает изящно в случае любой непредвиденной проблемы.
Давайте разберёмся подробнее, что входит в понятие «падать изящно».
- Падать быстро. В случае непредвиденной ошибки все операции должны завершаться сразу же, особенно если последующие вычисления тяжёлые или могут привести к порче данных.
- Падать аккуратно. Если возникла ошибка, программа должна освободить все ресурсы, снять локи, удалить временные и наполовину записанные файлы, закрыть соединения. Дождаться завершения критических операций, прерывание которых может привести к непредсказуемым результатам. Либо безопасным способом аварийно завершить эти операции.
- Падать явно и красиво. Если что-то сломалось, сообщение об ошибке должно быть простым, лаконичным и содержать важные детали из того контекста системы, где возникла ошибка. Это поможет команде, которая отвечает за систему, максимально быстро разобраться в проблеме и исправить её.
Метод дублирования. 11 примеров из конструкции ДВС
2019-10-14 в 5:00, admin, рубрики: двс, дублирование, надежность, Научно-популярное, резервирование, ресурс, транспорт, экономия топливаДублирование (от французского doubler удваивать) в системе это вид резервирования, имеющего минимальную избыточность.
Статья эволюция развития автомобильных двигателей с начала 90-х годов вызвала интерес, и сильное обсуждение преобразований в двигателестроении. Эта статья будет ее продолжением без временных рамок, но с одним общим условием — все представленные примеры повысили надежность, и ряд других характеристик ДВС в лучшую сторону.
SamsPcbGuide, часть 12: Технологии — корпуса BGA-типа, пластик и космос II
2019-10-02 в 22:48, admin, рубрики: BGA, mcs, PCSB, samspcbguide, испытания, корпуса микросхем, космос, надежность, пайка, печатные платы, Производство и разработка электроники, радиотехника и электроника, технологии, Электроника для начинающихВ комментариях к предыдущей публикации hhba поделился статьёй, которая сама по себе достойна отдельной публикации, настолько там красивые решения приводятся. В дополнение к её обзору я постараюсь поставить точкиу над «i» в вопросе применения пластиковых корпусов в космических приложениях. Этот вопрос частично затрагивался в первой части и в комментариях к ней, но сейчас он будет разобран подробней.
![SamsPcbGuide, часть 12: Технологии — корпуса BGA-типа, пластик и космос II - 1 SamsPcbGuide, часть 12: Технологии — корпуса BGA-типа, пластик и космос II - 1](https://www.pvsm.ru/images/2019/10/03/SamsPcbGuide-chast-12-tehnologii-korpusa-BGA-tipa-plastik-i-kosmos-II.jpeg)
О важности подтверждения управляющих команд на примере Делимобиля
2019-09-24 в 19:40, admin, рубрики: ack, IoT, Интернет вещей, каршеринг, надежность, Программирование, Проектирование и рефакторингПри проектировании IoT систем, например, каршеринга, очень важно учитывать возможные сбои. В противном случае вас ожидает критическая нагрузка на техподдержку и недовольство клиентов.
Парковка «Сколковская»
Читать полностью »