Специальное предложение
  • +8
Оставили заявки
Программирование

Бесплатный вебинар

09 декабря 2022

Создаём высокопроизводительный сервер на C++

День 2 из 3: Интенсив Язык C++: создаём высокопроизводительный сервер за 3 дня

  • Михаил Овчинников

    Главный методист технического направления Skillbox
О вебинаре
Бесплатный вебинар «Создаём высокопроизводительный сервер на C++». Вы познакомитесь с принципами построения многопоточного приложения и пропишете основную логику работы чат-сервера.

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

Спикер — Михаил Овчинников, главный методист технического направления Skillbox и специалист в области разработки высоконагруженных систем и обработки больших данных. 17 лет работает в программировании, 12 лет — в образовательных проектах.

Рекомендованные

86 комментариев
  • Skillbox.Live

    Skillbox.Live

  • Иван Сергеев

    Иван Сергеев

    22:52

    Все супер! Очень интересно и полезно для наших серверов

  • Вячеслав Полушин

    22:52

    огромное спасибо, и правда очень интересно!

  • jjj jjj

    22:51

    не прайват а привэйт

  • Andrey P

    Andrey P

    22:51

    Очень круто и полезно. Спасибо!

  • Teryokhin Alexander

    Teryokhin Alexander

    22:51

    да было интересно

  • jjj jjj

    22:47

    нет вот *ws - объект

  • Teryokhin Alexander

    Teryokhin Alexander

    22:47

    а указатели разве считаются за обьекты?

  • jjj jjj

    22:46

    Teryokhin Alexande нет указатель на него

  • Teryokhin Alexander

    Teryokhin Alexander

    22:45

    ws экземпляр класса

  • jjj jjj

    22:44

    *ws - объект

  • jjj jjj

    22:42

    ws не объект я ошибся это указ-ль

  • Skillbox.Live

    Skillbox.Live

    22:42

    Телеграм-чат интенсива - https://t.me/+3QeJuQaZ9lRjYmRi

  • Иван Сергеев

    Иван Сергеев

    22:41

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

  • Andrey P

    Andrey P

    22:40

    Пропустил начало вебинара. Спасибо)

  • jjj jjj

    22:39

    ws - указатель на объект

  • Andrey P

    Andrey P

    22:38

    А можете порекомендовать либу, аналогичную по удобству uWebSocket, но для TCP/UDP сокетов?

  • jjj jjj

    22:38

    не!!! ws-указатель!!

  • jjj jjj

    22:34

    ws-это объект

  • Grach Muradyan

    Grach Muradyan

    22:32

    здесь синтаксис ws->publish() это обращение к методу класса ws ?

  • Yury Balashov

    Yury Balashov

    22:31

    Запись трансляции будет?

  • jjj jjj

    22:24

    private - привэйт

  • Максим Добрягин

    Максим Добрягин

    22:21

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

  • Skillbox.Live

    Skillbox.Live

    22:12

    ws = new WebSocket("ws://localhost:9001"); ws.onmessage = ({data}) => console.log(data);

  • Nikolay Б

    Nikolay Б

    22:08

    Я правльно понимаю что в нашем примере мы реализуем однопоточный (асинхронный) сервер

  • Skillbox.Live

    Skillbox.Live

    22:08

    Ютюб подлагивает

  • Иван Сергеев

    Иван Сергеев

    22:06

    может ли многопоточность быть реализована на мощной GPU? в какие библиотеки смотреть на сях

  • Grach Muradyan

    Grach Muradyan

    22:05

    так похоже как в IoT работает - спим / ждем события - прерывания...

  • Andrey P

    Andrey P

    22:04

    Есть ли смысл комбинировать многопоточность и асинхронность? Чтобы задействовать все доступные ядра

  • jjj jjj

    22:03

    паралельно если много ядер а если 1

  • Nikolay Б

    Nikolay Б

    22:03

    Я правелно понимаю Асинхроность по сути построна однопоточность

  • Федор Лазарев

    Федор Лазарев

    22:02

    openMP хорошая и простая библиотека распараллеливания для начинающих

  • Оскар Рахимов

    22:02

    при подключении библиотек они горят красным, хотя все установлено. Может ли это быть из за того что установлены на 86, а у меня система 64 битная

  • jjj jjj

    21:52

    #include <thread>

  • Иван Сергеев

    Иван Сергеев

    21:51

    а как ассинхроность реализовать на с++, через либы какие-то?

  • Skillbox.Live

    Skillbox.Live

    21:51

    наша любимая рекламно-информационная пауза)

  • jjj jjj

    21:49

    рекламная пауза

  • Nikolay Б

    Nikolay Б

    21:47

    а каrже проблема race condition для latest_user_id (многопоточный доступ)?

  • Dmitrii Konovalov

    Dmitrii Konovalov

    21:47

    Не слышно и не видно)

  • jjj jjj

    21:44

    спасиб Gra Murа