Мысли программиста / TeaCoder
1.88K subscribers
80 photos
2 videos
1 file
75 links
Связаться со мной: https://t.me/Vados_torpeda

Мой ютуб канал: https://youtube.com/@TeaCoder52
Мой Github: https://github.com/TeaCoder52
Download Telegram
Всем привет!

В последние дни я работал над своим сайтом и сделал действительно много чего! Вот что нового появилось:

1. Новый способ оплаты

Теперь можно оплатить из любой страны - поддерживаются Visa и Mastercard, выпущенные не российскими банками, а также American Express и UnionPay.

2. Новые способы авторизации

Теперь к аккаунту можно привязать Discord и Telegram, чтобы входить через них на сайт.

3. Многочисленные исправления и улучшения на бэкенде

Исправил кучу багов и провёл серьёзную оптимизацию. Если интересно, загляните на релиз в гитхабе. Проект с открытым исходным кодом, можно следить за всеми изменениями или даже покопаться в коде:) Буду рад, если закинете звёздочек

#TeaCoderUpdates
6🔥36👍4🙈3❤1
Сегодня я сделал микросервис для работы с медиа на Golang. Он отвечает за хранение и получение файлов, например, аватаров пользователей и постеров фильмов.

Я реализовал получения файлов из S3 по ключу через HTTP. При этом загрузка и удаление файлов настроены через gRPC и выполняются между другими микросервисами.

Параллельно я продолжаю готовить сценарий для курса. Уже сделал теоретическую часть, стараюсь сделать материал максимально структурированным и логичным, чтобы каждый блок давал реальную пользу. В ближайшее время начну записывать теорию, а затем приступлю к большой практической части с самим проектом.

Работа идёт полным ходом 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥58👍13❤11❤‍🔥2
Всем привет!

Хочу поделиться своими мыслями. Сейчас я заканчиваю работу над проектом для курса, и за всё это время я реально очень сильно подружился с микросервисами. Я и раньше пробовал с ними работать, но этот проект - самый большой из тех, что я делал на микросервисах.

Больше всего меня удивило и порадовало то, насколько они могут быть разными. И я уверен, вы увидите в курсе, что я использовал этот плюс по максимуму. Самый яркий пример - один из сервисов написан на Go, а остальные на Nest.js.

Но это не всё.
В микросервисе для пользователей я использовал TypeORM вместо Prisma
В сервисе, который отвечает за логику кинотеатров, я сделал архитектуру DDD
В ещё одном микросервисе я использовал Mongoose
И ещё много других различий есть в остальных микросервисах

Благодаря этому я смогу подробно рассказать обо всех этих технологиях в видео. Именно поэтому курс получится объёмным. По функционалу проект возможно не больше, чем клон твича. Но если говорить именно про курс и количество материала, я уверен, что он его сильно превзойдёт!

Всем удачного кодинга!
2👍62🔥28❤11
Начал записывать практическую часть курса по микросервисам, и получается достаточно неплохо. Хочу прям втопить газ в пол, чтобы как можно быстрее записать курс. У меня есть примерный план, по которому я буду двигаться, и теперь в течение месяца я активно буду заниматься этим видео. Думаю результат вас очень обрадует!
26🔥65👍8❤7
Всем привет!

Я сейчас во всю записываю курс по микросервисам, и на данный момент уже получилось около 8 часов материала. Видео обещает быть очень длинным, потому что если смотреть со стороны функционала, то за эти 8 часов я разобрал только базовую логику авторизации и реализацию генерации токенов.

Дальше, конечно, будет проще: в начале нужно заложить фундамент и объяснить много ключевых вещей. По моим оценкам, бэкенд часть выйдет примерно на 20 часов и вероятно, это станет самым большим курсом по микросервисам на российском ютубе.

Надеюсь, за ближайшие три недели доснять оставшийся материал. Фронтенд - самая простая часть, его можно записать очень быстро, и с микросервисной архитектурой он конечно не сравнится.

Ну что поделать - работаем!
2🔥64❤11👍8❤‍🔥2😱2👏1
Доброе утро!

Сегодня с самого утра проснулся и первым делом получил сообщение в лс о том, что на моём сайте перестало работать создание платежей в Юкассе. Что очень странно, ведь вчера днём всё работало и я никаких изменений не вносил. Проверил сам и действительно не работает. Ну что поделать, у нас работа такая: сегодня всё ок, завтра всё внезапно ломается

Изначально я подумал, что Юкасса внезапно отключила возможность отправлять запросы на их API с зарубежных серверов. Возможно что-то поменяли, подумал я. Но потом, когда я зашёл на их API в браузере через волшебные три буквы, он тоже не откликался и я уже был уверен, что дело в географии.

Но оказалось всё куда интереснее. Позже я сделал curl ipinfo.io и увидел, что мой backend сервер висит на AS215439. То есть дело было не в зарубежных серверах вообще, а конкретно в моём хостере, чьи подсети платежные системы, скажем так, не особо жалуют. Поэтому Юкасса просто перестала принимать запросы именно с моего сервера.

Купил впску на территории РФ, чтобы поднять на нём прокси и вот тут случился еще один интересный момент. Я запускаю curl ipinfo.io, смотрю в org, а там AS213220. А это ещё хуже, чем AS215439 - одна из самых жёстко заблокированных подсетей, которую режут вообще все банки, платёжные сервисы и половина интернета. Спасибо конечно, но такой подарок мне не нужен

Всё таки когда покупаешь сервер по цене шавермы (которая сейчас даже дороже стоит), какой-то подвох обязан быть)

В итоге я купил самую дешевую впску в РФ с нормальным ASN у Бегета, настроил там прокси и теперь этот сервер работает как прокладка: запросы в Юкассу идут через него, и всё снова отлично. Проблема решена!

Заодно обновил свой SDK для работы с Юкассой в Nest.js, так как использую её у себя на бэкенде. Добавил в объект настроек proxyUrl, и если у вас возникнет такая же проблема - просто укажите host и port, и всё магически заработает. Документацию под это обновлю чуть позже.

Несмотря на всю эту историю, если вам нужны мощные и дешёвые серверы, очень советую play2go.cloud (конечно же рефка). Да, у них иногда есть тот самый "сетевой сюрприз". Но по железу за такие деньги просто космос. У меня там 4 vCPU Ryzen 5950X, 8GB RAM, 150GB NVMe за 850 рублей. За такие характеристики это преступно дёшево.

Ну и желаю всем продуктивного дня и поменьше багов!
1❤24🔥14👍4🥰2😁2
Приветствую всех!

Вел на сайте технические работы, сейчас работа сайта восстановлена. Причина была в нашумевшей уязвимости в последних версиях React и Next.js (CVE-2025-55182 / CVE-2025-66478), которая позволяла удалённо выполнять код на сервере через RSC/Server Functions.

Кстати, Cloudflare внедрили автоматическую фильтрацию подозрительных запросов, а некоторые хостеры начали самостоятельно сканировать проекты и временно ограничивать сервера, если уязвимость не закрыта.

Сети сейчас массово сканируются ботами, которые проверяют сайты на наличие этой уязвимости, поэтому если вы используете React/Next.js - обязательно обновитесь до исправленных версий, если ещё этого не сделали.
2🔥12❤5👍4
Я зашёл на свой сервер сейчас и понял, что ситуация оказалась куда веселее, чем я думал

Пока я обновлял проект из-за той самой уязвимости, на машину уже успел прилететь бот, который активно сканирует интернет на наличие этой дыры. В итоге на сервере я обнаружил майнер, запущенный через удалённое выполнение кода прямо из окружения некста.

Процесс жил в RAM, работал из /dev, был запущен от root, жрал почти 300% CPU и породил несколько тысяч zombie-процессов. Следов автозапуска не было, а бинарь удалял себя сразу после старта, так что вредоносными оказались именно выполняемые процессы в памяти.
2😱23😨3❤‍🔥2🔥1🙈1
Наконец восстановил работу сайта. Переустановил сервер с нуля, перенёс бд, обновил секреты и полностью перевёл фронтенд на Next.js 16
1❤‍🔥18👍12🔥9❤1
Всем привет!

Восстановил работу сайта с документацией для своего SDK nestjs-yookassa. Кроме того, обновил саму документацию и добавил guard для проверки того, что вебхук действительно пришёл от юкассы при помощи IP-адресов. Достаточно просто повесить декоратор на эндпоинт с вебхуком - и всё, защита готова.

Также восстановил работу международных платежей на своём сайте, они были недоступны из-за смены платёжного провайдера. Сейчас я подключил новый платёжный шлюз с более расширенным списком стран из которых принимаются карты.

Что касается курса по микросервисам, работа идёт полным ходом. У меня уже готово 20 часов материала. Снимаю очень много, и не припомню, чтобы когда-то записывал так продуктивно. В среднем получается по 2–3 часа в день.
1🔥26👍8❤4
Приветствую! Хочу поделиться своими успехами по поводу предстоящего курса по микросервисам.

Пару дней назад я закончил самую сложную часть курса. Как раз в эти дни я активно снимаю более лёгкие главы, и с микросервисами сейчас работа идёт как по маслу. Параллельно я объединяю всё отснятое и вырезаю лишние моменты.

По моим подсчётам, на данный момент уже готово около 29 часов материала. Оставшиеся 10-11 часов это ещё несколько микросервисов и фронтенд.

На фронтенд я не планирую делать особый акцент. Сейчас даже подумываю частично его через копипастить (конечно не полностью). Например, после авторизации и личного кабинета я ещё думаю, как лучше поступить.

Кстати, напишите как бы вы хотели видеть фронтенд в этом курсе. Он здесь нужен в первую очередь для демонстрации красивого и законченного результата, а основной акцент будет сделан именно на микросервисной архитектуре.
5🔥43👍3❤2❤‍🔥2
Интересно посмотреть, как у вас прошёл год на GitHub. Делитесь статистикой в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥5
Поставил загружаться на ютуб
1🔥68❤9❤‍🔥8
🚀 Микросервисы на практике - сервис продажи билетов!

Я наконец готов представить самый масштабный проект на канале - полноценный курс по микросервисной архитектуре, в котором мы с нуля создаём сервис продажи билетов за 35 часов.

В ходе курса мы будем работать с такими технологиями, как Nest.js, gRPC, Proto, RabbitMQ, PostgreSQL, Prisma, Redis, MongoDB, TypeORM, Drizzle ORM, Docker, GitHub Actions, Prometheus, Loki и Grafana.

Кроме того, я покажу, как создавать и публиковать собственные пакеты в NPM, мы напишем один из микросервисов на Golang - и это лишь малая часть того, что вас ждёт.

Прошу вас поставить лайк и написать комментарий. Это поможет продвинуть видео, а меня будет мотивировать выпускать такие масштабные проекты и курсы дальше.

📱 Посмотреть видео можно на ютубе: https://tcdr.cc/microservices-youtube
📱 Исходный код можно скачать на сайте: https://tcdr.cc/microservices-course

UPD: конкурс завершён, победитель найден. Спасибо всем, кто участвовал!
607🔥78❤15😱7
Вот до куда долелел мой новый видос, уже в ленте новостей от Гугла) Спасибо всем за поддержку, уже 2к просмотров за 4 часа
3🔥89❤17👍12
Поздравляю всех с новым годом! 🎉

Хочу подвести итоги года по поводу моего канала и платформы. Курсов было не так много, но я постарался сделать каждый максимально полезным. Самыми масштабными проектами стали курс по Nest.js, который до сих пор набирает обороты, курс по интеграции нескольких платёжных систем и конечно же, курс по микросервисной архитектуре, который длиться целых 35 часов. 🚀

За этот год я накопил уйму опыта разработки, как для заказчиков, так и для себя. Было много экспериментов, ошибок и побед, но каждый такой урок помогает двигаться дальше.

Что касается сайта, в апреле был крупный апдейт, а осенью я внедрил премиум-подписку, которая открывает доступ ко всему исходному коду. Благодаря этому сайт начал приносить первую прибыль. 💵

В целом год оказался очень продуктивным. Я приобрёл много нового опыта и в новом году планирую выпускать больше видео для вас, как больших курсов, так и небольших лекций или практических гайдов. 📸

Спасибо всем, кто поддерживает канал и платформу. Ваша поддержка мотивирует создавать новые проекты и делиться с вами полезными знаниями. 🤝

Желаю всем в новом году новых достижений, интересных проектов и вдохновения для реализации своих идей! 🥳 🍾
Please open Telegram to view this post
VIEW IN TELEGRAM
❤44🎉18🍾7👍5🔥5
Всем привет! Решил вам немного рассказать, что такое ТСПУ и как оно работает 🧐

ТСПУ (технические средства противодействия угрозам) - это специальное оборудование, которое ставят прямо на магистрали у провайдеров. По сути, это централизованный комплекс на базе DPI (Deep Packet Inspection). И это не просто блокировка по IP или DNS.

Оно смотрит глубже: не только куда идут данные, но и как они устроены, как клиент и сервер общаются, с какой частотой идут пакеты, какой размер и структура сообщений. Даже если всё зашифровано, остаются метаданные, по которым понятно, что это за соединение и что делает пользователь.

С ТСПУ можно блокировать сервисы тонко. Например как сейчас с ютубом, то есть интерфейс видно, но при этом видео не воспроизводится. С точки зрения пользователя это выглядит как лаги интернета, а не как явная блокировка. То есть соединение есть, но часть функций может работать криво.

Все эти правила применяются централизованно, а не у каждого провайдера отдельно. То есть если что-то поменяли на уровне ТСПУ, это сразу касается всех, без ручной настройки.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27❤6😱3
Победитель в конкурсе определён!

Секретная фраза из курса по микросервисам была найдена, все призы я отправил

UPD: она находится на 33:41:56
❤14😁4👍3
На моём ютуб канале стукнуло 10 000 подписчиков, это большая цифра. Спасибо всем кто поддерживает мой канал, двигаемся дальше!
1🔥92❤21👍11🎉5