Вход Блог
Строительство и ремонт
Репетиторы
Красота
Фрилансеры
Разные специалисты
Тренеры
Уход за животными
Автоинструкторы

Программирование — работа в Москве

Дата: 2024-10-31
Детали
Регион
Москва
Занятость
дистанционно
Стоимость
договорная
Дата публикации
2024-10-31
Описание
Для себя Необходимо решить следующие задачи: Задача 1: Написать систему, вычисляющую интеграл от некоторой функции. Мастер (клиент) находит рабочие узлы (сервера) через IP broadcast — рассылает стартовое сообщение по всем адресам подсети, на которое рабочие узлы, слушающие на своих TCP портах, отвечают. Затем каждому рабочему узлу даётся отрезок, он вычисляет на нём интеграл и отправляет ответ мастеру. Мастер складывает ответы серверов и получает итоговый результат. Требования: - если после раздачи заданий сервера становятся недоступны (выключаются / происходит разрыв сети), но хотя бы один сервер доступен, программа это детектирует, раздаёт работу доступным серверам вместо отключившихся и даёт верный ответ - если недоступный сервер снова появляется в сети и пытается послать ответ, это не приводит к ошибке, в частности, результат по соотв. отрезку не будет учтён дважды - если недоступный сервер появился в сети, мастер должен уметь присылать на него новые задачи (например, отключился какой-то ещё сервер) Задачу прошу сделать на чистом С, пользуясь API сетевых сокетов. Лучше всего на UNIX-like системе, хотя на Windows в общем сокеты похожие. Обязательно показать работу программы с полной / частичной потерей пакетов, дублированием, задержками. Рекомендую утилиту tc или iptables. Литература: Стивенс У. Р. “Разработка сетевых приложений“, гл. 2, 3, 4, 5, 7 Задача №2: Вы имитируете базу данных с репликами. Клиент отправляет данные на master сервера, с мастера данные реплицируются на другие узлы. Чтение распределяется равномерно по всем репликам (т. е. запрос клиента на чтение обслуживается не мастером, а какой-то репликой). При потере мастера реплики должны проголосовать и выбрать нового мастера среди живых узлов, используя протокол консенсуса (Raft). Если мастер оживает и на нём есть какие-то несинхронизованные данные, то они должны обработаться разумным образом, а бывший мастер — стать одной из реплик. Отдельным пунктом — реализация линеаризуемого атомарный CAS 1. Система должна выполнять CRUD операции — create/read/update/delete 2. При чтениях не надо данные от реплики прокачивать через мастер, данные должны идти с реплики на клиента. Для этого мастер может отвечать, например, 302 Found и давать заголовок Location с адресом реплики 3. Учитывайте семантику методов HTTP — PUT идемпотентный (и требует ID ресурса в запросе), POST — неидемпотентный, PATCH позволяет обновить ресурс частично и зависит от текущего состояния 4. Максимальное количество реплик фиксированное.
Похожие заказы

Обучение 1С-программированию

дистанционно
договорная
Для работы Обучение 1С программированию применительно к нашей самописной программе
Москва Репетиторы

Обучение Wordpress

дистанционно
договорная
Для себя Нужны уроки по Wordpress, на примере собственного сайта
Краснодар Репетиторы

Обучение тестированию программного обеспечения

без разницы
от 1500.00 руб.
Подготовка к экзамену
Москва Репетиторы

Обучение C++

дистанционно
договорная
Для ребёнка
Красноярск Репетиторы

Обучение созданию нейросетей

дистанционно
договорная
Для работы
Казань Репетиторы

Обучение Java

дистанционно
договорная
Для себя
Москва Репетиторы

Обучение программированию

возможна работа на дому
договорная
Для ребёнка Здравствуйте! Меня зовут Антон, я ищу наставника или тьютора для своего 10-летнего сына. Сразу честно расскажу про нас: сын не говорит, но всё отлично понимает. Из-за отсутствия нормальной социализации (он не ходит в обычную школу) у него есть отставание в развитии, но мы видим, что интеллект у него сохранен, и он очень тянется к современным технологиям. Мы не ищем классического педагога, который будет учить его по учебникам — это не сработает. Нам нужен человек, который "на ты" с компьютером, умеет искренне увлечься процессом и готов стать для сына своего рода старшим товарищем или проводником в мир IT. Фактически с нуля. Сейчас его цепляет создание визуальных коллажей (редкое время с телефоном), работа с картинками. Быстро схватывает на лету, но так же быстро теряет интерес, если задача становится скучной или монотонной. Сын не всегда усидчив, плюс есть нюансы со зрением, поэтому нам нужны не длинные уроки, а короткие и насыщенные сессии (минут по 30–40), где он будет видеть результат своих действий здесь и сейчас. Мы хотим, чтобы компьютер стал для него не просто способом "убить время" за случайными видео, а инструментом для творчества и ОБЩЕНИЯ. Нам нужен человек, который не будет давить диагнозами, а будет видеть в сыне личность и интересного собеседника (пусть и невербального). Если вам близка такая задача и вы готовы попробовать наладить контакт — давайте встретимся, пообщаемся, попробуем провести первое занятие. Мы готовы к гибкому графику, занятия возможны проводить хоть где. Буду рад вашему ответу!
Иркутск Репетиторы