| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Ограничения на FTP-сървър http://mcu-bg.com/mcu_site/viewtopic.php?f=14&t=6801 |
Страница 1 от 3 |
| Автор: | Desert Leo [ Нед Май 10, 2009 7:16 pm ] |
| Заглавие: | Ограничения на FTP-сървър |
Може да звучи тъпо, но ... като не знам - питам. Днес рових из Нета и не намерих отговор на казуса Въпросът е има ли ограничение за броя на едновременно отворените за ъплоуд файлове от клиентите, като всеки клиент е отворил свой (само един) файл и пълни в него данни на пакети под 1КВ на всеки 30 сек. Файловете, макар и малки остават отворени доста дълго време - например 1 час. Само от сървъра ли могат да дойдат ограниченията или и от операционната система. Трансферът е слаб и се предполага, че мрежата го гарантира. |
|
| Автор: | goose [ Нед Май 10, 2009 7:50 pm ] |
| Заглавие: | |
Каква е операционната система, какъв е фтп сървъра ... Без отговор на това само ще си гадаем :> |
|
| Автор: | tgi [ Пон Май 11, 2009 2:51 am ] |
| Заглавие: | |
Може да дойде и от двете. По-вероятно е самият сървърен софтуер да слага някакво ограничение на максималния брой едновременно пуснати user-и, но може и ОС да позволява по-малък брой едновременни tcp връзки отколкото сървър софтуера. Вероятно е и двете да са конфигурируеми, така че имаш пред себе си безкраен брой варианти. Аз например в DPS по подразбиране съм сложил максимума на 512 връзки, не помня колко бяха в windows-а но някакъв китайски софтуер за гледане на онлайн мачове в един момент нещо поиска на "patch"-ва системата, та да ги направи повече (на 256 ли, на 512 ли беше), та максимумът и там май е в тоя порядък (512 за малка машина са си лудост, разбира се, не съм ги ползвал наведнъж, но и не струват много като ресурс та съм ги оставил така до нужда от намеса |
|
| Автор: | Desert Leo [ Пон Май 11, 2009 9:09 am ] | |||||||||
| Заглавие: | ||||||||||
Машината, операционната система и сървъра ще са такива каквито трябва за да се осигурят изискванията. Работата е там, че до момента не мога да намеря написано явно принципно ограничение, за да избера ОС и сървър. |
||||||||||
| Автор: | ДедоБоре [ Пон Май 11, 2009 10:34 am ] |
| Заглавие: | |
виж ся... няма проблем да си направиш каквато искаш машина. всичко може да се конфигурира и от техническа гледна точка в днешно време практически няма лимити. примерно ОС да е с 1М сокета, FTP-то да позволява 50К юзера с по 50К файла и 200 години таймаут. но нито е практично, нито е разумно... по-добре си модифицирай клиента. да държиш връзка по 1 час е най-малкото трудно. особено към FTP. и собено в твоя случай |
|
| Автор: | Desert Leo [ Пон Май 11, 2009 10:41 am ] |
| Заглавие: | |
Мерси Дедо! Това ми трябваше. Ще оптимизирам нещата към по-често затваряне на файла, но важното е, че, ако в даден момент се натрупат много пишещи маймунки нещата може и да се забавят, но да не се сриват напълно. |
|
| Автор: | goose [ Пон Май 11, 2009 12:05 pm ] |
| Заглавие: | |
Я по добре кажи какво искаш да направиш, а не как мислиш да го правиш ... Да държиш отворен файл през ФТП няма да стане, дата линка по спомени се дропи при 2 мин. инактив ... Другото което е - трябва постоянно да рефрешваш, за да видиш има ли промени по файловете, да не говорим, че доста сървъри и кешират информацията за сесии и при променен файл не ти дават инфо за това, само за нови или изтрити такива от сървъра ... |
|
| Автор: | miro_atc [ Пон Май 11, 2009 2:25 pm ] |
| Заглавие: | |
Това за 1М отворени работи мноого ме съмнява.... Практически аз мисля че бозата ще издъхне на около 1000 отворени сокета, лайнукс може и до към 10000 да ги докара. Поне такива ми са спомените, а ме мързи сега да ровя за подробности. Но по спомени нито с едното нито с другото можеше да се достигне теоретичния максимум (броя сокети, демек 64535). Сещам се за 2 потенциална проблема - първо ако сам си правиш сървърчето трябва да имаш идея как да разчистваш мъртвите сокети, а пък другия проблем ако ползваш стандартен сървър трябва да знаеш че повечето имат ограничения за брой на конкурентни връзки. Като ограничението обикновено е малко - от порядъка на 10 - 15. Демек стандартните сървъри ще отказват ако връзките идват от едно и също място. Това по-скоро е проблем само ако случайно ползваш gsm клиенти (те са без реални IP-та и всичките заявки едват само от няколко IP-та на оператора). Разбира се ти може да натроиш ограничението за конкурентни сесии... Самите файлове дали ще ги държиш отворени няма значение - там нямаш ограничения, важно е сесиите... |
|
| Автор: | Desert Leo [ Пон Май 11, 2009 8:09 pm ] |
| Заглавие: | |
Благодаря, колеги! Тествах два дена и видях, че това или няма да стане или, ако все пак стане ще е пълно с подводни камъни. Все добрата новина е, че FTP-клиента в Телитския GSM-модул работи добре и ще го използвам, но не и в такъв режим. |
|
| Автор: | miro_atc [ Вто Май 12, 2009 12:51 pm ] |
| Заглавие: | |
Ще имаш по-голям контрол върху нещата ако си напишеш сам сървърче. Тогава не виждам голям смисъл от ftp-клиента. Даже ще ти е по-просто да бачкаш на ниво сокети. Правиш си някакъв формат на пакет - от кой модул какво и колко пращаш и на сървъра анализираш. Така ще ловиш и по-лесно мъртвите сесии - като видиш че по нов соквт идват данни от същия терминал, затваряш старите. Или пък ако примерно два часа по даден сокет няма нищо - килваш го... С фтп сървър ще ти е по-трудно си мисля, там по принцип също има някакъв garbadge collection ама не знам дали ще пасне на твоето приложение... |
|
| Автор: | Desert Leo [ Вто Май 12, 2009 3:12 pm ] |
| Заглавие: | |
Наистина натам вървят нещата. TCP-сървър се очертава. А FTP-то ще го оставя за някои сервизни цели. |
|
| Автор: | bateAz [ Вто Май 12, 2009 4:28 pm ] | |||||||||
| Заглавие: | ||||||||||
Изчакай, работата се пече ... |
||||||||||
| Автор: | Desert Leo [ Вто Май 12, 2009 4:55 pm ] |
| Заглавие: | |
Знаеш кой бърза ... А и логиката е малко по-различна сега. |
|
| Автор: | tgi [ Сря Май 13, 2009 9:06 pm ] |
| Заглавие: | |
Да пишеш собствен сървър на някакъв собствен протокол за такава задача вероятно е губене на време. Най-очевидното решение на проблема ти е да ползваш готов ftp server, но да не държиш връзките перманентно отворени и потребителите вътре, а при всеки опит за писане или четене от потребител да отваряш връзка, влез, пиши/чети и излез и готово. С някой безплатен ftp сървър ще стане лесно (напр. filezilla, работи добре за мене). Има и огромен брой други варианти, напр. put през http, а бе сигурно са повече, отколкото мога да изброя, за мене очевидната е ftp, че нея я ползвам редовно. |
|
| Автор: | plameniv [ Чет Май 14, 2009 1:29 am ] | |||||||||
| Заглавие: | Мда | |||||||||
Аз си мисля че най добрия вариант е някаква база данни например Mysql и ръгаш всичко там, сигурно и надеждно и лесно за четене после |
||||||||||
| Страница 1 от 3 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|