Сообщество - Лига программистов
Добавить пост

Лига программистов

1 509 постов 11 409 подписчиков

Популярные теги в сообществе:

Indie Gamedev: unity + colyseus.io

Доброго времени суток, не с того я зашел на пикабу, на самом деле я еще немного занимаюсь разработкой игры, проект тянется с 2020 года, был заморожен на 2 года.

Вообще мой путь в программирование начался плюс минус с попыток модификаций сталкера…

Когда начал воскрешать, выглядело всё так

Indie Gamedev: unity + colyseus.io Компьютерные игры, Gamedev, Indiedev, Видео, Видео ВК, Длиннопост

Дальнейшие шаги эволюции:

Indie Gamedev: unity + colyseus.io Компьютерные игры, Gamedev, Indiedev, Видео, Видео ВК, Длиннопост

тут была сделана генерация ресурсов, которые можно собирать по планете, чтобы строить город / войска:

Indie Gamedev: unity + colyseus.io Компьютерные игры, Gamedev, Indiedev, Видео, Видео ВК, Длиннопост

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

Indie Gamedev: unity + colyseus.io Компьютерные игры, Gamedev, Indiedev, Видео, Видео ВК, Длиннопост

ну и функционал, на котором сейчас стоим

Indie Gamedev: unity + colyseus.io Компьютерные игры, Gamedev, Indiedev, Видео, Видео ВК, Длиннопост

gameplay footage

на этом пока всё,
всем лучей добра

Показать полностью 5 1

Про авторский контент на pikabu

Вот на сайте все жалуются на то, что авторского контента не хватает. Так а откуда он возьмется? Вы же сами засираете вообще всё.

Вот я опубликовал полезное видео для тех, кто хочет сменить профессию на бизнес-аналитика.

И что в итоге?

Одни минусы. Все ж дохера умные. Сразу пойдут обвинения в инфоциганстве.

Не, ну если вы хотите дальше читать посты про:

РСП
Как я бросил пить
Алименты
Я великий трахаль, но жена не ценит
Перезаливы с Reddit

Ну вперед и с песней. А как только вам выкладываешь полезный контент, так все сразу минусят типа реклама. Какая, блять, реклама? Мы же ничего не продаем вам, но все равно пидорасы.

Ну тогда живите на перепостах.

А сели все таки интересно посмотреть что-то авторское, то я пишу про этот пост.

Борьба с паразитным трафиком на сайте

Для ЛЛ: мой опыт борьбы с ботами на сайте. Старался кратко, но тема большая. Поэтому только основное и то много получилось.

Хотелось бы затронуть тему паразитного трафика на сайтах. Те, кто работают с вебом, периодически бывают по обе стороны «добра» и «зла»: то защищаемся от разного рода трафика, то наоборот его создаем (например, парсим данные). Последние месяцы мне приходится как раз бороться с теми, кто не является людьми, но постоянно создают пустую нагрузку на проектах.


Сразу скажу, что имею дело с разными серверами: массхостинг, vps и собственные. Инфраструктуры разные, подходы у админов тоже. Поэтому рассказываю про самый обычный способ: как найти ботов и заблокировать их на уровне веб-сервера. Под ботами имеются в виду любые автоматические системы, а не только те, которые открыто говорят про себя, что они роботы. Вряд ли открою какие-то тайны, просто расскажу свой подход. Опишу только основные моменты. Я уже и так понял, что кратко писать не умею, а тема очень объемная.

И сразу про защиту через CloudFlare. Её не рассматриваю по своим причинам, это не тема для данного поста. Но да, кто хочет, тот использует этот сервис.

Один из частых советов, которые дают при вопросе о защите от ботов - это создания списка этих самых ботов. Поэтому на поисковиках ищут ссылки на гитхаб репозитории со списком «плохих ботов». Примеров много (вот раз, вот два). Можно ли использовать эти списки? И да, и нет. Не все роботы из них перейдут на ваш сайт, а те, кто действительно создает трафик, могут и не быть в этом списке. Поэтому, если хочется, то копируем данные по ботам и добавляем в свой конфиг (или .htaccess, если у вас Apache). Но не останавливаемся на этом.

Далее нам нужны логи нашего веб сервера. Лучше всего, если у нас их много – данные от двух недель и более. Если меньше или их вообще нет, то идем в настройки веб-сервера и указываем ему, что логи надо хранить. Для посещаемых проектов лучше сразу еще настроить logrotate, чтобы ежедневно ваши лог-файлы сжимались в свой архив. Так удобнее будет их скачивать и хранить.

Допустим, логи у нас есть. Работать мы будем с access.log (далее – лог-файл), а error.log, если он не пустой, просматриваем на наличие ошибок, которые могли допустить в своих скриптах. Больше он нам не понадобиться.

Если у вас в счетчике посещаемости (пусть это будет Яндекс.Метрика) ноль посещений, то это не значит, что на сайт никто не ходит. Открываете лог-файл и видите, что сайт постоянно отдает данные всяким автоматическим системам. Плохие мы уже могли забанить (см. выше) и им на их запросы отдается 403 ошибка. С этим разобрались. Остались те, которые вроде бы пользователи, но в Метрике их нет или они помечены как роботы, а может быть и приняты за реальных людей. Часто это накрутчики поведенческих факторов. Ваш сайт может и не быть их целью, но на нем они учатся, а также прокачивают себя. Многие из них довольно примитивны. Их мы отфильтруем.

Для этого воспользуемся анализатором логов. Их много, можете взять любой. Мне, как разработчику, зашел GoAccess, т.к. я могу запустить его через Docker и мне не нужно ставить никаких дополнительные программы.

Пишем в консоле команду (взял из мануала, для базовых данных годится):

cat access.log | docker run --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED - > report.html

На выходе у нас html файл с полным отчетом. Ради интереса вы можете подробно изучить статистику и сравнить ее с той же Я.Метрикой. Но для практической части нам сейчас нужен блок «Visitor hostnames and IPs». Сортировку в таблице делаем по убыванию в поле Visitors и ищем те адреса, у которых много hits и много visitors (можно и по Visitors отсортировать, если вам так удобнее).

Борьба с паразитным трафиком на сайте Личный опыт, Сайт, Боты, Блокировка, Проект, Длиннопост

Например, первая строка не удовлетворяет этим условиям, но мы ее все равно смотрим и видим, что это любопытный crawler, который нам не нужен и он точно будет забанен. На четвертой строке как раз нужный пациент. С одного IP много разных «браузеров». Такое бывает. Поэтому берем IP и смотрим, что это вообще такое.

Борьба с паразитным трафиком на сайте Личный опыт, Сайт, Боты, Блокировка, Проект, Длиннопост
Борьба с паразитным трафиком на сайте Личный опыт, Сайт, Боты, Блокировка, Проект, Длиннопост

Получаем, что это прокси из Люксембурга. Банить ли такой адрес? Решать вам. Как показала моя практика и анализ нескольких десяткой сайтов, за такими проксями реальных людей очень мало. Через Метрику можете найти визитеров с этого прокси и увидеть, что на сайте они почти ничего не делали, или же их действия носили исключительно автоматизированный характер.
Прокси точно стоит забанить, если его клиенты одни мобильные устройства. Вот тут с 99% работа ботов.
Советую также обратить внимание на то, сколько трафика эти клиенты забрали с сайта. Если мало, то это вряд ли были люди.

С большой вероятность стоит банить IP разных хостинг провайдеров: Amazon, iHor, VPSville, Cloud Networks, WestHost и прочих игроков рынка, которые пачками продают IPv6 адреса. Если ваш сайт поддерживает IPv6, то в логах вы увидите уникальную картину, когда от таких провайдеров массово ломятся всякие мобильные устройства на ваш сайт. Блокировать этих провайдеров надо не по одному IP, а блокировать все их сетки с указанием CIDR в том же .htaccess (например, deny from 2a05:fb41::/32)

Замечу, что блокировать все подряд без анализа не стоит! Во-первых, ряд прокси относится к серьезным компаниям, которыми пользуются обычные пользователи. Во-вторых, имеет место быть тенденция поднятия своего прокси/vpn на хостинге. Так что IP будет от хостинга. И если клиентов с такого IP несколько устройств, то вряд ли стоит блокировать такой адрес. Другое дело, если через него ломится целый зоопарк устройств от старых iPod и Windows 7 машин до чего-то совсем экзотического типа Wii.

Также с помощью анализа логов находим crawler, которые в начале статьи искали на гитхабе. Здесь вы можете скорректировать свой список, что-то добавить. Все же есть местечковые боты, которые тоже не несут никакого смысла.

Вопрос: почему это дерьмо вообще появляется на вашем сайте? Как я уже сказал ранее, не всем нужен конкретно ваш сайт. Да, конечно, может кто-то из конкурентов пытается за счет ПФ завалить ваш сайт в поисковой выдаче. Но вроде как эта тему уже не так актуальна и для Яндекса, и для Гугла. Но вот тема с прокачкой ботов, получения ими хорошего «fingerprint» для них важна. Да и смежная тема скликивание рекламы актуальна, где боты должны доказывать проверяющим системам, что они типа люди. Так что если у вас есть сайт, то боты к вам придут. Особенно, если сайт попал в базу тех, кто отдает этим ботам адреса. Например, есть один такой сайт в России, у которого есть свое API, за счет которого он живет, и отдает ботам домены для посещения. Сайты каталогизированы по тематикам, так что бота можно натравливать и прокачивать прямо по тематическим ресурсам. Конечно, у себя вы тоже можете забанить по referrer таких «посетителей» (в логах увидите адрес api.pf….). Но только совсем тупые боты отдают ссылку на этот сервис.

Что происходит после блокировок.

Для сайта с нормальным органическим трафиком происходит увеличение количества просмотров и визитов. Так же растет метрика «время на сайте». Все остальное почти не меняется. Да, значение посещаемости тоже просядет, но очень несильно.

Борьба с паразитным трафиком на сайте Личный опыт, Сайт, Боты, Блокировка, Проект, Длиннопост

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

Замечу, что «Доля визитов роботами» почти не снизится (в среднем станет меньше примерно на 5%), не ждите здесь прорыва. На это есть несколько причин. Одна из них в том, что боты все равно вернутся с других адресов. Вы просто сейчас отфильтровали один пул, но скоро появится другой. Так что это постоянная работа. Еще одна причина – вы блокировали только самых простых. Самый жир не палится так просто. У них или хорошие прокси (например, от Мегафона), где нельзя заблокировать всего провайдера, т.к. точно под замес попадут реальные пользователи, или уже хороший уровень прокачки, при котором имеем сложные движения мыши, свои локальные прокси на не стандартных портах и прочее, прочее. И есть разумные сомнения: «А бот ли это?»

Для сайтов, у которых трафик только из «людей», придется увидеть реальную картину:

Борьба с паразитным трафиком на сайте Личный опыт, Сайт, Боты, Блокировка, Проект, Длиннопост

Ночью обновил на одном из проектов .htaccess со своим списком фильтров. Видно, что идет просадка по посещаемости.

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

Работать с логами лучше не менее раз в неделю-две. Актуализируйте IP адреса, список ботов и сайт будет бороться с разного рода паразитным трафиком.

Показать полностью 5

Срочный поиск работы в айти (PHP) | Russian IT

UPD:

ссылка на резюме от 11.02 12:04 на гугл диске: https://drive.google.com/file/d/1xMonXWeDgC7tk7NbisU4xBKdQC1...

upd: 12/02, 0:21

Всем доброго времени суток!

В декабре 2023 был уволен по неведомой причине работодателем, перед этим взял айти ипотеку, он это знал, с работодателем сохранились все записи разговоров, в том числе и те, где причина увольнения не объясняется.

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

Работодатель незаконно сократил и должен по факту еще около миллиона рублей, 20 числа платеж по ипотеке, что делать - пока не знаю (в трудовую инспекцию уже отправил жалобу)

Попросил уже и друзей всех и знакомых, помочь с поиском, пока нет результатов

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

ссылка на резюме (для всех)

https://disk.yandex.ru/d/w6gOnIv2dhu31Q

ссылка на резюме (для эйчаров)

https://hh.ru/resume/5a2230b4ff0542f8d10039ed1f4d4a58587563

телеграмм: https://t.me/ivorozhbit

если не сложно - поддержите плюсиком, пожалуйста, если сложно - минусом

вторая часть марлезонского балета: https://pikabu.ru/story/russian_it_part_1_2_11122401

Показать полностью

Задача по SQL. Вывести текст по вертикали

Вывод текста построчно. Использование рекурсии. CONNECT BY

Телеграм-канал: https://t.me/sql_oracle_databases

Показать полностью

Выход с сайтов

Привет пикабушникам, нужна помощь. Что-то навертел в браузере Edge, каждый раз требуется теперь вводить пароли, для Gmail ещё и на телефоне подтверждать. Как избавиться?

Нужен антивирус

Имеется старенький(10 годиков) ноутбук на восьмерке. Чихает, пердит, но если сильно не грузить, работает пока, тьфу-тьфу. Так вот, нужна замена клинеру и авасту, лан клинер хрен с ним, но без антивируса ощущение что гол как сокол. Будьте добры, посоветуйте не тяжелый и более менее нормальный бесплатный антивирус, подходящий для пожилого железа. Чтобы ну хотя бы что нибудь ловил, не блочил нужные сайты и в целом не хулиганил.

На пути к FAANG 15

Сперва - маленький повод для гордости.

На пути к FAANG 15 Учеба, IT, Программирование, Faang

Я вошел в топ 100к пользователей LeetCode. "Фигня!", скажете вы. Может и фигня, но для меня это охренеть какое достижение - еще недавно я был за пределами топ 300к!

А еще у меня было очень много моков.

За прошедшее время я провел порядка 5 разных моковых интервью - и что характерно, ВСЕ они были с людьми из Нидерландов. Воздух у них какой-то особый, что ли. Я прям как изгой какой-то со своим Кипром. Что характерно - ни один мок не завалил, но справедливости ради, мне и вопросы попадались довольно легкие - пара на стек, один на sliding window, парочка на heap. Я в свою очередь с выбором вопросов заморачивался, поэтому у меня были и бинарный поиск (в rotated массиве, чтобы жизнь сказкой не казалась), и топологическая сортировка, и хитрая задачка на reorder связанного списка. В общем, мои вопросы пока еще никто с разбегу не решал, что, наверное, хорошо. Во всяком случае, я подсвечиваю моим будущим конкурентам за вакансии слабые места.

В общем, хорошо, что алгоритмы идут плавно - это поддерживает мою самооценку, потому что системный дизайн идет очень трудно. В курсе довольно сложный английский в плане построения предложений, плюс сам материал непростой, плюс сейчас идут прям фундаментальные основы, которые надо знать и понимать. Врагу не пожелаю читать про ребалансировку шардов БД на английском. Приходится перечитывать материал по несколько раз, плюс повторять на следующий день, чтобы закрепить. Самое интересное - я прекрасно понимаю, что вряд ли мне придется на интервью залезать в такие глубины - если только мне сильно не повезет, и интервьюер не захочет узнать, как хорошо я понимаю, как работает WAL и чем он отличается от логической репликации. Но я хочу понимать, вот в чем штука. Хочу не просто выучить, как задизайнить Netflix, а быть способным понять, почему все именно так, а не по-другому.

В общем, я чувствую себя так, будто из кодера превращающусь в программиста. Это, в принципе, круто само по себе, без всякого FAANG.

Показать полностью
Отличная работа, все прочитано!