Golang. Несколько сообщений в одном TCP соединении

Всем привет. Возможно ли в одном tcp соединении отправить несколько сообщений и обработать ответы по ним?

connection, _ := net.Dial("tcp",  net.JoinHostPort("host", "port"))
_, _ := connection.Write([]byte("message1" + "\r\n"))
// чтение ответа
_, _ := connection.Write([]byte("message2" + "\r\n"))
// чтение ответа

Ответы (2 шт):

Автор решения: KoVadim

Да, можно. Явных ограничений сам протокол TCP не накладывает. Главное аккуратно проверяйте коды ошибок.

→ Ссылка
Автор решения: prospero78su

Вы можете с сырым TCP-сокетом делать что угодно. Варианты доставки нескольких сообщений:

  1. последовательно, одно за другим
  2. одной посылкой -- в составе структуры (например, JSON)

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

→ Ссылка