От себя добавлю, выбирая недавно через кого переслать посылку из амазона я выбрал шипито, только потому, что там можно пересылать ограниченное количество посылок не предоствляя сканы документов, пусть и у них немного дороже. Почти у всех остальных посредников документы нужны сразу
Попробовал, выглядит удручающе:
1) php на win сервере не лучшее решение
2) не работает External Storage app которое должно мапить «виртуальные папки» на папки вне директорий пользователей. Не знаю почему, вроде все мапится, но когда заходишь в папку в ней пусто
3) при загрузке 10 килобайтной php-fcgi.exe картинки жрет 100Мб оперативы и 100% процессора примерно 5-10 секунд. Именно столько длится загрузка этой ПНГшки. Ипользовал sqlite если это важно. Проблема на форуме всплывает часто, вроде решена, но на деле как видно нет.
Итог, поигравшись 10 минут удалил.
Тут (см первый коммент) habrahabr.ru/post/154047/ описываются другие проблемы проекта. В целом он выглядит недоделкой.
Если что, это не к вам претензии. Просто если кто-то забредет в этот вопрос, и подумает, что owncloud — решение для проблемы :)
по а. Смотрите если у вас доступ к данным осуществляется так часто и без сложных запросов, а данных мало, то есть смысл хранить их не в БД, а прямо в оперативке в приложении. Нет ничего предрассудительного в том чтобы хранить 50 или 150 комнат, памяти это много не займет. Список сообщений это List. Допустим комната идентифицируется строкой или номером. Получается все сообщеня можно хранить в Dictionary<string,List>.
Учитывайте только, что у вас будет доступ к харнилищу из разных потоков. Либо лочьте его на время доступа, но гораздо лучше решение использовать коллекции поддерживающие паралельный доступ
В многопоточности ничего сложного нет :) стоит немного разобраться и вы раскроете для себя очень широкие горизонты. Почитайте на русском Трэй Нэш «C# для профессионалов». Там есть глава про многопоточность. А с появлением Task, и async\await писать мнопоточные приложения становится до смешного просто и удобно.
Но к сожалению какой бы сахар не добавляли в язык все равно придется изучить как все устроено внутри.
Я серьезно. Вы больше гемороя обретете со всеми промежуточными серверами. Плюс телефон будет быстро садиться — ведь чтобы быть онлайн телефон не должен впадать в слип, а тогда батарея сядет часа за 4, и это если она до этого на 100% заряжена.
Всмысле напряжно использовать USB кабель место вайфая? Мне казалось наоборот проще. Просто у меня на рабочей станции например нет блютуса, а через корпоративную вафлю до рабочей станции опять же не достучаться, из соображений безопасности. Да и как не крути постоянно включенный экран выест аккамулятор за 3-4 часа максимум. А при потосянно активной вафле за два. Без кабеля никак :-)
И может быть глупо прозвучит, но жаль что она бесплатная. Если бы её можно было бы купить с крутыми иконками, готовыми пресетами для популярных программ\IDE, регулярными обновлениями и баг-фиксами при цене скажем $10 я бы купил не задумываясь. Подумайте, может решите сделать выгодный бизнес? :)
Не то чтобы я не доверяю опен сорсу, но очень многие программы, особенно те где разработкой заняты 1-2 программиста на энтузиазме грешат тем что «но лень было довести дело до конца». И из-за каких-то мелких багов рабочую на 90% программу приходится выбрасывать не в силах выносить оставшиеся 10. У меня у самого есть пара таких проектов, где «для себя» я все поправил, а баг репорты даже читать лень, не то что исправлять. Запал довольно быстро пропадает :(
Видимо моих воспоминаний университетских курсов недостаточно, чтобы применить вашу подсказку к идее. Алгоритм решателя это что-то вроде AI который будет гонять разные стратеги игры? Для всех стратегий размер не может быть одинаковым, ведь есть оптимальные стратегии где победа ближе и не оптимальные где дальше. Как вводить метрику оптимальности?
В общем вы не могли бы как-то шире раскрыть вашу мысль? Я буду очень благодарен.
А вы замапьте NAS как сетевой диск, или в винде прямо пароль сохраните и все. У меня так сделано. Если сетевой диск раздражает (меня дак наоборот радует) его можно скрыть.