в докере порты разрешены?
publish/expose вам помогут, если дело в этом. первый для доступности портов сервиса снаружи, второй для разрешения сети между контейнерами (если память не изменяет, один контейнер к другому может обратиться только по разрешенным портам).
с сетью у вас тоже не понял. выглядит так, будто nginx стучится на свои интерфейсы, но по умолчанию сетевой драйвер - bridge, то есть, каждый контейнер получает свой ip, и proxy_pass у вас просто промахивается из за ip: 0.0.0.0. попробуйте включить драйвер host для сети, если все крутится на одной машинке, и разнесите их по портам, или настройте сеть до конца.
если все правильно понял, то как - то так получается.
Был такой дядька, Крис Касперски. Считался хакером, хотя, как по мне, просто талантливый журналист. Он довольно много писал, в том числе и книги.
Можно попробовать его почитать, как введение в профессию :)
Потом может прийти понимание, надо вам этим заниматься, или стоит уйти в более понятные и предсказуемые, в том числе финансово, области знаний.
и теория и практика нужны. где их брать - это отдельный вопрос.
хакеров ни кто не готовит - просто нет такой профессии. есть специалисты в определенных областях знаний, как признание достижений которых, иногда, окружающие считают достойными этого звания. нельзя просто назвать себя хакером, и тем более, нельзя пройти курсы или купить корки хакера. любой, кому ты решишь их предъявить получит полное право называть тебя ламером, ну или просто дурачком.
определись с направлением, что тебя больше интересует.
взлом ОС - это больше администрирование, хотя asm и компилируемые языки тоже важны. здесь больше кракинга, и поковырять бинарь, которую порождают те же плюсы придется. для начала смотришь найденные эксплоиты, на чем срабатывают они, потом есть шанс начать искать свои.
веб приложения и скриптовые языки все еще дают надежду на наличие ошибок. к несчастью, есть достаточно много типовых ошибок, их описание ищется в сети, а их использование можно отработать в лабораторных условиях. здесь больше всего шансов продвинуться.
можно еще поковырять прошивки. вендор часто отдает обновления, и, не редко сообщает, в чем же проблемы старой. разобрать их не ахти какая сложная задача, бывает, потому что речь про компилированные файлы идет не всегда, и все опять сводится к веб приложениям на скриптовых языках.
Видел. Когда я запускаю программу такси, меня интересует время ожидания, количество мест, если нас больше чем один и опции, вроде детского кресла, оценка, если она совсем в районе плинтуса. Остальное мало важно.
Я больше про то, что каждое твое желание имеет свою цену в ресурсах.
Например, ты хочешь каждую секунду знать, где находится конкретная машина, независимо от того, везет водитель клиента, стоит в пробке, пошел в кафе покушать или просто спит - я уточняю, зачем это нужно. Все варианты нужно отслеживать и адекватно на них реагировать, а их, даже в общении с водителями может быть масса, кмк. Не проще разделить логику работы с водителем и клиентом? Водитель видит все заказы с ранжиром по расстоянию/времени от его текущего места, клиент, по степени соответствия его запросу по характеристикам авто и времени на ожидание (просто, с какого - то момента, клиент, скорее всего, перестанет просматривать варианты авто и уйдет к другому оператору, поэтому, в начале и должны быть те, кто точно имеет шанс забрать этот заказ, а не тот, у кого есть время нажать по кнопкам).
Впрочем, на вопрос я ответил в начале: стоит, кмк, использовать инструменты, которые лучше всего знаешь, задача не на столько сложна, чтобы городить огород на ровном месте.
Не понятны требования к классификации. Нужна конкретика.
Человек, который написал прошивку для устройства, и человек написавший ОС. Они проделывают достаточно похожую работу, в плане работы с железом, только организуют результат несколько по разному. Где та граница, при которой различия начинают быть важными?
С компиляторами, например, та же история. Кто автор этого продукта, системный программист, или прикладной? А если человек написал DSL, который работает в контексте другой программы, но разработчик проделал всю ту же работу, что и предыдущий автор, кто он?
Примеров можно привести много, когда цели классификации определяют кого и в какую категорию включать.
все типы данных загружены с обеих сторон? сомневаюсь, что pickle озаботится этим сам.
сериализовать вручную, и передавать на обработку, например, json - не вариант?
Кирилл Гусарев, подозреваю, что вы излишне нелюбопытны. рядом же все функции что вам нужны, в той ссылке, что привел Дмитрий. правильная последовательность действий: ob_start->вывод->ob_flush->вывод->ob_end_flush. как вариант - попробовать ob_end_clean до начала вывода.
На каждый новый фреймворк - нет, хотя, если есть возможность, то не вижу ни чего предосудительного, реально экономит время. Да и изучить что либо достаточно крупное, последнее с чем возился - PyQt, без курения вменяемого туториала не реально.
На каждый новый язык - читаю. А как иначе попробуешь что - то подобное rust или R? Да и go в достаточной мере экзотика, для мозгов, приученых к python и php.
если я правильно понял задачу, то вам стоит проанализировать условия на n и k.
у меня получилось, что k=2, а n принадлежит [2..16].
в таком случае условие зазвучит как: посчитайте количество возможных последовательностей из 0 и 1, при условии, что ни где не встречается 2 нуля подряд и имеющие длинны из диапазона [2..16]
последний шаг оставляю вам на самостоятельную реализацию :)
Мальенькое уточнение, если речь идет о локальной сети без публичного доступа (у вас локалка, например, 192.168.0.* и доступ нужен только из нее): достаточно просто поднять службу DNS и указать адрес настроенного сервера первым в сетевых настройках, чтобы он отвечал на ваши локальные запросы, а остальные уходили к серверам прова.
Это не поможет?
Встретил решение: запустить в командной строке chcp 65001 до запуска скрипта, но проверить или поделиться опытом не могу, потому как давно не пользуюсь форточками.
и форматирование хорошо бы включать, благо редактор поддерживает, и немного подумать: первой строкой в сообщении идет " invalid memory address or nil pointer dereference", что скорее всего значит, что где-то, что-то не построилось/создалось и плясать надо от точки старта, а не от моделей.
А зачем вам взаимодействовать с чужой программой? Да еще таким нестандартным способом, как прямой доступ к ее памяти? :)
Впрочем, логика ответа на ваш последний комментарий проста: форматом исполнимого файла linux является elf, его спецификация открыта, достаточно поставить пакет linux-headers, можно найти и подробности, например здесь, или здесь. Как именно ядро грузит исполнимый файл, выполняет его настройку, и запускает - это проще всего узнать в исходниках самого ядра.
С форточками и проще и сложнее. Компания мелкомягких нацелена на то, чтобы вы разрабатывали легальный софт, а не взламывали их, поэтому, вся информация, сверх того, что отдается официально - это утечки от партнеров, либо, результаты исследования этой ОС энтузиастами.
Mikhail, сильно удивлюсь, если это код. я склонен думать на утечку памяти, все говорит за это, с ваших слов: недетерминированные ошибки в разных местах кода.
Можно попробовать поэкспериментировать с расстановкой
import gc
gc.collect()
в конце вьюх. если где - то остается мусор, который питон не может прибрать, иногда помогает явно попросить его прибраться.
publish/expose вам помогут, если дело в этом. первый для доступности портов сервиса снаружи, второй для разрешения сети между контейнерами (если память не изменяет, один контейнер к другому может обратиться только по разрешенным портам).
с сетью у вас тоже не понял. выглядит так, будто nginx стучится на свои интерфейсы, но по умолчанию сетевой драйвер - bridge, то есть, каждый контейнер получает свой ip, и proxy_pass у вас просто промахивается из за ip: 0.0.0.0. попробуйте включить драйвер host для сети, если все крутится на одной машинке, и разнесите их по портам, или настройте сеть до конца.
если все правильно понял, то как - то так получается.