|
|
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
как поймать появление файла? ось Debian. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 13:58:20 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадякак поймать появление файла? ось Debian. Java 7 http://docs.oracle.com/javase/tutorial/essential/io/notification.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 14:01:48 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, ты с этим работал? там ловятся 2 события создание и модификация, если файл длинный - несколько событий модификации. как определить кокое последнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 15:17:58 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадятам ловятся 2 события создание и модификация, если файл длинный - несколько событий модификации. как определить кокое последнее? Никак. Нужно логику менять. Можно таймаут ввести. Но это будет частичным решением. Нельзя достоверно сказать по какой причине не приехал следующий кусок большого файла. То ли запись закончена, то ли запись задержалась по какой-то причине. Объясни супер-задачу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 15:24:58 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
суперзадача простая, в папку сыпятся файлы, интервал случайный, размер случайный. по окончанию записи файла его надо обработать. городить таймер в "крутом" модуле это как-то не спортивно. можно проверять что-то, обозначающее окончание записи, но я не нашел что это может быть... новедь должно. длина или ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 15:53:27 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадясуперзадача простая, в папку сыпятся файлы, интервал случайный, размер случайный. по окончанию записи файла его надо обработать. городить таймер в "крутом" модуле это как-то не спортивно. можно проверять что-то, обозначающее окончание записи, но я не нашел что это может быть... новедь должно. длина или ? Можно попробовать проверять блокировку на запись: File.canWrite(); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 15:56:34 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
если я правильно сделал Код: java 1. 2. 3. всегда выводит true ENTRY_CREATE: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:21:37 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадя, ты всё равно на ходу реагировать не успеешь. Складывай изменения в лог а потом в конце дня проанализировал и сделал там бэкап или еще чего хотел. Вообще, если хранилище небольшое то и rsync или svn клиент справляюстя с этим не хуже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:23:34 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадяxxx.mkv Порнуху торентом качаем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:24:01 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
maytonвадя, ты всё равно на ходу реагировать не успеешь. Складывай изменения в лог а потом в конце дня проанализировал и сделал там бэкап или еще чего хотел. Вообще, если хранилище небольшое то и rsync или svn клиент справляюстя с этим не хуже. мне в базу нада вносить, желательно по мере поступления, чтоб клиент видел ну не верю, что б такое сделали и нельзя узнать окончания!!! если б порнуху, ххх это что б знать что можно смело удалять.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:36:53 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадя, от тебя нужна статистика. Каков размер (прибл) хранилища которое ты мониторишь. Как часто создаются файлы? (Сколько штук в минуту или секунду) Каков средний размер файла? Максимальный размер? Что это за формат? Xml, текстовый или произвольный бинарный? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:41:17 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
текстовые размер, время, частота - неизвестны, т.е. любые. размер примерно <10м размер папки - примонтированны раздел - папка из компа с окнами.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:53:07 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадячто б такое сделали и нельзя узнать окончания! Абстрагируйтесь от уровня Java и подумайте о том как реализована ОС. Вот есть какой-то процесс. Он пишет в файл. Причем частями. Как операционке узнать что "процесс закончил писать файл". Да вообще никак. Либо с контрольной суммой сравнивать. Которую непонятно как передать. Либо лок на запись смотреть, с которым тоже не всё так просто. Процесс может его забрать и не отдавать больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 16:53:15 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадяесли я правильно сделал Код: java 1. 2. 3. всегда выводит true ENTRY_CREATE: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true ENTRY_MODIFY: D:\xxx\xxx.mkv true а если попробовать файл переименовать? если позволило значит файл отпущен процессом который его создал. неа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 18:18:53 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
goalinternetа если попробовать файл переименовать? если позволило значит файл отпущен процессом который его создал. неа?Если вы никогда не видели юниксов, то это не должно мешать хотя бы читать о них. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 19:26:54 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
Blazkowiczвадячто б такое сделали и нельзя узнать окончания! Абстрагируйтесь от уровня Java и подумайте о том как реализована ОС. Вот есть какой-то процесс. Он пишет в файл. Причем частями. Как операционке узнать что "процесс закончил писать файл". Да вообще никак. Либо с контрольной суммой сравнивать. Которую непонятно как передать. Либо лок на запись смотреть, с которым тоже не всё так просто. Процесс может его забрать и не отдавать больше. Если это XML-документ то можно как-то валидировать. Если это текст и имеет какой-то footer то можно проверять эту строчку в конце. Вообще архитектура плохая. Имемм Виндовс-файловый сервер в котором неизвестное явление или процесс клепает файлы. Это всё отдается Дебиану по неизвестному протоколу (CIFS)? и требуется чтоб дебиан писал в бд с задержкой(!) хрен его знает с какой но быстро изменения в текстовых плоских файлах. Верно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 19:55:22 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
ваши слова - да богу в уши...... если б это от меня зависелоо......... просто чел хочет по-легкому отойти, остальные хоть голыми на мороз... по умному так сразу в базу можно писать.... вот и приходися извращЁвываться. авторЕсли это текст и имеет какой-то footer то можно проверять эту строчку в конце. мысль не оптимальная, но в прицЫпе ... заставить писать что-то в конце еще можно. вопрос как это поймать быстро и лаконично? есть красивые решения? хоть в чем-то красоту поиметь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 20:37:50 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
Я вообще не уверн что в такой связке CIFS будет вовремя отдавать евенты по своему протоколу. Я уверен что этот пример WatchDir.java будет генерировать разное число событий будучи запущенным 1) На Windows-станции (локальное хранилище) 2) На Debian-станции (локальное хранилище) 3) На Debian-станции (через CIFS) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 20:43:05 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
делал под виндой как приложение , запускал в netbeans, работало сча перене на сервер сделал класс Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. сделал для запуска Код: java 1. 2. 3. 4. 5. 6. 7. 8. ну и нужном месте запускаю вроде запускается конструктор отрабатывает. и все на этом часть сервлетов работает, а част не хочет и вывод на консоль блокирован я где-то сглупил, ткните ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 22:38:29 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
точнее родную папку мониторит, примонтированную из окон не хочет. и почему-то погас листенер (в нем потоки используются) прослушивающий порт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 23:29:03 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorovgoalinternetа если попробовать файл переименовать? если позволило значит файл отпущен процессом который его создал. неа?Если вы никогда не видели юниксов, то это не должно мешать хотя бы читать о них. Не к вам было обращение. Что мне читать я сам решу. Свои знания юниксов покажите девочкам в ПТУ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2012, 16:34:26 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадяточнее родную папку мониторит, примонтированную из окон не хочет. Не удивительно. Такие толстые нюансы стоило сразу указать. вадяи почему-то погас листенер (в нем потоки используются) прослушивающий порт. О чем речь? А почему должен был гореть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2012, 16:39:21 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
вадямне в базу нада вносить, желательно по мере поступления, чтоб клиент видел ну не верю, что б такое сделали и нельзя узнать окончания!!! - как только файл становится доступным на запись (тонкость в том что надо проверять не методом File.canWrite(), а пытаясь открыть поток на дозапись) он закончил копироваться. Проверять состояние доступности на дозапись в цикле с интервалом. P.S. собственно я так делал, работает в Linux/Windows ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2012, 09:15:29 |
|
||
|
Обнаружение файлов
|
|||
|---|---|---|---|
|
#18+
насколько я понимаю, операция закрытия файла должна ловиться через NIO селектором как SelectionKey.OP_READ, при этом вычитается -1. я так думаю потому, что тут ru.wikipedia.org/wiki/Epoll написано, что еполлу не важно с чем он рабтает - с сокетом или с файлом. То есть получается, что можно ловить появившиеся файлы, селектором вешать на них событие SelectionKey.OP_READ, по мере появлния данных вычитывать их, и когда прочтем -1, то это есть конец файла. по-хорошему вычитанные данные можно сразу обрабатывать, но на скору руку можно тупо читать и ждать -1, а когда прийдет - генерить евент и обрабатывать весь файл. Загуглите примеры исползования классов из java.nio: Selector, SelectionKey, SocketChannel, ServerChannel, FileChannel. Я не пробовал, но по идее логика работы SocketChannel и FileChannel должна совпадать, соответственно серверные примеры с минимальными переделками можно переделать на одновременное чтение кучи файлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2012, 01:59:44 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38085821&tid=2130315]: |
0ms |
get settings: |
6ms |
get forum list: |
24ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
47ms |
get topic data: |
17ms |
get forum data: |
4ms |
get page messages: |
92ms |
get tp. blocked users: |
3ms |
| others: | 306ms |
| total: | 511ms |

| 0 / 0 |
