Вопросы по теме 'otp'
Когда использовать gen_server в приложениях Erlang / OTP
Прочитав книгу Джо Армстронга и просмотрев скринкасты Кевина Смита, я создал простое приложение OTP, состоящее из одного gen_server и одного супервизора, объединенных в одно приложение OTP.
Теперь я смотрю на mochiweb и создал образец проекта...
2244 просмотров
schedule
28.03.2024
Запуск приложения Erlang на сервере Windows
У меня есть приложение Erlang, развернутое на сервере с Windows Server 2008.
Как я это делаю:
Скопируйте папку приложения в каталог Erlang lib .
Откройте командную строку (cmd). Выполните erl .
Выполните application:start(app_name) в...
1323 просмотров
schedule
21.09.2022
OTP/XOR Взлом двух зашифрованных текстов с одним и тем же ключом
Как я могу взломать два шифротекста, в которых дважды использовался один и тот же ключ? Например, plaintext1 использует ключ "abcdefg" , а plaintext2 использует ключ "abcdefg" .
Я знаю, что ciphertext2 ^ ciphertext1 равно plaintext1 ^...
4370 просмотров
schedule
19.01.2023
Получение Ping с Java на Erlang
Недавно я опубликовал аналогичный вопрос, связанный с Erlang-Java, под названием " Java to Erlang Messages ".
Тогда я добился некоторого прогресса, и у меня появилось стабильное соединение между двумя языками (благодаря более старому вопросу,...
304 просмотров
schedule
19.08.2023
Как создать и использовать (или смоделировать) индексы с несколькими столбцами в Erlang Mnesia
Я просмотрел документацию Mnesia и 3 популярные книги по Erlang. Кажется, что можно создавать и использовать только первичные и вторичные индексы с одним столбцом. Или, может быть, это просто то, что охватывают примеры? Если я создам отдельный...
1514 просмотров
schedule
30.10.2022
Erlang Динамический супервизор запускает gen_server
У меня есть супервизор root, который создает другого супервизора:
start_link() ->
supervisor:start_link({local, ?MODULE}, ?MODULE, []).
init([]) ->
RestartStrategy = {one_for_one, 5, 600},
ListenerSup =...
4698 просмотров
schedule
09.04.2022
Обработка очистки состояния gen_server
У меня запущен gen_server , который должен очищать свое состояние всякий раз, когда он нормально останавливается или неожиданно падает. Очистка в основном состоит в удалении нескольких файлов.
В этот момент, когда происходит сбой gen_server или...
2394 просмотров
schedule
09.10.2023
Зачем использовать OTP с erlang?
Как сказано в вопросе: какие преимущества дает использование принципов проектирования OTP при разработке с помощью erlang?
(Я разрабатываю сервер, который будет просто получать команды и отправлять ответы)
1842 просмотров
schedule
25.02.2023
генерировать серверные синхронные и асинхронные вызовы
Предположим, у меня есть gen_server, который обрабатывает только асинхронные вызовы (таким образом, реализуется только handle_cast), должен ли я сохранить handle_call и заставить его возвращать только общее значение ok, или я должен удалить эту часть...
346 просмотров
schedule
22.09.2022
Обработчик событий с ограничением скорости в erlang/OTP
У меня есть источник данных, который генерирует точки с потенциально высокой скоростью, и я хотел бы выполнить длительную операцию с каждой точкой; но я также хотел бы, чтобы система изящно деградировала, когда она становится перегруженной,...
813 просмотров
schedule
12.03.2023
Создание коммерческой системы: чистый Erlang или Erlang / OTP?
Я собираюсь создать систему на Erlang (моя проблема может быть решена лучше при использовании нескольких процессоров), и я бегло просмотрел:
Выучите Erlang ;
Erlang / OTP в действии
Программирование на Erlang (Армстронг);...
1732 просмотров
schedule
15.01.2023
Супервайзер Erlang: как проверить, все ли работники ответили
У меня есть руководитель с N рабочими процессами. Как обычно, супервизор может отправить сообщение рабочему процессу, и есть handle_cast , который отправляет ответ от рабочего супервизору.
Как я могу проверить, что ровно все N работников ответили...
950 просмотров
schedule
11.10.2023
Mnesia Фрагментация и репликация: результирующая доступность и надежность
Следуя решениям вопроса, который я недавно задавал о фрагментации мнений , у меня все еще есть ряд проблем. Рассмотрим следующий сценарий (вопрос, который я задаю, основан на том, что следует ниже):
У вас есть управляемое данными...
1534 просмотров
schedule
08.12.2022
Как вы представляете многопроцессорные логические сущности в OTP?
Представьте, что у нас есть следующая проблема:
У нас есть http-клиенты, которые выполняют запросы к нашему программному обеспечению. Итак, у нас есть один процесс, который всегда доступен для них и хранит их запросы в очереди.
Нам нужно...
172 просмотров
schedule
29.04.2024
Erlang gen_server с длительными задачами
Добрый день,
У меня есть процесс gen_server , который периодически выполняет некоторые длительные задачи по обновлению состояния в handle_info :
handle_info(trigger, State) ->
NewState = some_long_running_task(),...
4148 просмотров
schedule
17.07.2022
Супервайзер Erlang. Перезапуск процесса, если он не удался несколько раз, откажитесь и отправьте сообщение
У меня есть несколько gen_server рабочих, которые периодически запрашивают некоторую информацию от аппаратных датчиков. Датчики могут временно выйти из строя, это нормально. Если датчик выходит из строя, рабочий завершает работу с исключением....
1217 просмотров
schedule
28.08.2022
Обработка тайм-аутов в OTP
У меня есть приложение, определенное
{application, ps_barcode,
[{description, "barcode image generator based on ps-barcode"},
{vsn, "1.0"},
{modules, [ps_barcode_app, ps_barcode_supervisor, barcode_data, wand, ps_bc]},
{registered, [ps_bc,...
1175 просмотров
schedule
29.09.2022
Mochiweb: включение и компиляция других библиотек
Мое приложение использует Mochiweb.
Я заметил, что файлы Mochiweb находятся в каталоге myapp/deps/mochiweb , и rebar компилирует их, когда я запускаю make в каталоге myapp .
Я хотел добавить ibrowse , чтобы написать несколько тестов,...
463 просмотров
schedule
10.08.2022
Мой супервизор падает, когда я пытаюсь запустить его из eshell?
Я очень новичок в OTP, я пытаюсь создать простой пример, чтобы понять поведение супервайзера:
Вот простой инкрементный сервер
-module( inc_serv ).
-behaviour( gen_server ).
-export( [ start/0, inc/1, stop/0 ] ).
-export( [ init/1,...
2056 просмотров
schedule
29.07.2023
Интервал перезапуска супервизора Erlang
У меня есть руководитель со стратегией перезапуска one_for_one . Можно ли установить временной интервал между перезапуском дочернего процесса?
Например, удаленная база данных раздавлена, и я хочу подождать 10 секунд между попытками восстановления...
1428 просмотров
schedule
19.10.2022