bannerbannerbanner
logo
Войти

Распределённые вычисления

Добавлено
Год выхода: 2020
Язык: Русский
В этой книге главный Архитектор Департамента Архитектуры компетенций Cloud Native в Сбербанк делится…
В этой книге главный Архитектор Департамента Архитектуры компетенций Cloud Native в Сбербанк делится знанием и опытом с читателем созданием и перехода на облачную экосистему, так и созданием и адаптацией приложений под неё. В книге автор старается провести читателя по пути, минуя ошибки и сложности. Для этого демонстрируется практическое применение и даются пояснения, чтобы читатель смог ими воспользоваться как инструкцией для учебных и рабочих целей. Читателем может быть как разработчики разных уровней, так и специалисты по экосистеме, желающие не потерять актуальность своих умений в уже изменившимся мире.
Если вы уже владеете программированием на языке Haskell, эта книга научит вас использованию множества интерфейсов и библиотек, предназначенных для написания параллельных и конкурентных программ. Вы узнаете, как распараллеливание на многоядерные процессоры позволяет ускорять вычислительно нагруженные программы и как конкурентность облегчает написание программ с активно взаимодействующими между собой и с другими программами потоками. Автор Саймон Марлоу проведёт вас по этому пути, сопровождая его большим количеством примеров, с которыми можно самостоятельно экспериментировать, запуская, изменяя и расширяя. Книга делится на две части, посвящённые таким инструментам, как Parallel Haskell и Concurrent Haskell, включённые в неё упражнения позволят вам научиться:выражать параллелизм в языке Haskell средствами монады Eval и стратегий вычислений;распараллеливать обычный код на языке Haskell в монаде Par;организовывать параллельные вычисления с массивами на основе библиотеки Repa;использовать библиотеку Accelerate для запуска вычислений на графических процессорах;работать с базовыми интерфейсами для написания конкурентного кода;реализовывать высокопроизводительные конкурентные сетевые серверы;писать распределённые программы, запускающиеся на множестве машин сети.
Добавлено
Год выхода: 2015
Язык: Русский
Julia – это хорошо структурированный язык программирования с большим быстродействием, устраняющий кл…
Julia – это хорошо структурированный язык программирования с большим быстродействием, устраняющий классическую проблему выполнения анализа на одном языке и трансляции его результатов на второй с целью повышения производительности. Приведены этапы инсталляции и выполнения Julia в разных операционных средах. Описываются различные способы работы с языком, его ключевой функционал, пошагово разбираются практические примеры. Рассмотрена работа Julia с внешними процессами, благодаря которым происходит значительное улучшение качества визуализации графиков и данных. Не обделено вниманием метапрограммирование, формирующее сетевую и распределенную вычислительную среду языка. Издание предназначено для специалистов в области анализа данных, а также разработчиков, желающих познакомиться с новым языком программирования.
С появлением микропроцессоров, обладающих большим числом ядер, понимание конкуренции и параллелизма при разработке программного обеспечения стало еще более важным, чем прежде. В книге вы познакомитесь с преимуществами функционального программирования с точки зрения конкуренции, узнаете, как применять акторы для разработки распределенного программного обеспечения, и исследуете приемы параллельной обработки огромных объемов информации на нескольких процессорах. Эта книга поможет вам приобрести новые навыки в разработке программ, благодаря чему вы будете готовы решать сложные задачи в ближайшие несколько лет.
Данная книга описывает процесс создания распределенных, параллельных систем и систем реального времени с точки зрения проектирования архитектуры системы. Подробно рассмотрены ключевые вопросы, возникающие в процессе разработки: управление временем отклика, синхронизация, актуальность и непротиворечивость данных. На многочисленных примерах автор показывает, как с помощью одной и той же универсальной нотации UML описать такие, казалось бы, далекие области, как автоматизированная банковская система, бортовой компьютер автомобиля и система управления лифтами в многоэтажном здании – без привязки к какой-либо программной или аппаратной платформе и языку программирования. Издание будет чрезвычайно полезно аналитикам, менеджерам предприятий и информационных систем, руководителям и архитекторам проектов, а также программистам, которые имеют дело с приложениями UML: книга поможет изложить свои идеи так, чтобы можно было реализовать проект, практически не зная той предметной области, для которой пишется система.
В современных вычислениях программы нередко объединяют несколько процессов. Основная проблема, возникающая при создании таких распределенных программ, состоит в том, чтобы заставить все процессы вместе работать над решением общей задачи, даже в случае отказов некоторых из них. Данная книга содержит введение в абстракции распределенного программирования и знакомит с фундаментальными алгоритмами и их реализациями в нескольких распределенных окружениях. Перед читателем будут раскрыты важные проблемы распределенных вычислений и основные алгоритмические приемы их решения. На подробных примерах читатель сможет понять, как с помощью этих приемов конструировать распределенные приложения. Обсуждение каждой темы завершается множеством упражнений и их решений. Издание предназначено для студентов высших учебных заведений, аспирантов, а также программистов, занимающихся разработкой высоконадежных распределенных приложений.
Развитие цифровой экономики в современном мире требует решения вопроса безопасности приложений Industrial lnternet of Things (IIoT). Большое количество распределенных, передающих данные по сети устройств IIoT, управляемых интеллектуальными программами (программными агентами), требуют защиты. Успешная атака на любое устройство IIoT приведет ко взлому приложения IIoT и к большим финансовым потерям, а также к прекращению функционирования приложения IIoT, следовательно, тема исследования актуальна. Цель написания статьи – кардинальное решение проблемы безопасности приложения IIoT путем разработки его блокчейн-архитектуры. Перед авторами стояли задачи исследования всех аспектов блокчейн-системы, обеспечивающих безопасность устройств приложения IIoT. Особенность блокчейн-системы состоит в том, что ее участниками являются программные агенты, управляющие устройствами приложения. В результате исследования предложена концепция блокчейн-архитектуры приложения IIoT. Исследованы механизмы консенсуса интеллектуальных программ устройств IIoT как равноправных активных участников блокчейн-сети. Механизм консенсуса и криптографическая система распределенного реестра сети блокчейн повышают информационную безопасность приложения IIoT. Синергетический эффект блокчейн-системы и интеллектуальных систем программных агентов устройств приложения IIoT существенно повышает эффективность решения. Интеллектуальные системы программных агентов устройств приложения IIoT эффективно обучаются на блокчейн-платформе, и в результате получается децентрализованный суперкомпьютер в виде блокчейн-системы. Предложенное решение может быть использовано для разработки и внедрения проектов промышленного Интернета вещей.
1
Популярные книги