Комментарии 7
next: StateMachine pattern, MQ для очередей сообщений, Apache Camel для обработчиков сообщений из очередей (многопоточность встроенная)
По сути то, что перечислено — это больше касается изучения самой java и технологий вокруг нее.
У меня проект направлен на изучение именно TelegramAPI и все что связано с ним в контексте языка java.
Как бы так сказать… сделать сложно — проще всего. Я пытаюсь найти ту грань, где мы не выпрыгиваем на какие-то сложные вещи и пытаемся реализовать базовый функционал на core платформе.
Почему так? Наверное после выхода первых статей я опирался на те вопросы, что задавались мне в личку. И отталкивался я в этом мануале от фразы, что чаще всего боты на питоне пишут а под джаву ничего толкового нет.
Обратил внимание на Thread.sleep()
. Мне кажется, вместо ConcurrentLinkedQueue
в данном конкретном случае лучше взять BlockingQueue
и тогда не придется усыплять поток (Thread.sleep
). Метод queue.poll()
будет его блокировать, а отпускать именно в тот момент, когда появляется сообщение.
А вообще рекомендую глянуть мою статью на эту тему: https://habr.com/ru/post/445072/
а вот эти две очереди в разных тредах только для того, чтобы /notify можно было выполнить через n секунд? Если же на нашем севере нет долгих обработок, то все можно в одном треде делать, получается? (несмотря на то, что сообщения от разных людей могут быть)
TelegramBot. Базовый функционал. Мухи отдельно, котлеты отдельно. (Часть 2)