На сайте https://www.cbr-xml-daily.ru/ можно получить различные курсы валют. Необходимо написать модуль, который позволит переводить деньги из одной валюты в любую другую. Например: 1 турецкая лира = 0.17 долларов США.
В онлайн-магазине очень много посетителей, и на популярные товары огромный спрос. Правда, иногда, покупатели покупают товар, который уже закончился на складе (т.к. во время оформления покупки товар был выкуплен другим клиентом). С помощью GenServer необходимо реализовать регистр, который будет хранить количество позиций каждого товара. В случае, если товар кончился - должен быть запрет оформления покупки.
В городе есть ресторан для одиноких людей, клиенты любят есть в одиночестве. В ресторане 300 столов и 300 стульев. Вход в ресторан строго по одному.
Если все места заняты, то человека просят подождать, пока не освободится какое-либо место.
Заняв место в зале, клиент зовёт официанта, уточняет у него меню и заказывает блюда.
Официант оформляет заказ и передает позиции заказа на кухню. Повара видят список заказок, если заказ есть - свободный повар готовит блюдо. По готовности блюдо передаётся на конвеер, откуда официанты забирают еду и уносят клиентам.
С помощью GenServer, GenStage и Poolboy необходимо реализовать связанную систему, которая реализует данные процессы.
Будет плюсом: сбор статистики, по какой причине уходили клиенты.
- Мест в ресторане - 300
- Поваров - 10
- Официантов - 5
- Меню:
- Бургер (готовка 5 минут)
- Кофе (готовка 1 минута)
- Салат (готовка 3 минуты)
- Стейк ( готовка 10 минут)
- Клиент ждёт у входа 10 минут, иначе уходит
- Клиент ждёт официанта 10 минут, иначе уходит из ресторана
- Клиент ждет еду (хотя бы одно блюдо) 30 минут, нет еды - клиент уходит