|
|
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555, Благодарю за внимание, сегодня поправил скрипт, теперь отправляет за раз переменные и файл. Вот этот кусок Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. Перемещаем в любое место после записи заголовка файла. И вуаля! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2015, 15:14:09 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555, дописал сегодня клиентскую часть. Подготовил файлы, для тестирования загрузки на сервер. 80 Мб, 150 Мб, 250 Мб, 500 Мб, 1000 Мб. До этого, работоспособность проверял на файлах до 1 Мб, все работало. Но после тестирования файла 80 Мб, ???, почему передача работает ТАК медленно. Интернет 25 Мб, сет. карта 100 Мб. Максимальная загрузка канала 0,1 - 0,2 % . Кто бы мог подумать, что передача файлов через MSXML2.XMLHTTP такое медленное занятие ??? Клиент будет использоваться на широких каналах, какие способы передачи используют пропускную способность интернета на максимум? Текущая скорость однозначно не устраивает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2015, 18:52:35 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
Через PUTTY можно передавать POST ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2015, 18:59:36 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555Через PUTTY можно передавать POST ?Можно туннель организовать, а в нём передавать всё, что угодно. Вроде бы, в этом пакете есть утилита для копирования файлов на удалённый сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2015, 19:59:57 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
ТАК медленно Ну, не просто же так я сказал нарезать и отправлять в несколько потоков :) Впрочем, у принимающего сервера может быть ограничение по кол-ву потоков и памяти. Быстрее отправка только через специальные готовые утилиты или грамотная самописка на чистых сокетах. Ну и смотря, что принимает и как оно настроено. Поскольку я окончательно запутался в том, какие технологии доступны, то даже и не знаю что посоветовать. То у Вас ничего не доступно кроме базы, то вдруг свой сервер в виртуалке. То вдруг какие-то FTP пытались использовать, и чем-то они тоже не устроили. Ничего не понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 00:25:49 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
ART-CODE, Да, все попробовал))) Сейчас тестирую FTP + cURL - получше. Но выше 1 Мбита на аплоад не поднимается. Возможно на скорость каким то образом влияет, Windows XP. на 7-ке быстрее. По технологиям - есть некоторые тонкости. FTP быстрее, но его нужно как то связать с логинами хранящимися в SQL. Либо сделать усеченный вариант идеи - все клиенты будут ходить на FTP под одним логином паролем - что не правильно. Не должно быть доступа у разных клиентов к файлам друг друга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 00:54:14 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555, Апач настроил, все параметры влияющие на макисмальный размер загружаемого файла - в том числе время выполнения скрипта. Готов принять 1,1 Гб. Как я понял чтобы увеличить скорость для POST - люди отправляют один файл в несколько потоков. Chunk - недочитал сегодня. Завтра посмотрю в эту сторону. На крайний случай остается FTP с авторизацией всех по одной учетке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 00:59:30 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555, Подскажите, возможна ли докачка по FTP? Через cURL ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 11:34:23 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555возможна ли докачка по FTP? Через cURL ?Возможна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 11:43:26 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
Посмотрите в сторону Bittorent Sync — быстрая синхронизация больших файлов на максимально скорости канала в фоновом режиме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 12:21:47 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
Так, 1 - FTP сервер позволяет создавать сколько угодно учетных записей и у каждой учетки может быть свой каталог, более того, я имел такой сервер, который по событиям мог запускать внешние программы, передавая им параметры - свойства событий: такой-то пользователь с такого-то IP загрузил такой-то файл. Таким образом, можно настроить автоматизацию чего угодно. Такие опыты я ставил с G6FTP Server, думаю, что и в других должно быть что-то похожее. Проблема с FTP в другом - безопасность, т.е. на самом деле нужен SFTP, и есть большие сложности с проксированием такого соединения. Без вмешательства админа прокси, обычный пользователь корпоративной сети не получит доступа к FTP серверу в интернет. Но, на сколько я знаю, можно же в линукс создать пользователя, выдать ему права только на определенную папку, и далее он подключается по SSH и попадает сразу в свою папку. Так и передавать файлы при помощи pscp.exe 2 - Все-таки нужно определиться, Вы хотите занять весь канал или многопользовательскую работу ? Если действительно удастся передавать данные во всю ширину канала, то никто не пробьется к серверу в это время. В свое время я писал приемо-передатчик файлов на C++ и сокетах, тогда уперся в скорость записи жесткого диска на принимающей стороне. Передавал бекапы между сервером и хранилищем, там я действительно имел право занять весь канал, т.к. это был прямой кабель между серверами, и никому такое агрессивное поведение не помешает. 3 - Реализация сетевых функций на разных версиях ОС действительно отличается. И в XP она самая примитивная. Это да. Что может влиять на производительность. Обратите внимание в каких версиях ОС есть функции TransmitFile function и TransmitPackets . Если Вы создаете сервис для пользователей типа"Дроп бокс", "яндекс диск", то не надо себя ограничивать VBS и MySQL :) Можно, конечно, совсем залезть в дебри, научиться управлять алгоритмом Нейгла и т.п. Но, пока не ясно что же делаете и зачем и что можно задействовать, а чего нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2015, 12:41:16 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
Благодарю за интерес к теме. Немного о состоянии задачи. Задача решена, маленькие файлы ргузим по HTTP большие по FTP. Как и обсуждалось - поставил XAMPP для Windows настроил по рекомендациям безопасность. На PHP + MySQL написал серверную часть, отладил. Все заработало и хорошо! Но. Так как для удаленного управления на машине открыт 3389 порт. В интернет. Стали брутить мой RDP, пароли пока держатся. Компьютер подтормаживает при большом количестве атакующих. Но это ладно. Здесь кто то говорил про защиту от SQL Injection. Неожиданно быстро нашелся человек, который просканировал серверную часть моей программы, видимо нашел уязвимость и потер все мои таблицы. Причем происходило это у меня на глазах. Утром зашел проверить как дела. Пароли на SQL поменены, рут и рабочий, соответственно PHP не может подключиться и добавить данные в базу. Стал все возвращать на свои места. Человек почувствовал, что обнаружен, потер все таблицы и смылся. Ничего ценного не потеряно, так как нормальные люди делают бэкап. Но если таким образом вы собрались хранить данные о банковских счетах, кредитках или домашнее порно - Это вам урок. Сразу отвечу на обычные в такой ситуации вопросы: RDP - изменить порт на нестандартный. - Нет возможности, только 3389. Прогнать сайт сканером уязвимостей типа Acunetix перед запуском в работу. На это не хватило времени. Работы много, перво очередная задача была - запустить, чтобы работало! Она выполнена. А теперь вопрос, как защитиься от QSL injection? P.S. SQL закрыт для внешнего интернета, так что дыра скорее всего в писаных мной PHP скриптах. ART CODE, могу занять 50% канала. Писать на СИ и сокетах для меня долгое дело. Текущий вариант - самое то что надо. Есть конечно в чем совершенствоваться, времени на это пока нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 17:39:38 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
авторПричем происходило это у меня на глазах. сволочи! авторА теперь вопрос, как защитиься от QSL injection? P.S. SQL закрыт для внешнего интернета, так что дыра скорее всего в писаных мной PHP скриптах. Очевидно, не писать код допускающий SQL injection. А с чего вы взяли что у вас она уже есть ? автор Писать на СИ и сокетах для меня долгое дело Там очно так же можно случайно написать sql-injection. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 17:45:07 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555только 3389 Винда? Вы же внешний порт поменять не можете - роутер не позворляет ? А внутренний - можете ? Если да, то можно попробовать поставить туннель между внешним портом 3389 и внутренним адресом 127.0.0.1:8889 на который настроить RDP. А на уровне туннеля иметь ограничения по IP, времени работы и т.п. Если нельзя сдвинуть порт то можно попробовать управлять службой RDP из планировщика задач: сделать админские окна - каждый час на 5 минут включается служба. После захода отключаем задание, чтобы не "выбило", а когда поработали - снова включаем и выходим. Вы же файлы загружаете ? Вот, скорее всего Вам и загрузили PHP или какой-то другой скрипт/программу и выполнили. Разберитесь с каталогами и правами загрузки/выполнения. Переустановите ОС. Теперь наверняка уже есть тайный вход. Включите файловый монитор, логируйте события файловой системы в надежное, не затираемое место (например логи можно сразу отсылать построчно на другой компьютер.) Включите сетевой монитор, логируйте сетевые подключения. Включите монитор процессов, логируйте. На все это есть у меня свои секретные самописки, поэтому ничего предложить не могу, поищите что-то в интернет. Хороши программы TCPView и FileMon и ProcMon найдите исходники, может переделаете под себя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 19:00:44 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
и еще вариант: управлять запуском/остановкой службы RDP по почте/смс/придумать что-то еще свое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 19:09:11 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
боишься SQL injection? используй хранимые процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 22:48:54 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
вадябоишься SQL injection? используй хранимые процедуры.Ерунда полнейшая. SQL injection и хранимые процедуры - вещи перпендикулярные. Налететь можно равно как ними, так и без них. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2015, 23:23:54 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
miksoft, здесь уже обсуждалось такая прблема и выясгили, что налететь на это можно только в одном случае - динамической генерации зпроса в хранимке. а это намного реже встречающийсч случай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2015, 03:21:24 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
вадяmiksoft, здесь уже обсуждалось такая прблема и выясгили, что налететь на это можно только в одном случае - динамической генерации зпроса в хранимке. а это намного реже встречающийсч случай.Не заниматься бездумной динамической генерацией запроса можно и без хранимки с равным успехом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2015, 09:23:45 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
miksoft, Так вот, решил не заниматься бездумной генерацией хранимок, и на время отключил mysql на сервере. Сейчас работает только Apache+PHP. Из рабочей директории сервера удалил все скрипты и папки XAMPP, оставил только свои. Просканировал сайт Acunetix. критических ошибок нет. Что хочется поправить. У пользователя через Веб не должно быть прав доступа в папку Reports. Как настроить апач таким образом? Скрипт *.php может читать/писать. в папку Reports, а через веб интерфейс она не доступна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2015, 10:50:10 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555У пользователя через Веб не должно быть прав доступа в папку Reports. Как настроить апач таким образом? Скрипт *.php может читать/писать. в папку Reports, а через веб интерфейс она не доступна.Можно в .htaccess этой директории прописать Deny from all или просто вынести директорию за пределы DocumentRoot вебсервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2015, 11:50:22 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
vkle, Благодарю, все заработало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2015, 16:50:58 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555, Уважаемые форумчане, благодарю за внимание к теме. Появилась задача, для решения которой хочу привлечь специалиста, сколько может стоить такая работа, ссылка на тему - http://www.sql.ru/forum/1138226/napisat-1-skript-php-zaprosy-k-mysql ТЗ лежит здесь - https://www.sendspace.com/file/yhyrf3 Без изысков в дизайне страницы, главное правильно работающий функционал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2015, 15:52:03 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
manager5555Здравствуйте гуру SQL. Новичку требуется ваш совет. Задача - в автоматическом режиме регулярно передавать файл 3 Gb в PHP+MySQL ОС с которого передается файл - Windows XP файл должен передаваться через VBS скрипт на клиенте и получаться PHP на сервере. Как я себе это представляю - VBS используя ADO и Msxml2.XMLHTTP читает файл и отправляет PHP скрипту, который в свою очередь перенаправляет поток данных в БД MySQL в столбец с типом LONGBLOB. Либо VBS отправляет файл методом POST/http ... Файл большой, жизнеспособна ли такая схема - непонятно. Как в такой ситуации работает PHP, хватит ли памяти принять такой файл. Не будет ли сбоев из за ошибок передачи данных? Подскажите направление, если схема жизнеспособна - буду работать в этом направлении дальше. цитирую стартовый пост, ибо с моей точки зрения уже сдесь допущенна ошибка. VBS - он конечно обладает средствами для передачи данных на другие машины, но будем обьективными... это всё-таки не те задачи, которые надо решать с помощью этого языка. я бы предложил, через вбс лишь стартовать нечто, с паратетром имя файла, что уже осуществит реальную передачу. - на худой конец(а довольно таки трезвое решение) есть файл, на вбс два действия - 1)через утилиту фтп в виндоус закидываем файл на фтп сервер... 2)дёргаем на том же сервере скрипт для обработки этого файла. всётаки еффективная работа с сетью обеспечиваеться сетевыми утилитами, а не своим кодом на языках высокого уровня. ЗЫ у меня передача от веб сервера веб серверу файла постом. говорите CURL - так он в 2-3 случаях на 1000 даёт збой табильно не преодолимый - то есть никакие повторы уже не сработаю, только новый запуск пхп скрипта, а вот воспользовать системной утилитой , тотже курл - это стопроцентно... покрайней мере за период работы системы, таких передач уже было около 100 000 000, стабильно периодически в лог попадает запись о том что курл дал сбой, задействован запасной метод передачи, и запасной передал. тестово включался запасной как основной - сбоев нету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 11:50:16 |
|
||
|
Передать файл 3 Gb по цепочке VBS->PHP->MySQL
|
|||
|---|---|---|---|
|
#18+
да и 3гб, тут советуют на части бить..таки у меня файлы и по 50гб и да бьются на части, но там другие причины. а фтп- оборвёться передача, не страшно...её можно продолжить, притом не заботиться о вычислении места обрыва. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 11:52:47 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38854691&tid=1833668]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 402ms |

| 0 / 0 |
