powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / работа с файлом
18 сообщений из 18, страница 1 из 1
работа с файлом
    #38180816
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создаем лог-файл на сервере, а с клиентских приложений будет вестись в него запись. Что будет, если одновременно несколько пользователей будут пытаться записать в файл?
И как правильно организовать работу с одним файлом для нескольких клиентов?
...
Рейтинг: 0 / 0
работа с файлом
    #38181138
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditban,
раскрой пожалуйста в чём связь твоего вопроса именно с С++.
...
Рейтинг: 0 / 0
работа с файлом
    #38182457
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я работаю с файлом на Си:
fopen_s(&file, "\\\\server\\folder\\File.log", "a+");
fputs("line", file);
fclose(file);
...
Рейтинг: 0 / 0
работа с файлом
    #38183239
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
ditban, в С нет никаких стандартных средств для разграничения доступа к файлам. Они могут быть, а могут и не быть, в зависимости от операционной системы и набора библиотек. Так что сообщите ОС и компилятор, которыми пользуетесь.
...
Рейтинг: 0 / 0
работа с файлом
    #38183434
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditban, обычно так не делают. Лог файл на сетевом хранилище - это не есть гуд.
Мы поимеем полный спектр ситуаций. Лаги. Недоступность. Как будет вести
себя приложение когда лог недоступен ? Я не знаю. Скипать события?
Блокироваться?
...
Рейтинг: 0 / 0
работа с файлом
    #38183625
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonditban, обычно так не делают. Лог файл на сетевом хранилище - это не есть гуд.
Мы поимеем полный спектр ситуаций. Лаги. Недоступность. Как будет вести
себя приложение когда лог недоступен ? Я не знаю. Скипать события?
Блокироваться?

Оно будет ВИСНУТЬ.

Да, согласен, очень дурацкая идея.

А на счёт разделения файла на запись -- в винде есть разделение файлов, оно должно работать и с сетевыми файлами,
но это только можно будет открыть файл эксклюзивно на запись одной программой, несколькими программами писать в файл
согласованно вообще не удастся, это надо делать самому.

При этом пользоваться надо функцией open для открытия файла, а не fopen.
http://msdn.microsoft.com/en-us/library/w7sa2b22%28v=vs.71%29.aspx
...
Рейтинг: 0 / 0
работа с файлом
    #38183737
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я имел в виду вопрос. Как ДОЛЖНО вести себя приложение которое желает
срочно залоггировать событие на сетевой лог файл и файл при этом заблочен?
...
Рейтинг: 0 / 0
работа с файлом
    #38183986
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Да непонятно. Залогировать невозможность логирования в файл :-)

На самом деле автору топика видимо нужны функции типа
LockFile
UnlockFile
LockFileEx
...
Рейтинг: 0 / 0
работа с файлом
    #38184129
m_Sla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не проще для этих целей на сервер базу данных поставить?
Проблема параллельной записи отпадает, да и всевозможные отчеты легче делать.
...
Рейтинг: 0 / 0
работа с файлом
    #38184194
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditbanЯ работаю с файлом на Си:
fopen_s(&file, "\\\\server\\folder\\File.log", "a+");
fputs("line", file);
fclose(file);... и просаживаю производительность обоих систем ниже плинтуса.
...
Рейтинг: 0 / 0
работа с файлом
    #38184672
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ему надо логгировать все события локально. А уже сливать их на сервер отдельно, асинхронно
и вообще отдельной задачей.
...
Рейтинг: 0 / 0
работа с файлом
    #38185896
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЕму надо логгировать все события локально.Локальность не освобождает от необходимости думать: зачем открывать/закрывать лог-файл при каждой записи?
...
Рейтинг: 0 / 0
работа с файлом
    #38186084
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovmaytonЕму надо логгировать все события локально.Локальность не освобождает от необходимости думать: зачем открывать/закрывать лог-файл при каждой записи?
Вышеуказанный в исходнике Unix-style работы с логгированием когда файл
открывается и закрывается с +APPEND каждый раз на событие - это нормально.
Но для Windows особенно в стеке сетевых протоколов (CIFS) это может
где-то вылезти огроменным боком. Вобщем надо тестить и смотреть.
Может у него там 5-6 событий за сутки.
...
Рейтинг: 0 / 0
работа с файлом
    #38207614
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как поставили задачу, так и решаем. Не убедишь же, что лог хранить в таком виде плохо. Тут, по-моему, логичнее локально хранить лог. Но тогда встает вопрос, как потом считывать и отслеживать кучу этих файлов.
А развертыванием новой базы заниматься у нас никто не будет(
...
Рейтинг: 0 / 0
работа с файлом
    #38207637
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsync
...
Рейтинг: 0 / 0
работа с файлом
    #38208056
d7i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditban,
Если нет СУБД, тогда для каждого клиента (соединения) - отдельный лог-файл на сервере.
А для чтения/анализа/слияния этих лог-файлов - отдельная специальная программа...
...
Рейтинг: 0 / 0
работа с файлом
    #38208076
Фотография vromanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Сколько записей в лог в секунду вы планируете?
2) Какая операционка на сервере и на клиенте?
Если Linux - используйте например syslog, он умеет работать удаленно
...
Рейтинг: 0 / 0
работа с файлом
    #38208080
Фотография vromanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m_SlaНе проще для этих целей на сервер базу данных поставить?

Охренеть предложение.. Вон из професии!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / работа с файлом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]