Сеть и сокеты. База для backend разработчика.

Поделиться
HTML-код
  • Опубликовано: 21 ноя 2024

Комментарии • 128

  • @mikhailshirokov8464
    @mikhailshirokov8464 5 месяцев назад +8

    Очень толковое и краткое видео. Без воды. У автора талант.

  • @JohannesSillanpaa-jv4ly
    @JohannesSillanpaa-jv4ly 5 месяцев назад +47

    Спасибо за видео о важности понимания сетевых протоколов и транспортных соединений, а также за подробное объяснение работы сокетов и прикладных протоколов. Я долго работал в сфере обслуживания и решил перейти в IT. Рассматривал разные курсы, но выбрал Skypro, потому что там есть наставники, которые помогают на протяжении всего обучения. Теперь работаю удаленно и доволен своим решением.

  • @ИванУсольцев-з3ь
    @ИванУсольцев-з3ь Месяц назад

    Послушал, было интересно. Таких тем немного. Нехватает подробных разборов в глубину. Было бы интересно послушать про безопаность и практические примеры, например как получить к нему доступ извне, что говорилось в этом видео про "хакнуть" сканером

  • @vitfed933
    @vitfed933 5 месяцев назад +2

    Спасибо за понятные простые объяснения

  • @sergeydostovalov6180
    @sergeydostovalov6180 5 месяцев назад +5

    Ну да ну да, сеть это база😂 Мы тут все пишем сервера и клиенты каждый день на сырых сокетах) Тогда бы уж было интересно узнать о типовых проблемах и приемах при работе с сетью.

  • @АнтонБ-х9у
    @АнтонБ-х9у 5 месяцев назад +18

    Сокет поднимается на прослушку какого-то порта...
    Все, что нужно знать про разработку Газпромбанка.

  • @Batyrbala
    @Batyrbala 5 месяцев назад +2

    За познания в киберсеке респект

  • @MrBorA8572
    @MrBorA8572 5 месяцев назад +17

    Несколько раз услышал фразу "я не знаю". Это нужно исправлять. Иначе, зачем слушать человека, которой не знает.

    • @b213videoz
      @b213videoz 5 месяцев назад +1

      Так щас у вас модно "янезнайкать" вместо классики "к примеру"

  • @СергейКолоколов-к2е
    @СергейКолоколов-к2е 5 месяцев назад +9

    Я тысячный подписчик, теперь ты тысячник ютубер) Ура!

  • @dendr576
    @dendr576 5 месяцев назад +3

    В след раз музыку можно чуть потише. А так видео на уровне, так держать спасибо!

  • @leomysky
    @leomysky 5 месяцев назад +2

    Спасибо за видео, Константин

  • @ДмитрийАфанасьев-б4р
    @ДмитрийАфанасьев-б4р 4 месяца назад +2

    Не плохо было бы ещё объяснить , что есть Web сокеты которые можно рассматривать как протокол прикладного уровня или же обёртку над сокетами TCP и сокеты транспортного уровня как интерфейс передачи данных на прикладной уровень , и привести пример что Http протокол на более низком уровне работает тоже через сокеты

  • @yukishidzu
    @yukishidzu 5 месяцев назад +1

    книга по теории игр на фоне хорошая кстати, тоже лежит дома, тема крайне интересная

  • @devpops3393
    @devpops3393 5 месяцев назад +3

    я бы посоветовал начать разбираться с файловых сокетов, тогда и понимание операционной системы возрастет в несколько раз. а сеть лучше изучать с протоколов l2 и l3, сокеты тут крайне второстепенная абстракция .

  • @МихаилЧеботаряну
    @МихаилЧеботаряну 5 месяцев назад +15

    Классное видео. Добавлю немного душноты JDBC - Java Database Connectivity стандарт для взаимодействия только jvm языков (Java, Kotlin, Scala ...) c БД. У вругих языков будет немного другое название протокола, например ODBC.

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +1

      Согласен, хорошее замечание )

    • @andrewleex
      @andrewleex 5 месяцев назад

      Джава головного мозга

  • @konstantin-mf9fg
    @konstantin-mf9fg 5 месяцев назад +4

    Хорошо объяснил! Жму руку. Но очень часто фокус на авторе меняется, глаз дергаться начал

  • @bgs12
    @bgs12 5 месяцев назад

    Отличное объяснение для чайников ))))
    Спасибо! Подписался!

  • @luckytima2315
    @luckytima2315 5 месяцев назад +2

    Братик ты хорош реально

  • @elvin_nsk
    @elvin_nsk 5 месяцев назад +1

    Спасибо, золотой человек. Наконец-то я понял, что такое "сокет".

  • @СергейГончаров-э4г
    @СергейГончаров-э4г 5 месяцев назад +1

    Спасибо, для меня было полезно.

  • @devmargooo
    @devmargooo 5 месяцев назад +2

    Отличное видео! Как раз собираюсь делать свой пет проект, было очень актуально!

    • @asdfasdfasdfaasdfa
      @asdfasdfasdfaasdfa 5 месяцев назад

      иди на онлифанс. там больше заработаешь. нахер тебе тот пет проект

  • @DmitrySorokin-cx7yz
    @DmitrySorokin-cx7yz 5 месяцев назад +1

    Респект за видео!
    Было бы вообще супер, если ты порекомендовал бы литературу для изучения сетей, сокетов и пр.

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      Самый лучший способ изучать - пробовать на практике, так у тебя и код останется и получишь реальные знания и понимание. Придумай себе задачу и приступай к реализации

    • @DmitrySorokin-cx7yz
      @DmitrySorokin-cx7yz 5 месяцев назад

      @@konstantin.kozlovskiy но все же, наверное, должна быть системность? Чтобы все освоенные знания, а конкретно здесь про сети, были уложены по полочкам и в конечном счете иметь общую целостную картинку. Кажется, разрозненные знания тоже не самый лучший вариант

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

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

  • @olegchumin6634
    @olegchumin6634 Месяц назад

    Помнится когда то лет 5-6 назад попались уроки Евгения Волосатова там создавались на Java сокет серверы , рекомендую для практики

  • @andviktor
    @andviktor 5 месяцев назад +16

    Самое сложное в сокетах это с умным лицом снимать дубли 5.5 часов, чтобы потом 17-минутное видео каши сделать на склейках. Результат видео: +0 очков навыков у новичков, но зато -20 к самооценке (лицо то вон умное какое, а главное умное и молодое одновременно, а у меня вот не очень...). Выражаюсь метриками манчкина.

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +1

      Спасибо что посмотрели)

    • @tirex8954
      @tirex8954 4 месяца назад

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

    • @andviktor
      @andviktor 4 месяца назад

      @@tirex8954 каких терминов?)

    • @gredar77
      @gredar77 4 месяца назад

      Типичное видео обо всем и ни о чем. Лучше бы конкретно про абстракцию сокета поговорил

  • @artemgilmanov417
    @artemgilmanov417 5 месяцев назад +1

    Спасибо за видео!
    А на каком языке вы писали сокеты и как изучали протоколы?
    Заранее спасибо.

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      Я начинал с C#, сейчас в приоритете Kotlin, протоколы изучал постепенно, на протяжении многих лет, когда сталкивался с ними на практике

    • @cozma73
      @cozma73 5 месяцев назад

      Судя по видосу , на русском 😂😂😂😂

  • @AkylbekTemirbekov
    @AkylbekTemirbekov 5 месяцев назад +5

    Классный ролик, было бы здорово если бы вы добавили тайм-коды

  • @alexlobozinin7664
    @alexlobozinin7664 5 месяцев назад +1

    хороший видос, успехов в ведении канала)

  • @glebbondarenko67
    @glebbondarenko67 5 месяцев назад +9

    Я так и не понял. Заголовок "сеть и сокеты", а весь рассказ про OSI model. В Linux socket это вообще файлы.

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

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

    • @broken_beyond_belief
      @broken_beyond_belief 5 месяцев назад +2

      +1, мы вроде собрались TCP / UNIX сокеты потрогать, а нам про ОСИ рассказывают

    • @vryaboshapko
      @vryaboshapko 5 месяцев назад +2

      Когда говорят, что в юниксе всё есть файл - это не совсем правда. Файл - это в первую очередь кусочек памяти на жёстком диске, которые можно найти с помощью пути в файловой системе. И создатели юникса в своё время зацепились за идею, что вот этот путь в файловой системе - это универсальный идентификатор, через иерархию вложенных объектов можно описать что угодно: от буквально файлов до периферийных устройств и сокетов. В конце концов, запись в файл - это отправка упорядоченного набора байтов. И отправка команд на устройство - это тоже упорядоченный поток байтов. И отправка данных по сети - та же отправка байтов. Да, на физическом уровне это может быть устроено очень по-разному, но легко сводится в один интерфейс.
      Дальше, сокеты. Сокет - это заимствованное без перевода слово (хотя я когда-то встречал учебник, где написано про «работу с гнёздами», и ещё больше запутался, потому что представил птичьи гнёзда 😅). Слово socket переводится как розетка, гнездо, разъём. То есть, что-то, куда втыкается провод, чтобы появилось подключение. Если взять современный телевизор и посмотреть на него сзади - там как раз будет набор сокетов (разъёмов). Каждый своего типа, а если их несколько одинаковых - они пронумерованы. И в разъём одного типа без молотка не получится вставить штекер другого типа.
      Так вот, сокет в системном программировании - это метафора такого физического разъёма. Когда запускается сервер, он просит у системы: выдели мне разъём вот такого типа с таким-то адресом («порядковым номером»), и система выделяет его, если она умеет работать с таким типом, и такой адрес для такого типа ещё не занят. А когда клиент пытается подключиться к сокету, он просит систему подключиться к такому-то типу сокета с таким-то адресом, и система пытается это сделать по мере сил, например, отправляет запрос в сеть. Кстати, именно из-за клиента сервер всегда должен явно указать адрес нового сокета (и это иногда приводит к ошибкам биндинга, мол, порт уже занят), потому что клиент не может подключиться к какому-нибудь сокету, ему нужно точно знать адрес.
      Соответственно, сокеты бывают разных типов. В видео упомянуты TCP и UPD, если вы знакомы с юниксами, возможно, слышали про UNIX-сокет. Плюс есть ещё несколько более экзотических. У разных типов сокетов разные способы адресации. UNIX-сокеты используют для этого путь в файловой системе, то есть, по такому сокету приложения могут общаться только в рамках одного компьютера. А TCP и UPD используют пару IP адрес и порт. IP адрес обычно назначается провайдером или роутером, а порт - это просто число от 1 до 65536. По большому счёту, номер порта может быть произвольным, но есть стандартный список, по которому номер порта можно предположить из названия протокола (например, по умолчанию HTTPS - это 443).

  • @virtuallife3985
    @virtuallife3985 5 месяцев назад +1

    Дружище JDBC это все таки драйвер, а не протокол, и отличается от подхода обмена данных для веб

  • @adammartin7477
    @adammartin7477 5 месяцев назад +2

    Взрывные котята

  • @BumatuHe
    @BumatuHe 5 месяцев назад +1

    Сокет это совершенно конкретное понятие в unix-like системах а не какое не абстрактное :)

    • @alexdr1279
      @alexdr1279 5 месяцев назад

      тут игра слов. На самом деле socket это абстракция в си, которая описывает разные типы сокетов) и создает универсальный интерфейс для разных типов каналов.

  • @666kirillka
    @666kirillka 5 месяцев назад +1

    Нормальная тема.Спасибо

  • @JuliaT522
    @JuliaT522 5 месяцев назад +1

    Супер спасибо! База!

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt 2 месяца назад

    Спойлер - в конце концов он объяснил что такое сокеты в 17:15

  • @DmGinIT
    @DmGinIT 5 месяцев назад +2

    Ахуенна,, братан. Спасибо за разжёвку

  • @AnatolikZX
    @AnatolikZX 5 месяцев назад +3

    Лучшее объяснение из всех что я видел 🎉

    • @Arkan0409
      @Arkan0409 5 месяцев назад +3

      И что же ты понял? Автор явно сам так и не понял что такое сокеты.

  • @Nop_90h
    @Nop_90h 5 месяцев назад

    Начало бодрит.. "Ну сокет и сокет, что такое сокет, я долгое время не мог понять, что такое сокет". На самом деле это должен был быть шортс, где автор говорит следующую фразу "Кто на плюсах пишет - boost asio, остальным соболезную. " ибо сынок, нехуй тебе к сокетам лезть, если ты не зарюхал, как асинхронное io работает

  • @ARTEMFOREVER
    @ARTEMFOREVER 5 месяцев назад +1

    где заказать такую сеточку на микрофон?)

  • @SpitefulEngineer
    @SpitefulEngineer 2 месяца назад

    [ˈsɒkɪt] -- сокит

  • @kaisersuzo5286
    @kaisersuzo5286 4 месяца назад +1

    Как нарисовать сову. Берем карандаш, бререм листок бумаги, рисуем сову...

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  4 месяца назад

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

    • @АнтонМинеев-о1ж
      @АнтонМинеев-о1ж 4 месяца назад

      @@konstantin.kozlovskiy ну следуя этой логике я скоро стану инженером NASA, потому что я знаю, что что бы построить ракету нужен метал и завод. 😉

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  4 месяца назад

      Кажется для того чтобы стать Nasa инженером нужно чуть больше знаний))

  • @aleksanderpeshkin2266
    @aleksanderpeshkin2266 5 месяцев назад +1

    Как пишутся Серверы на сокетах ?? ))) И расскажи про API и gRPC

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      на каком языке практикуешь? гугли "simple socket server " примеров очень много
      а самый простейший сокет сервер можно поднять командой nc -nlvp (утилита netcat)

    • @aleksanderpeshkin2266
      @aleksanderpeshkin2266 5 месяцев назад

      Golang начал изучать и везде слышу про Websocket

    • @bocik2854
      @bocik2854 5 месяцев назад

      Это другое!​@@aleksanderpeshkin2266

    • @alexdzehil7194
      @alexdzehil7194 5 месяцев назад

      ​@@aleksanderpeshkin2266 websocket это вообще про другое

  • @RoKaLeNo
    @RoKaLeNo 5 месяцев назад +1

    💪

  • @araslanrus
    @araslanrus 5 месяцев назад +3

    Я разработчик - я хочу писать код, а не вот это вот все 😅😅

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +2

      просто код писать это кодер а не разработчик )

  • @b213videoz
    @b213videoz 5 месяцев назад

    Да ну? А может база - таки база дaннblх ?
    Back-end Dev != Network Engineer

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 5 месяцев назад

    пулл соединений - это за гранью понимания. если http соединение после ответа сервера клиенту сразу закрывается сервером, о каком пуле соединений на стороне сервера можно говорить?

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      Соединение закрывается не всегда. Вот небольшая вырезка из статьи в интернете: HTTP 1.1 вводит еще одно понятие по умолчанию, которое называется keep-alive. keep-alive означает, что соединение TCP, по которому ходит HTTP, не закрывается. Причем по умолчанию так должны себя вести все веб-сервера.

  • @AlexeyPack
    @AlexeyPack 4 месяца назад +1

    тему не раскрыл. Такое ощущени - прочитал рускоязычное вики.
    Протоколы - это лишь способы взаимодействия через эти сокеты.
    А сокет по существу это файловый дескриптор на чтение и запись. Способ взаимодействия с этим особая тема!

  • @Димадулевич
    @Димадулевич 5 месяцев назад

    Манчкин апокалипсис топ, рекомендую

  • @xelth
    @xelth 5 месяцев назад +1

    всё остальное понимание будет облЕгчено ... ты случайно в огранах не работал? ;)

  • @WaTeR-exe
    @WaTeR-exe 5 месяцев назад +3

    Ты крутой !

  • @mousepro9963
    @mousepro9963 5 месяцев назад

    Таненбаум - Компьютерные сети...

  • @evgeniia.875
    @evgeniia.875 5 месяцев назад +1

    Очень сложно подаётся информация

    • @deprekosta
      @deprekosta 3 месяца назад

      Скорее всего ты еще слабовата для этой информации

  • @n0rmaLman
    @n0rmaLman 4 месяца назад

    Спасибо, но тема сокета не раскрыта.

  • @ismism4782
    @ismism4782 5 месяцев назад +2

    В заголовке - сокеты. В ролике кроме того, что это абстракция больше них*я, и поток воды

  • @ЕвгенийГригорьев-ш9ц
    @ЕвгенийГригорьев-ш9ц 3 месяца назад +1

    Дядя! Между TCP и HTTP - есть еще несколько слоев! Граждане!Б такое чувство что этот НАЧАЛЬНИк держит нас тут за дураков. А вообще как он стал исполнительным директором по разработке?! Ну неужели через постель?

  • @EgorDemeshko
    @EgorDemeshko 5 месяцев назад +2

    так и не понял что такое сокеты))

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +2

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

  • @igorseledtsov7345
    @igorseledtsov7345 5 месяцев назад +1

    Это теперь бакенд? юю да нет до бакенда это далеко...

  • @konstantinp440
    @konstantinp440 5 месяцев назад +2

    Про сокет не понятно (

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      задай вопрос, попробую ответить :)

    • @руслангасак-н6с
      @руслангасак-н6с 5 месяцев назад +1

      Если кратко, то сокет это ip адрес + его порт, как пример: 127.0.0.1:8000 --- это сокетом будет называться

    • @TimofeiA-h3c
      @TimofeiA-h3c 5 месяцев назад +1

      пара ip адрес + порт называется сокетом, вот и все

  • @olegdolgopolov5838
    @olegdolgopolov5838 5 месяцев назад +1

    JDBC это не протокол

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад

      Если быть идеально точным, то это платформенно независимый промышленный стандарт взаимодействия Java приложений с различными СУБД

  • @АлексейСтерх-ь2в
    @АлексейСтерх-ь2в 5 месяцев назад +2

    Так сложно объяснял простейшие и базовая в построении сетей как IP адрес и порт. Socket - это сочетание IP адреса и порта. И всё!

    • @vladimirneverov7065
      @vladimirneverov7065 5 месяцев назад +1

      Оу, как-то вдруг картинка проявилась, спасибо)

  • @denpinkman9057
    @denpinkman9057 5 месяцев назад +1

    За видео респект, но вот ради интереса, челику на вид дай бог 28 лет, а он исполнительный директор по разработке, раскрой рецепт)

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +1

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

  • @БорисЖивотное-ц2б
    @БорисЖивотное-ц2б 5 месяцев назад +2

    что то айтишников развелось.плюнуть некуда

  • @UrfinJuse-u6y
    @UrfinJuse-u6y 5 месяцев назад +2

    Ну да, нормально такиобиснил

  • @somebodycrazy
    @somebodycrazy 5 месяцев назад +1

    Хотел послушать про сокетам, а послушал по сетям вроде. Ни о протоколе толком ничего, ни как с ним работать, хотя бы вебсокеты для примера. Короче какой то кликбейт )

    • @konstantin.kozlovskiy
      @konstantin.kozlovskiy  5 месяцев назад +1

      WebSocket это протокол поверх TCP, конкретно про этот протокол я ничего не рассказывал, но сокеты это не только WebSocket)

  • @AlexeyPack
    @AlexeyPack 4 месяца назад +1

    зашёл услышать что такое сокеты
    А он про протоколы 😂😂😂. Видать чел так и не разобрался что такое сокеты!

  • @andrewgreenfild764
    @andrewgreenfild764 2 месяца назад

    Видео называется сокеты и сеть, и собственно где сокеты? Где по большому счету сеть? Перечислить протоколы и? Автор не зачёт.

  • @oyaebunterkrah_
    @oyaebunterkrah_ 5 месяцев назад

    Ничего не ясно

  • @ANTGChannel
    @ANTGChannel 5 месяцев назад +2

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

  • @michaeljordan1283
    @michaeljordan1283 3 месяца назад +1

    Зачем он машет руками?

  • @vlache6983
    @vlache6983 5 месяцев назад +2

    Я непонял. а где же слои OSI , сначала надо про слои и потом уже идти дальше! про сокеты он рассказывать начал, айпи и порт и вот и готов сокет, с английского сокет это розетка, куда надо подключить свой штепсель, все! Пользуйся ! нет тут 17 минут все накидано (

  • @ДжонГолд-г9я
    @ДжонГолд-г9я 4 месяца назад +1

    Ты объясняешь людям что такое сокет при этом используешь не понятные им слова как распарить. Ты не одыкват???

  • @sergeysemenov3674
    @sergeysemenov3674 5 месяцев назад +3

    Мужик, тебе не стоит заниматься преподаванием. Размахивание руками не тянет на наглядность.

    • @Batyrbala
      @Batyrbala 5 месяцев назад +1

      Это тебе не стоит заниматься разработкой

    • @sergeysemenov3674
      @sergeysemenov3674 5 месяцев назад

      @@Batyrbala обиженка🤣

    • @dabradax9117
      @dabradax9117 5 месяцев назад

      Проходи мимо умник, тебе не стоит прокачивать свою голову 😂

    • @sergeysemenov3674
      @sergeysemenov3674 5 месяцев назад

      Аргументы будут? Или просто так буквы пишете?😁

    • @uzurbatya
      @uzurbatya 5 месяцев назад

      Абсолютно верно про наглядность. Но я б добавил слово "пока". Автор, не унывай, ты молодец. Но ПОКА это не тянет на преподавание. Инфографику, примеры, абстрактные аналогии, что там ещё? в общем объяснить эту тему надо лучше, много чего затронуто, но в красивую картину не складывается

  • @cozma73
    @cozma73 5 месяцев назад +1

    Нда , такое ощущение что просто заученный текст , каша однако

  • @Y84-q5e
    @Y84-q5e 5 месяцев назад

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

  • @vlache6983
    @vlache6983 5 месяцев назад

    про тисипи и удп - читает ( ну ппц. невыучил! переделать !

  • @maksim5775
    @maksim5775 5 месяцев назад

    слабенько, очень слабенко

  • @ЮрийЛитвин-т3ь
    @ЮрийЛитвин-т3ь 5 месяцев назад +6

    И где вас таких головастых выращивают...