Спасибо за ответ!
Я, возможно, не очень удачно сформулировал. Комп включается и работает. Но не с первого раза и с проблемами. Вот хочу найти источник проблем, чтобы понять, есть ли перспективы починить, а не выбросить.
Вот как раз разношерстные таблицы для разных категорий товаров стали камнем преткновения: разная структура столбцов и иногда разный формат одних и тех же данных делает очень неудобной приведение выгрузки в подходящую для загрузки форму. У владельца бизнеса там целый свой мир, не только каталог товаров.
Uno, о том и речь.
Пока я понял, что должно быть так: на сервере MySQL, для удобной работы с ней у менеджера/оунера админка. Дальше. Как обновленные данные из этой базы попадают в базы интернет-магазинов?
Uno, всё верно, конечно. Ну, у меня есть шанс прокачать скил, решая задачу, вот и стараюсь им воспользоваться. Самописную админку, конечно, не осилю. Но неужели у всех всегда самописная админка? Можно же, например, Libreoffice Base? Или плохо?
Сложность в том, что задача новая, подобного раньше не делал. Можно чуть больше конкретики? MySQL ставлю на сервер. Подключаюсь по через терминал или с помощью GUI-клиента? Создаю базу, в ней таблицу. Массово загоняю товары, загружая подготовленный файл? Данные между моей базой и интернет-магазинами гоняют скрипты? Бекапят базу другие скрипты по расписанию?
Владелец бизнеса (или менеджер), конечно, не будет ходить в базу через терминал. Значит, им нужны какие-то удобные клиенты?
Значит, каждый уровень должен знать о двух смежных - верхнем и нижнем. Он узнает о них из каких-то конфигов?
Другими словами - эту цепочку определяет разработчик? Но в какой степени? И тогда ОС (как минимум) должна включать в себя реализации хотя бы наиболее популярных протоколов и иметь возможность установки других?
Любопытно, действительно.
Получается такой как бы каскад: событие в одной точке меняет состояние в другой. Это событие, в свою очередь, меняет состояние в третьей, и так до провода/эфира, а потом назад.
Но структурно: приложение взаимодействует с некоторыми системными библиотеками, те - с драйвером сетевой карты. Так?
Вот, вот оно.
Значит, приложение, желающее использовать сеть, делает примерно так:
-упаковывает данные в свой прикладной протокол (HTTP, SMTP, и т.д.);
-делает системный вызов к некоторой службе ОС для открытия TCP соединения;
-эта служба, в свою очередь, инициирует формирование IP-пакета;
-карта отправляет пакет в физическую среду.
Верно?
Какжется, я неудачно задал вопрос ))
Попробую уточнить.
Я знаю, что кадр ethernet это матрешка из протоколов. Я не понимаю, как эту матрешку получают.
Вот браузер. Я правильно понимаю: он "знает", что для передати своих данных по HTTP ему нужно открыть TCP соединение? Если да - то он это делает сам или с помощью отдельной службы ОС?
Или, другими словами: код, реализующий используемые для связи протоколы - это часть каждой отдельной программы, использующей сеть, или это общие для всех службы, работающие в ОС, к которым обращается программа, желающая работать с сетью?
Вот, вот, давайте конкретизируем - кто и что делает?
Я же не бросаю письмо в окно - несу его на почту. Оттуда его тоже грузят не на первый попавшийся велосипед.
В реальной жизни мы понимаем, кто перетаскивает письмо между каждым из уровней и почему это делает. А в сетях?
По-человечески это понятно, конечно. Но ведь в компьютерных системах нет такого понятия. Понятна, например, событийная модель: я нажал кнопку в форме - движок браузера сгенерировал событие - его получили подписчки - подписчики отреагировали. Все участники видны, их роль ясна. А в стеке протоколов как?