Взаимодействие через сокеты

Не используя клиентские библиотеки, а работая напрямую с сокетными соединениями, связаться с сервером хранения/обработки данных и выполнить определенную простую последовательность команд (в зависимости от варианта). Сами команды и их результат отображать на экране.

Базовые варианты:

  1. сервер Tokyo Tyrant
  2. сервер Memcached
  3. сервер Redis
Последовательность команд:
  1. прочитать значение по ключу "key" (должно отсутствовать)
  2. установить значение "тест" по ключу "key"
  3. прочитать значение по ключу "key"
  4. удалить значение по ключу "key"
  5. установить значение "test" по ключу "ключ 1"
  6. прочитать значение по ключу "ключ 1"

Продвинутые варианты:

  1. сервер Apache ActiveMQ
  2. сервер RabbitMQ
  3. сервер PostgreSQL
  4. сервер MySQL
  5. сервер MongoDB
  6. сервер Riak (через PBC API)

Последовательность команд:

  • Для вариантов 1,2:
    1. из 1го процесса подписаться на канал "канал 1"
    2. из 2го процесса отправить сообщение "test" в канал "канал 1" (в 1ом процессе оно должно появиться)
    3. из 1го процесса отписаться от канала "канал 1"
    4. из 2го процесса отправить сообщение "тест" в канал "канал 1" (в 1ом процессе оно не должно появляться)
  • Для вариантов 3,4:
    1. select * from test; (должно выдать ошибку, что таблица не существует)
    2. create table test (key varchar(10), value varchar (20));
    3. select * from test;
    4. insert into test (key,value) VALUES,(1,2);
    5. select vaue from test;
  • Для вариантов 5,6:
    1. прочитать значение по ключу "key" (должно отсутствовать)
    2. установить значение {"value": "тест"} по ключу "key"
    3. прочитать значение по ключу "key"
    4. удалить значение по ключу "key"
    5. установить значение {"value": "тест"} по ключу "ключ 1"
    6. прочитать значение по ключу "ключ 1"

Also available in: HTML TXT