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

  Рет қаралды 51,565

Константин Козловский

Константин Козловский

Күн бұрын

Пікірлер: 128
@mikhailshirokov8464
@mikhailshirokov8464 6 ай бұрын
Очень толковое и краткое видео. Без воды. У автора талант.
@ИванУсольцев-з3ь
@ИванУсольцев-з3ь 2 ай бұрын
Послушал, было интересно. Таких тем немного. Нехватает подробных разборов в глубину. Было бы интересно послушать про безопаность и практические примеры, например как получить к нему доступ извне, что говорилось в этом видео про "хакнуть" сканером
@vitfed933
@vitfed933 6 ай бұрын
Спасибо за понятные простые объяснения
@JohannesSillanpaa-jv4ly
@JohannesSillanpaa-jv4ly 6 ай бұрын
Спасибо за видео о важности понимания сетевых протоколов и транспортных соединений, а также за подробное объяснение работы сокетов и прикладных протоколов. Я долго работал в сфере обслуживания и решил перейти в IT. Рассматривал разные курсы, но выбрал Skypro, потому что там есть наставники, которые помогают на протяжении всего обучения. Теперь работаю удаленно и доволен своим решением.
@leomysky
@leomysky 6 ай бұрын
Спасибо за видео, Константин
@СергейКолотов-к2е
@СергейКолотов-к2е 6 ай бұрын
Я тысячный подписчик, теперь ты тысячник ютубер) Ура!
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Спасибо:)) поздравляю и тебя))
@gatos-su
@gatos-su 6 ай бұрын
Ну да ну да, сеть это база😂 Мы тут все пишем сервера и клиенты каждый день на сырых сокетах) Тогда бы уж было интересно узнать о типовых проблемах и приемах при работе с сетью.
@ДмитрийАфанасьев-б4р
@ДмитрийАфанасьев-б4р 5 ай бұрын
Не плохо было бы ещё объяснить , что есть Web сокеты которые можно рассматривать как протокол прикладного уровня или же обёртку над сокетами TCP и сокеты транспортного уровня как интерфейс передачи данных на прикладной уровень , и привести пример что Http протокол на более низком уровне работает тоже через сокеты
@luckytima2315
@luckytima2315 6 ай бұрын
Братик ты хорош реально
@АнтонБ-х9у
@АнтонБ-х9у 6 ай бұрын
Сокет поднимается на прослушку какого-то порта... Все, что нужно знать про разработку Газпромбанка.
@СергейГончаров-э4г
@СергейГончаров-э4г 6 ай бұрын
Спасибо, для меня было полезно.
@dendr576
@dendr576 6 ай бұрын
В след раз музыку можно чуть потише. А так видео на уровне, так держать спасибо!
@devpops3393
@devpops3393 6 ай бұрын
я бы посоветовал начать разбираться с файловых сокетов, тогда и понимание операционной системы возрастет в несколько раз. а сеть лучше изучать с протоколов l2 и l3, сокеты тут крайне второстепенная абстракция .
@glebbondarenko67
@glebbondarenko67 6 ай бұрын
Я так и не понял. Заголовок "сеть и сокеты", а весь рассказ про OSI model. В Linux socket это вообще файлы.
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Сокет это также и слот для процессора на материнской плате), а если говорить про Unix сокеты, то это не совсем файл, точнее в никсах вообще почти все элементы файловой системы это файлы. Для сокетов некоторых видов создаются специальные файлы, а по сути тут больше касается файловых дескрипторов
@broken_beyond_belief
@broken_beyond_belief 6 ай бұрын
+1, мы вроде собрались TCP / UNIX сокеты потрогать, а нам про ОСИ рассказывают
@vryaboshapko
@vryaboshapko 6 ай бұрын
Когда говорят, что в юниксе всё есть файл - это не совсем правда. Файл - это в первую очередь кусочек памяти на жёстком диске, которые можно найти с помощью пути в файловой системе. И создатели юникса в своё время зацепились за идею, что вот этот путь в файловой системе - это универсальный идентификатор, через иерархию вложенных объектов можно описать что угодно: от буквально файлов до периферийных устройств и сокетов. В конце концов, запись в файл - это отправка упорядоченного набора байтов. И отправка команд на устройство - это тоже упорядоченный поток байтов. И отправка данных по сети - та же отправка байтов. Да, на физическом уровне это может быть устроено очень по-разному, но легко сводится в один интерфейс. Дальше, сокеты. Сокет - это заимствованное без перевода слово (хотя я когда-то встречал учебник, где написано про «работу с гнёздами», и ещё больше запутался, потому что представил птичьи гнёзда 😅). Слово socket переводится как розетка, гнездо, разъём. То есть, что-то, куда втыкается провод, чтобы появилось подключение. Если взять современный телевизор и посмотреть на него сзади - там как раз будет набор сокетов (разъёмов). Каждый своего типа, а если их несколько одинаковых - они пронумерованы. И в разъём одного типа без молотка не получится вставить штекер другого типа. Так вот, сокет в системном программировании - это метафора такого физического разъёма. Когда запускается сервер, он просит у системы: выдели мне разъём вот такого типа с таким-то адресом («порядковым номером»), и система выделяет его, если она умеет работать с таким типом, и такой адрес для такого типа ещё не занят. А когда клиент пытается подключиться к сокету, он просит систему подключиться к такому-то типу сокета с таким-то адресом, и система пытается это сделать по мере сил, например, отправляет запрос в сеть. Кстати, именно из-за клиента сервер всегда должен явно указать адрес нового сокета (и это иногда приводит к ошибкам биндинга, мол, порт уже занят), потому что клиент не может подключиться к какому-нибудь сокету, ему нужно точно знать адрес. Соответственно, сокеты бывают разных типов. В видео упомянуты TCP и UPD, если вы знакомы с юниксами, возможно, слышали про UNIX-сокет. Плюс есть ещё несколько более экзотических. У разных типов сокетов разные способы адресации. UNIX-сокеты используют для этого путь в файловой системе, то есть, по такому сокету приложения могут общаться только в рамках одного компьютера. А TCP и UPD используют пару IP адрес и порт. IP адрес обычно назначается провайдером или роутером, а порт - это просто число от 1 до 65536. По большому счёту, номер порта может быть произвольным, но есть стандартный список, по которому номер порта можно предположить из названия протокола (например, по умолчанию HTTPS - это 443).
@alexlobozinin7664
@alexlobozinin7664 6 ай бұрын
хороший видос, успехов в ведении канала)
@devmargooo
@devmargooo 6 ай бұрын
Отличное видео! Как раз собираюсь делать свой пет проект, было очень актуально!
@asdfasdfasdfaasdfa
@asdfasdfasdfaasdfa 6 ай бұрын
иди на онлифанс. там больше заработаешь. нахер тебе тот пет проект
@bgs12
@bgs12 6 ай бұрын
Отличное объяснение для чайников )))) Спасибо! Подписался!
@olegchumin6634
@olegchumin6634 2 ай бұрын
Помнится когда то лет 5-6 назад попались уроки Евгения Волосатова там создавались на Java сокет серверы , рекомендую для практики
@МихаилЧеботаряну
@МихаилЧеботаряну 6 ай бұрын
Классное видео. Добавлю немного душноты JDBC - Java Database Connectivity стандарт для взаимодействия только jvm языков (Java, Kotlin, Scala ...) c БД. У вругих языков будет немного другое название протокола, например ODBC.
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Согласен, хорошее замечание )
@andrewleex
@andrewleex 6 ай бұрын
Джава головного мозга
@Batyrbala
@Batyrbala 6 ай бұрын
За познания в киберсеке респект
@konstantin-mf9fg
@konstantin-mf9fg 6 ай бұрын
Хорошо объяснил! Жму руку. Но очень часто фокус на авторе меняется, глаз дергаться начал
@DmitrySorokin-cx7yz
@DmitrySorokin-cx7yz 6 ай бұрын
Респект за видео! Было бы вообще супер, если ты порекомендовал бы литературу для изучения сетей, сокетов и пр.
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Самый лучший способ изучать - пробовать на практике, так у тебя и код останется и получишь реальные знания и понимание. Придумай себе задачу и приступай к реализации
@DmitrySorokin-cx7yz
@DmitrySorokin-cx7yz 6 ай бұрын
@@konstantin.kozlovskiy но все же, наверное, должна быть системность? Чтобы все освоенные знания, а конкретно здесь про сети, были уложены по полочкам и в конечном счете иметь общую целостную картинку. Кажется, разрозненные знания тоже не самый лучший вариант
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
@@DmitrySorokin-cx7yz с одной стороны да, с другой стороны знаний в мире столько, что никаких полочек не хватит, поэтому в первую очередь нужно изучать то, что тебе непосредственно нужно, а если оно действительно окажется полезно, то постепенно и общая картина придет)
@artemgilmanov417
@artemgilmanov417 6 ай бұрын
Спасибо за видео! А на каком языке вы писали сокеты и как изучали протоколы? Заранее спасибо.
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Я начинал с C#, сейчас в приоритете Kotlin, протоколы изучал постепенно, на протяжении многих лет, когда сталкивался с ними на практике
@cozma73
@cozma73 6 ай бұрын
Судя по видосу , на русском 😂😂😂😂
@elvin_nsk
@elvin_nsk 6 ай бұрын
Спасибо, золотой человек. Наконец-то я понял, что такое "сокет".
@ARTEMFOREVER
@ARTEMFOREVER 6 ай бұрын
где заказать такую сеточку на микрофон?)
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
На яндекс маркете)
@yukishidzu
@yukishidzu 6 ай бұрын
книга по теории игр на фоне хорошая кстати, тоже лежит дома, тема крайне интересная
@andviktor
@andviktor 6 ай бұрын
Самое сложное в сокетах это с умным лицом снимать дубли 5.5 часов, чтобы потом 17-минутное видео каши сделать на склейках. Результат видео: +0 очков навыков у новичков, но зато -20 к самооценке (лицо то вон умное какое, а главное умное и молодое одновременно, а у меня вот не очень...). Выражаюсь метриками манчкина.
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Спасибо что посмотрели)
@tirex8954
@tirex8954 5 ай бұрын
Ваш комментарий - бред. Незнание новичковых терминов ставит вас на уровень кухарки, а не программиста
@andviktor
@andviktor 5 ай бұрын
@@tirex8954 каких терминов?)
@gredar77
@gredar77 5 ай бұрын
Типичное видео обо всем и ни о чем. Лучше бы конкретно про абстракцию сокета поговорил
@virtuallife3985
@virtuallife3985 6 ай бұрын
Дружище JDBC это все таки драйвер, а не протокол, и отличается от подхода обмена данных для веб
@JuliaT522
@JuliaT522 6 ай бұрын
Супер спасибо! База!
@MrBorA8572
@MrBorA8572 6 ай бұрын
Несколько раз услышал фразу "я не знаю". Это нужно исправлять. Иначе, зачем слушать человека, которой не знает.
@b213videoz
@b213videoz 6 ай бұрын
Так щас у вас модно "янезнайкать" вместо классики "к примеру"
@666kirillka
@666kirillka 6 ай бұрын
Нормальная тема.Спасибо
@AkylbekTemirbekov
@AkylbekTemirbekov 6 ай бұрын
Классный ролик, было бы здорово если бы вы добавили тайм-коды
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Добавил
@ВладиславГришин-ш7ш
@ВладиславГришин-ш7ш 6 ай бұрын
пулл соединений - это за гранью понимания. если http соединение после ответа сервера клиенту сразу закрывается сервером, о каком пуле соединений на стороне сервера можно говорить?
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Соединение закрывается не всегда. Вот небольшая вырезка из статьи в интернете: HTTP 1.1 вводит еще одно понятие по умолчанию, которое называется keep-alive. keep-alive означает, что соединение TCP, по которому ходит HTTP, не закрывается. Причем по умолчанию так должны себя вести все веб-сервера.
@BumatuHe
@BumatuHe 6 ай бұрын
Сокет это совершенно конкретное понятие в unix-like системах а не какое не абстрактное :)
@alexdr1279
@alexdr1279 6 ай бұрын
тут игра слов. На самом деле socket это абстракция в си, которая описывает разные типы сокетов) и создает универсальный интерфейс для разных типов каналов.
@evgeniia.875
@evgeniia.875 6 ай бұрын
Очень сложно подаётся информация
@deprekosta
@deprekosta 4 ай бұрын
Скорее всего ты еще слабовата для этой информации
@Torbjorn-ph7rt
@Torbjorn-ph7rt 3 ай бұрын
Спойлер - в конце концов он объяснил что такое сокеты в 17:15
@adammartin7477
@adammartin7477 6 ай бұрын
Взрывные котята
@aleksanderpeshkin2266
@aleksanderpeshkin2266 6 ай бұрын
Как пишутся Серверы на сокетах ?? ))) И расскажи про API и gRPC
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
на каком языке практикуешь? гугли "simple socket server " примеров очень много а самый простейший сокет сервер можно поднять командой nc -nlvp (утилита netcat)
@aleksanderpeshkin2266
@aleksanderpeshkin2266 6 ай бұрын
Golang начал изучать и везде слышу про Websocket
@bocik2854
@bocik2854 6 ай бұрын
Это другое!​@@aleksanderpeshkin2266
@alexdzehil7194
@alexdzehil7194 6 ай бұрын
​@@aleksanderpeshkin2266 websocket это вообще про другое
@DmGinIT
@DmGinIT 6 ай бұрын
Ахуенна,, братан. Спасибо за разжёвку
@ismism4782
@ismism4782 6 ай бұрын
В заголовке - сокеты. В ролике кроме того, что это абстракция больше них*я, и поток воды
@Nop_90h
@Nop_90h 6 ай бұрын
Начало бодрит.. "Ну сокет и сокет, что такое сокет, я долгое время не мог понять, что такое сокет". На самом деле это должен был быть шортс, где автор говорит следующую фразу "Кто на плюсах пишет - boost asio, остальным соболезную. " ибо сынок, нехуй тебе к сокетам лезть, если ты не зарюхал, как асинхронное io работает
@WaTeR-exe
@WaTeR-exe 6 ай бұрын
Ты крутой !
@АнтонБ-х9у
@АнтонБ-х9у 6 ай бұрын
Директор!
@konstantinp440
@konstantinp440 6 ай бұрын
Про сокет не понятно (
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
задай вопрос, попробую ответить :)
@руслангасак-н6с
@руслангасак-н6с 6 ай бұрын
Если кратко, то сокет это ip адрес + его порт, как пример: 127.0.0.1:8000 --- это сокетом будет называться
@TimofeiA-h3c
@TimofeiA-h3c 6 ай бұрын
пара ip адрес + порт называется сокетом, вот и все
@kaisersuzo5286
@kaisersuzo5286 5 ай бұрын
Как нарисовать сову. Берем карандаш, бререм листок бумаги, рисуем сову...
@konstantin.kozlovskiy
@konstantin.kozlovskiy 5 ай бұрын
да, но теперь ты знаешь, что для рисования совы нужен листок бумаги и карандаши :P
@АнтонМинеев-о1ж
@АнтонМинеев-о1ж 5 ай бұрын
@@konstantin.kozlovskiy ну следуя этой логике я скоро стану инженером NASA, потому что я знаю, что что бы построить ракету нужен метал и завод. 😉
@konstantin.kozlovskiy
@konstantin.kozlovskiy 5 ай бұрын
Кажется для того чтобы стать Nasa инженером нужно чуть больше знаний))
@xelth
@xelth 6 ай бұрын
всё остальное понимание будет облЕгчено ... ты случайно в огранах не работал? ;)
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Вроде не работал)
@AlexeyPack
@AlexeyPack 5 ай бұрын
тему не раскрыл. Такое ощущени - прочитал рускоязычное вики. Протоколы - это лишь способы взаимодействия через эти сокеты. А сокет по существу это файловый дескриптор на чтение и запись. Способ взаимодействия с этим особая тема!
@AnatolikZX
@AnatolikZX 6 ай бұрын
Лучшее объяснение из всех что я видел 🎉
@Arkan0409
@Arkan0409 6 ай бұрын
И что же ты понял? Автор явно сам так и не понял что такое сокеты.
@araslanrus
@araslanrus 6 ай бұрын
Я разработчик - я хочу писать код, а не вот это вот все 😅😅
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
просто код писать это кодер а не разработчик )
@RoKaLeNo
@RoKaLeNo 6 ай бұрын
💪
@olegdolgopolov5838
@olegdolgopolov5838 6 ай бұрын
JDBC это не протокол
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Если быть идеально точным, то это платформенно независимый промышленный стандарт взаимодействия Java приложений с различными СУБД
@EgorDemeshko
@EgorDemeshko 6 ай бұрын
так и не понял что такое сокеты))
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Абстрактное понятие, отражающее комбинацию из адреса и порта, к которым можно подключиться (сетевой сокет)
@b213videoz
@b213videoz 6 ай бұрын
Да ну? А может база - таки база дaннblх ? Back-end Dev != Network Engineer
@AlexeyPack
@AlexeyPack 5 ай бұрын
зашёл услышать что такое сокеты А он про протоколы 😂😂😂. Видать чел так и не разобрался что такое сокеты!
@Димадулевич
@Димадулевич 6 ай бұрын
Манчкин апокалипсис топ, рекомендую
@n0rmaLman
@n0rmaLman 5 ай бұрын
Спасибо, но тема сокета не раскрыта.
@igorseledtsov7345
@igorseledtsov7345 6 ай бұрын
Это теперь бакенд? юю да нет до бакенда это далеко...
@ЕвгенийГригорьев-ш9ц
@ЕвгенийГригорьев-ш9ц 4 ай бұрын
Дядя! Между TCP и HTTP - есть еще несколько слоев! Граждане!Б такое чувство что этот НАЧАЛЬНИк держит нас тут за дураков. А вообще как он стал исполнительным директором по разработке?! Ну неужели через постель?
@konstantin.kozlovskiy
@konstantin.kozlovskiy 4 ай бұрын
Через постель пытался, не взяли))
@SpitefulEngineer
@SpitefulEngineer 3 ай бұрын
[ˈsɒkɪt] -- сокит
@UrfinJuse-u6y
@UrfinJuse-u6y 6 ай бұрын
Ну да, нормально такиобиснил
@mousepro9963
@mousepro9963 6 ай бұрын
Таненбаум - Компьютерные сети...
@АлексейСтерх-ь2в
@АлексейСтерх-ь2в 6 ай бұрын
Так сложно объяснял простейшие и базовая в построении сетей как IP адрес и порт. Socket - это сочетание IP адреса и порта. И всё!
@vladimirneverov7065
@vladimirneverov7065 6 ай бұрын
Оу, как-то вдруг картинка проявилась, спасибо)
@oyaebunterkrah_
@oyaebunterkrah_ 6 ай бұрын
Ничего не ясно
@denpinkman9057
@denpinkman9057 6 ай бұрын
За видео респект, но вот ради интереса, челику на вид дай бог 28 лет, а он исполнительный директор по разработке, раскрой рецепт)
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
я почти все свободное время занимаюсь программированием и изучением технологий, уже вошло в привычку, постоянно прокачиваться, простого рецепта нет)
@somebodycrazy
@somebodycrazy 6 ай бұрын
Хотел послушать про сокетам, а послушал по сетям вроде. Ни о протоколе толком ничего, ни как с ним работать, хотя бы вебсокеты для примера. Короче какой то кликбейт )
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
WebSocket это протокол поверх TCP, конкретно про этот протокол я ничего не рассказывал, но сокеты это не только WebSocket)
@БорисЖивотное-ц2б
@БорисЖивотное-ц2б 6 ай бұрын
что то айтишников развелось.плюнуть некуда
@konstantin.kozlovskiy
@konstantin.kozlovskiy 6 ай бұрын
Куда ж без них
@andrewgreenfild764
@andrewgreenfild764 3 ай бұрын
Видео называется сокеты и сеть, и собственно где сокеты? Где по большому счету сеть? Перечислить протоколы и? Автор не зачёт.
@vlache6983
@vlache6983 6 ай бұрын
Я непонял. а где же слои OSI , сначала надо про слои и потом уже идти дальше! про сокеты он рассказывать начал, айпи и порт и вот и готов сокет, с английского сокет это розетка, куда надо подключить свой штепсель, все! Пользуйся ! нет тут 17 минут все накидано (
@michaeljordan1283
@michaeljordan1283 4 ай бұрын
Зачем он машет руками?
@ANTGChannel
@ANTGChannel 6 ай бұрын
Чел, невозможно смотреть. Зачем приближать отдалять каждый кадр
@ДжонГолд-г9я
@ДжонГолд-г9я 5 ай бұрын
Ты объясняешь людям что такое сокет при этом используешь не понятные им слова как распарить. Ты не одыкват???
@konstantin.kozlovskiy
@konstantin.kozlovskiy 5 ай бұрын
вроде "одыкват"...)
@sergeysemenov3674
@sergeysemenov3674 6 ай бұрын
Мужик, тебе не стоит заниматься преподаванием. Размахивание руками не тянет на наглядность.
@Batyrbala
@Batyrbala 6 ай бұрын
Это тебе не стоит заниматься разработкой
@sergeysemenov3674
@sergeysemenov3674 6 ай бұрын
@@Batyrbala обиженка🤣
@dabradax9117
@dabradax9117 6 ай бұрын
Проходи мимо умник, тебе не стоит прокачивать свою голову 😂
@sergeysemenov3674
@sergeysemenov3674 6 ай бұрын
Аргументы будут? Или просто так буквы пишете?😁
@uzurbatya
@uzurbatya 6 ай бұрын
Абсолютно верно про наглядность. Но я б добавил слово "пока". Автор, не унывай, ты молодец. Но ПОКА это не тянет на преподавание. Инфографику, примеры, абстрактные аналогии, что там ещё? в общем объяснить эту тему надо лучше, много чего затронуто, но в красивую картину не складывается
@cozma73
@cozma73 6 ай бұрын
Нда , такое ощущение что просто заученный текст , каша однако
@Y84-q5e
@Y84-q5e 6 ай бұрын
Человек, который говорит о парсинге, а среди интернет обучателей таковых очень много, априори занимается или занимался фактическим "воровством" чужого контента. Есть и другое назначение, но к сожалению его применяют гораздо реже.
@vlache6983
@vlache6983 6 ай бұрын
про тисипи и удп - читает ( ну ппц. невыучил! переделать !
@maksim5775
@maksim5775 6 ай бұрын
слабенько, очень слабенко
@ЮрийЛитвин-т3ь
@ЮрийЛитвин-т3ь 6 ай бұрын
И где вас таких головастых выращивают...
Spring Boot. БЫСТРЫЙ старт. Backend
14:43
Константин Козловский
Рет қаралды 1 М.
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН
Как я пережил DDOS атаку школьников? Backend
21:09
Константин Козловский
Рет қаралды 16 М.
BB1: Be Brave, Show Your CV [eng subs]
1:08:35
Yegor Bugayenko
Рет қаралды 38 М.
КАК УСТРОЕН TCP/IP?
31:32
Alek OS
Рет қаралды 244 М.
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН