Пожалуйста, не стесняйтесь менять название этого вопроса, как только вы прочитаете этот вопрос, вы поймете, что я имею в виду.
Существует множество примеров того, как создать приложение службы на Linux, например этот .
Я написал программу на c# с использованием . Net Core и превратил ее в Linux службу, которая работает в фоновом режиме ,
В любом случае, мой вопрос - как я могу подключиться к этой фоновой программе, используя консольный подход. Взять, к примеру, MongoDB . Если я установлю mongodb на свой компьютер sudo apt-get install mongodb
, то в фоновом режиме будет запущена служба:
root@ip-172-31-75-238:~# service mongodb status
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-02-01 16:56:32 UTC; 3 days ago
Docs: man:mongod(1)
Main PID: 488 (mongod)
CGroup: /system.slice/mongodb.service
└─488 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf --auth
Если я хочу отправить команды на mongodb.service
, мне просто нужно набрать команду mongo
на терминале, и тогда я буду в консольной среде.
root@ip-172-31-75-238:~# mongo
MongoDB shell version: 3.2.11
connecting to: test
... mongo es ready expecting a command to execute.
Итак, мой вопрос: как я могу создать такое же поведение? Я хочу создать службу, работающую в фоновом режиме, которая также может работать как консольное приложение.
Подход, который я собираюсь предпринять:
Я планирую создать отдельное консольное приложение, которое отправит информацию службе, используя Межпроцессное взаимодействие . Я просто хочу убедиться, что я не буду долго подходить.