Skip to content

Instantly share code, notes, and snippets.

@korjavin
Last active July 16, 2018 08:33
Show Gist options
  • Select an option

  • Save korjavin/91ee78682c0b80535552b41cad103dcd to your computer and use it in GitHub Desktop.

Select an option

Save korjavin/91ee78682c0b80535552b41cad103dcd to your computer and use it in GitHub Desktop.

Задача

Написать сервис tcp-proxy, которая принимает соединения от клиентов (tcp-client) и проксирует их к внешнему сервису (tcp server).

Протокол обмена

  • Клиент отправляет сообщение: plain-text строка ограниченная \n
  • Сервер возвращает число символов в строке и \n.

Функции прокси

  • При отключении клиента отключается от сервера
  • При отключении сервера прозрачно для клиента переподключается к серверу
  • НЕОБЯЗАТЕЛЬНО: Рвет неактивные соединения с клиентом простаивающие более минуты
  • НЕОБЯЗАТЕЛЬНО: Прогноз сколько клиентов может обслужить такая proxy
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment