Сергей Соловьев, у Вас плохо и с математикой, и с протоколами!
У Вас же матрешка из протоколов, каждый из которых проверяет внутреннее содержимое. Итлго, в эзернете контрольные суммы пересчитываются несколько раз для каждого содержимого. Как минимум дважды - для фрейма и для tcp.
Сергей Соловьев, Вспомните математику, ну или теорвер - в случае с ether + IP + tcp - вероятности перемножаются! Итого: вероятность ошибки в неправильно переданном пакете будет примерно 10 в минус -9 степени, если не меньше. И это при условии совпадения чексумм, А по мне, так это вероятность - близкая к нулю на произвольном пакете. Приблизительно, при совпадении абсолютно всех условий - один пакет в сто тысяч лет!
Вы, увы, плохо знаете и математику, и сетевые протоколы.
Что же касается UDP, то все тоже самое, только неправильный пакет никогда не будет перепослан получателю.
Ну а если хотите сами реализовывать - то читаем; алгоритмы хеширования и контроля четности. Коды Рида-Саломона, для исправления потенциальной ошибки.
И до кучи - алгоритмы перемежения, чтобы минимизировать ошибку во времени.
Akina, Увы, у меня больше 30 лет разработки. Так что уж за кем и повторяют, то это и за мной в том числе.
И большинство проблем с SQL, особенно у новичков, как раз из-за автоинкремента, вот как сейчас.
Больше скажу, правильно спроектированная база в автоинкременте не нуждается.
Еще более скажу - uuid совсем не зло, особенно при миграции баз данных, и особенно при шардировании, расщеплении, слиянии, кешировании.
У меня очень просто пример - есть пару сотен (тысяч и т.д.) устройств, каждая со своей локальной базой. Если в этих базах мы будем использовать автоинкремент и попытаемся их когда нибудь слить, а это рано или поздно произойдет (и происходит регулярно у всех, но вразное время), то получим очень большую головную боль на несколько месяцев разработки.
Bermut, Поддержу автора ответа VoidVolker
Нахрена дома такая полка?
Возьмите плату SATA с портами в штук 8, и наставьте в нее дисков на Ваш бюджет. Сделайте софтовый рейд.
Ну или поиграйтесь со всякими saeweedfs. Да с чем угодно можно поиграться, имея кучу дисков, хоть с iSCSI, хоть с CEPH, хоть с multipath и всем сразу.
Брать железку с FC, чтобы на него просто посмотреть? Ну, тут даже отговаривать не буду - берите!
FC без коммутатора FC - деньги на ветер, по моему...
Тем более вся настройка этого "супержелеза" - пару раз тыкнуть кнопочки в GUI (или web-gui, или в cli).
Как говорил один персонаж из мультика - секретного ингридиента нет!
RusMits, С какой-то не той стороны Вы подходите... Создаете контейнер lxc например, прописываете к нему ключи доступа по ssh и отдаете пользователю (ну или у пользователя ключи принимаете и в контейнер кладете).
Все это можно делать и через какую нибудь web-морду.
Нахрена вообще эти пароли!
По поводу двух каналов, теально они нужны очень и очень редко, ну а в 1C15 есть референс режим, что часто спасает.
Подключились к пину, нажали кнопочку, запомнили сингальчик.
Подключились ко второму пину - сравнили сингальчики.
Ах да, например ARM® Cortex®-M0+ CPU running at up to 48 MHz
И ATmega328-AU, Микроконтроллер 8-Бит, AVR, 20МГц
А реально на той же ардуино нано генератор в 16 МГц.
Я не говорю, что вдухканальный на 200 мегагерц плох. Нет, наоборот, хорош, и чертовски. Весь вопрос - что мы творим, гирлянду для елочки или плату PCI-X с высокоскоростными интерфейсами для томографа...
FuzzBuzz, Ну, тут уж ничего не поделать - все врут, как говорил Доктор Хаус.
Причем врут именно все, и с именами и без - маркетинг-с. Тут другое дело, у кого как линейка настроена и геальны ли 500 мегасемплов или там 250, мегагерц 110 или 60-80?
Осцилограф реально хороший, но конечно же чудес от него за 6 килорублей ждать не надо. С другой стороны - честно заявленные мегагерц 110 и мегасемплов 500 тянут на 25-60 килорублей. Причем, скорее всего, если вам нужно именно 110 и 500, то придется выложить уже 80-120 килорублей, ибо по верхней границе все равно все врут, и приходится повышать ставки вдвое.
И да, в resources на сервере ничего писать не нужно (!). В самом приложении обычно делают настройку, где нибудь в конфигурации, куда приложению писать файлы, либо работайте с временными файлами - https://mkyong.com/java/how-to-create-temporary-fi...
Да и вообще, resources - святое, только для чтения в любой java-программе! Ибо оно в jar-архиве! Также всякие мета-каталоги типа META-INF и иже с ними (WEB-INF, EJB-INFO ...) - харам!
Nulltiton, Что значит "работало локально"?
Может быть просто прав не хвататет и сервер запущен, например под пользователем tomcat:tomcat?
С другой стороны, если Вы сами разрабатываете приложение, то для записи файлов лучше иметь каталог вне сервера приложений.
Также, в некоторых системах linux может быть защита на уровне cgroups/selinux/systemd.
Ну и саму яву (и томкат вчастности) тоже можно запустить внутренними (внутри ява-машины) с политиками безопасности (security manager).
Так что вопрос - почему не читается файл, иногда очень сложный.
Начните с простого - проверки прав на сам файл и проверки пользователя, под которым запущен томкат.
Boris007, да, и второй способ, запрашивать на одну строку больше, чем размер страницы. Если не хотите каунтеры запрашивать., иногда это очень накладно.
Boris007, обычно дополнительными запросами, и там будет не один, а штук 10-15.
Бояться этого не нужно, а нужно результаты агрегирующихзапросов кешировать, например в keydb (redis).
mprikhodko, Опять, увы и ах, ничего непонятно!
Обрисуйте полностью ситуацию, куда, чего, как, и откуда, и куда хотите подключаться, что и где и как настроено...
Вытягивать из Вас по вопросу - ну очень муторно, да и не нужно это мне.
Опишите все позможности более полно и подробно, тогда возможно, и поможется...
Иначе, как уже наверное сами заметили, практически никто ничего не понял, увы...
И да, желательно антистатическую обуувь и кресла,
Статика накапливается на всем, особеоон в холодную и сухую погоду.