Рубрика «надежность»

Привет! Меня зовут Лиза, я работаю заместителем директора по качеству в компании ГРАН Груп. Начав свой профессиональный путь инженером-конструктором, затем технологом, я занималась подготовкой проектов к производству и внедрением в них принципов DFM. Другими словами, в мире печатных плат я достаточно давно и успела получить достаточный уровень компетенций и опыта в этой области. Поработав с проектами плат разного уровня сложности и направленности, я поняла, каким образом можно сделать платы качественными и надежными еще на этапе конструирования. 

Читать полностью »

Занимаюсь практическим применением больших языковых моделей в бизнесе. При этом, постоянно приходится слышать, что искусственный интеллект нельзя использовать в бизнесе, потому что «галлюцинации». Откуда взялось это расхожее мнение, что на самом деле и какие есть простые и эффективные способы повышения надежности, обо всем этом попробую сейчас рассказать.

Ох уж эти галлюцинации! Кто только не попался на эту удочку. От рядовых пользователей до целых коллективов с академическим статусом, публикующихся на arxiv. Наиболее яркий пример тому: Читать полностью »

Привет, меня зовут Вадим. Я делаю платформу надёжности в Яндекс Go. Инструментов для улучшения надёжности много, поэтому перед нашей командой всегда стоит выбор, что делать сейчас, а что отложить на месяц, квартал, год. Под катом я покажу пример инструмента для приоритизации таких проектов, а по пути мы разберёмся с тем, что такое надёжность технических систем, из чего она состоит и как её можно считать.

Что такое надёжность

Давайте синхронизируемся, что же мы будем понимать под надёжностью в этой статье.

Читать полностью »

Предисловие: эта статья была написана больше года назад, и потом была немного дополнена в части автоматов EKF, после чего - была положена на полку и забыта. Возможно, сейчас ситуация стала лучше. И заранее приношу свои извинения за таблицы, сделанные картинками: редактор Хабра - это какой-то позор...

Читать полностью »

Рисунок 1 – функциональная блок схема «NMR»

Рисунок 1 – функциональная блок схема «NMR»

Интереса ради сделал максимально простенькое процессорное ядро, о чем, собственно, и хочу рассказать, может кому-то пригодится, планирую в небольшом цикле статей представить наработки по этому проекту в открытой форме от HDL до разнообразных плат в модульном формате под это дело.

Для себя поставил такое ТЗ:

Введение

Все, кто участвовал в запусках космических аппаратов, знает, что на этапе разработки нужно уделить большое внимание надежности разрабатываемых электронных систем. Казалось бы, звучит довольно банально, ведь любой разумный инженер должен обдумывать риски. Проблема, с которой сталкиваются, разработчики космических аппаратов (в отличие от иной промышленности) заключается в том, что никто и никогда не полетит чинить поврежденную электронику.Читать полностью »

Это просто бомба или почему взрываются электронные устройства - 1

Читать полностью »

Привет, меня зовут Евгений. Я работаю в инфраструктуре поиска Яндекс.Маркета. Хочу рассказать сообществу Хабра о внутренней кухне Маркета – а рассказать есть что. Прежде всего, как устроен поиск Маркета, процессы и архитектура. Как мы справляемся с внештатными ситуациями: что случится, если упадёт один сервер? А если таких серверов будет 100?

А ещё вы узнаете, как мы внедряем новую функциональность на куче серверов сразу. И как тестируем сложные сервисы прямо в production, не доставляя пользователям никаких неудобств. В общем, как устроен поиск Маркета, чтобы всем было хорошо.

Как устроен поиск Яндекс.Маркета и что будет, если упадёт один из серверов - 1
Читать полностью »

Программист-защитник сильнее энтропии - 1

© Dragon Ball. Goku.

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

Вспоминается эффект FlashForward из голливудских блокбастеров, когда главный герой видит грядущую катастрофу и остаётся предельно спокойным, потому что заранее знает, что она произойдёт, и имеет от неё защиту. Идея защитного программирования в том, чтобы защититься от проблем, которые сложно или вовсе невозможно предвидеть. Программист-защитник ожидает появления ошибок в любом месте системы и в любой момент времени, чтобы предотвратить их до того, как они нанесут ущерб. При этом цель не в том, чтобы создать систему, которая никогда не падает, это всё равно невозможно. Цель в том, чтобы создать систему, которая падает изящно в случае любой непредвиденной проблемы.

Давайте разберёмся подробнее, что входит в понятие «падать изящно».

  • Падать быстро. В случае непредвиденной ошибки все операции должны завершаться сразу же, особенно если последующие вычисления тяжёлые или могут привести к порче данных.
  • Падать аккуратно. Если возникла ошибка, программа должна освободить все ресурсы, снять локи, удалить временные и наполовину записанные файлы, закрыть соединения. Дождаться завершения критических операций, прерывание которых может привести к непредсказуемым результатам. Либо безопасным способом аварийно завершить эти операции.
  • Падать явно и красиво. Если что-то сломалось, сообщение об ошибке должно быть простым, лаконичным и содержать важные детали из того контекста системы, где возникла ошибка. Это поможет команде, которая отвечает за систему, максимально быстро разобраться в проблеме и исправить её.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js