Рубрика «socket»

Практика использования классов Socket и ServerSocket в Java - 1

Введение

В этой статье будет показан пример создания небольшого многопользовательского чата с помощью сокетов. Для его реализации вам понадобиться Java и Maven.

Создание структуры проекта

Структуру проекта будем создавать с помощью Maven. Для этого откройте терминал и перейдите в директорию, в которой хотите создать проект, и введите следующую команду:

Читать полностью »

Допустим вы скачали на свой NetTop PC аудио книгу и теперь хотите её перекинуть на Android телефон. Как же это можно произвести? Предположим, что у вас нет желания извлекать SD карту, искать кард ридер или SD карта вовсе отсутствует в вашем телефоне. Как же перекинуть огромный файл с LapTop на PalmTop?

В этом тексте я напишу, как это можно сделать по WiFi.

Что надо из оборудования?

Читать полностью »

Название оборудования

Пояснение

1

Android смартфон

Приёмник файлов

P2P-форум с нуля | от NAT hole punching до автономной и полностью децентрализованной сети - 1


Многие, кто работают с интернет-сокетами в любой сфере IT, задаются вопросом о пробросе портов. Связано это с тем, что практически во всех домашних/общественных/корпоративных роутерах реализован механизм NAT, который перекрывает прямой доступ к устройствам в этих подсетях извне, общаясь с внешним интернетом от их имени.

У NAT есть киллер-фича — он представляет собой идеальный фаервол: атаки извне не могут использовать порты локальных устройств напрямую, следовательно, это решает проблему атак на сетевую уязвимость ОС.

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

Разнообразные сервисы работают на серверах, т. е. имеют некую ноду, которая имеет белый адрес в интернете (находится не за NAT). Все пользователи же подключаются к этому единому серверу. В таком случае проблема «невидимости» пользователей отпадает. Однако чисто серверное взаимодействие ограничивает скорость участников, так ещё и не отказоустойчиво. Если сервер упадёт, то все клиенты отправятся за ним (считаем, что это одноклеточный сервис не на всяких там kubernetes).

Как вы уже могли были догадаться, даже в реалиях, когда практически все устройства находятся за NATами, P2P реален. Когда вы являетесь участником bittorrent-раздачи, трансфер больших данных осуществляется напрямую. Как это работает? Поиск ответа на этот вопрос завёл меня в глубокие дебри, разгребая которые я написал оверлейную p2p-сеть, где трекерами являются сами её участники. Интересно? Тогда добро пожаловать под кат.Читать полностью »

Привет всем, не знаю зачем это надо, но может кому пригодится…

Дисклеймер: Я ни в коем случае не являюсь профессиональным Си программистом.

Что нам понадобится:

1. Любой компьютер на Linux, Ubuntu, Centos, MacOS… с доступом к порту 443 или 8443 из интернета.
2. Любой Си компилятор
3. Бибилиотеки openssl, libssl-dev («apt-get install openssl libssl-dev» в терминале, для Ubuntu)
Читать полностью »

Пишем свой мессенджер P2P - 1

На фоне обсуждения будущего интернет мессенджеров и прочтения статьи «Почему ваш любимый мессенджер должен умереть», решил поделиться своим опытом создания P2P приложения для общения независимо от сторонних серверов. Точнее — это просто заготовка, передающая одно сообщение от клиента серверу, дальнейшее расширение функционала зависит только от Вашей фантазии.
Читать полностью »

10 месяцев назад я начал делать браузерную игрушку. Выбор пал на cocos js в качестве графики и websocket в качестве общения с сервером. Технология очень понравилась и я на ней организовал всё общение игры с сервером. Использовал для этого эту статью. Но, к сожалению, тот код, который приведен в той статье, нельзя использовать в продакшене. Как выяснилось, уровень проблемы даже не критический, а блокирующий. Всё настолько плохо, что мне пришлось переписывать всё общение с сервером с вебсокетов на longpooling. В итоге я оставил вариант «если у нас браузер не сафари, то использовать websocket, иначе longpolling» и ещё немного ветвления на эту тему.

Так что опыт использования вебсокет в продакшене накопился приличный. И вот недавно случилось событие, которое сподвигло меня написать первую статью на Хабре.
Читать полностью »

Как-то раз, бороздя просторы интернета в поисках новых идей, я наткнулся на статью на Хабре Как мы написали helpdesk. В данной статье было описание системы очень похожей на ту, которую я создаю уже больше полугода. И я решил о ней написать.
Читать полностью »

Перевод первой части материала с github, обстоятельно объясняющего работу интернета: что именно происходит, когда пользователь набирает в адресной строке google.com?

Кнопка «ввод» возвращается в исходное положение

Для начала отсчёта выберем момент, когда кнопка «ввод» утоплена. В этот момент замыкается контур, отвечающий за эту кнопку. Небольшой ток проходит по логическим контурам клавиатуры. Они сканируют состояние всех переключателей, гасят паразитные электрические импульсы, и преобразовывают нажатие в код клавиши 13. Контроллер кодирует код для передачи в компьютер. Теперь это почти всегда делается через USB или Bluetooth, а раньше в процессе участвовали PS/2 или ADB.
Читать полностью »

Кризис кризисом, а «железо» рано или поздно обновлять надо. Иногда просто потому, что производительности не хватает, а иногда и по более печальным причинам: например, что-то померло, а покупать под старое железо новый процессор по текущим ценам может показаться сумасшествием — проще уж всё сразу обновить и забыть про эту проблему на несколько лет.

PC buyer's guide 2015: Материнские платы, чипсеты и сокеты - 1

Так или иначе, если вы не следите за железом каждый месяц, не сидите на профильных ресурсах или просто ваш удел — софт, а не хард, правильно подобрать железо бывает довольно сложно. Мы подготовили для вас целый цикл статей, благодаря которому каждый сможет как более-менее разобраться в актуальном железе, так и выбрать себе нового железного коня по средствам и потребностям.
Читать полностью »

Здравствуйте, меня зовут Александр Зеленин, я веб разработчик. Сегодня хочу рассказать, как могут работать сайты в условиях нестабильного подключения как и обещал. Проще говоря, что делать если отключили интернет, а деньги зарабатывать надо.

Рассмотрим 3 примера: интернет-магазин, кинотеатр и онлайн-плеер. Для магазина и кинотеатра так же идет разделение на 2 части — что делать на стороне пользователя и на стороне оператора/продавца.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js