Консолью надо пользоваться в крайних случаях. Если у вас приложение - консольное и это была изначально идея. Например как работают утилиты cat/grep/find e.t.c.
Консоль также может использоваться операционкой для BSOD/kernel panic чтоб вывести туда инфу значимую для анализа аварий.
А в оконном надо использовать библиотеки логгирования и писать в файлы.
Скорее всего опечатка где-то. Смотри в постмане есть кнопочка типа сгенерировать bash-скрипт. С командами curl которые будут иммитировать все действия постмана. Вот сделай этот скриптик и приаттач его сюда. Так хоть можно текст почитать.
Я думаю тут нет никакой теории. Надо взять конкретную версию драйвер под Python/MySQL и открыть 100 курсоров и посмотреть закроются они или нет. Смотреть надо наверное через какие-то системные VIEWs в MySQL чтобы увидеть инстансы курсоров. В какую view я к сожалению не знаю. Не спец в MySQL.
Я помню как-то мы разрабатывали аналитику и заметили что Postgres не хочет закрывать транзакции когда клиент (Java-процесс) был убит по kill -9. Это была проблема.
Alexander3928, так тебе нужен инструмент которым надо измерять скорость. Какая польза в наших советах? Надо брать твоё приложение и в develop mode или хз как но получать некую метрику производительности и дальше решать что лучше.
Поскольку в данном коде нет ни циклов ни рекурсий (визуально) то мы не можем оценивать комплексность. Только практическим измерением. Как-то так.
Я думаю что надо искать того кто делает writes. Маловероятно что SSD "прогорает" от чтений. Возможно какой-то один сайт делает PHP/fopen/fwrites и я-бы грепнул по исходникам чтобы просто сузить круг поиска. И еще поискать есть ли использование движков баз данных. Кроме MySQL и PG возможно есть какие-то самодельные на файлах.
Интересный вопрос. Я подписался. В идеале тебе нужно ткнуть пальцем в сайт-виновник. Но вот вопрос в чем. Как его привязать к linux-процессу? Особенно в архитектуре где работает в основном мультиплексированный IO.
Для начала можно попробовать посмотреть iotop. А там дальше - как пойдет...
Читал с интересном. Честно - вопрос напоминает шпионский детектив. Кто-то что-то краем уха слышал. Какие-то телефоны туннели. Вобщем я-бы предложил потратить мозговые усилия в какое-то более полезное направление.
Это не будет работать. Base64 кодирует массивы кратные определённой длине.
Все массивы не кратные имеют дополнительный "хвостик". Так называемый padding который говорит что хвостовые символы надо игнорировать. Там есть формула. Какая - щас не помню но достаточно простая для отсечения хвоста.
Поэтому при удачном стечении обстоятельств вы можете писать в base любую двоичную информацию.
При неудачном - вам необходимо либо полностью переписывать файл либо как-то хитро подгонять Seek
под позицию padding и корректировать текстовый файл.
Вобщем лучше такую задачу выкинуть и не делать совсем. Либо постановка на самом деле была другая.
Или текстовый файл должен иметь какие-то дополнительные маркеры разделители чтобы разделять поток
на набор вложенных массивов.
Он - плохо чувствителен к ошибкам. По идее автор хочет вернуть контент. Но если мы получаем любую ошибку типа IO - то возвращаем пустую строку. Так видимо автор хотел выкрутится чтоб не вводить коды возврата или опциональные результаты. Но извините контент реально может быть пустой строкой. Такое тоже бывает. Тогда получается что мы просто не различаем битые ссылки и ссылки с пустым контентом.
Вы как-то сильно сложно завернули. У него тег стоит - игровая механика. Никто не будет вводить такие обобщенные понятия как плотность потока в игру. Я вижу себе такой input: дана лодка с парусом площадью такой-то, скорость ветра такая-то, угол такой-то. Расчитать силу.
Автор программирует XMLHttpRequest. Это не совсем браузер. Тоесть это конечно работает внутри браузера но если-бы я запускал эту технологию отдельно - то вопрос бы просто звучал по другому. Сколько http-клиент должен ждать?
Давайте просто браузер уберем из контекста обсуждения. Это ведь по сути неважно.
Надим Закиров, я думаю что в ответ на этот простой вопрос - можно перерыть всю спецификацию протоколов TCP/IP и интернета. Вопрос сложный. Многогранный. Если вспомнить что не только сервер - участник этого процесса но и много других сущностей.
И еще более интересный вопрос. Если ты впишешь не 10 минут а 10 часов - к каким последствиям это приведет. Это интересный вопрос и может быть ты сам на него ответишь.
Мне вопрос напоминает дилемму тестирования. Мы должны иметь конкретные кейсы - иначе тестирование невозможно закончить никогда. Или если себе ставить задачу найти хоть какой-нибудь баг - то хоть какой-нибудь найдется обязательно в самом идеальном софте.
Консоль также может использоваться операционкой для BSOD/kernel panic чтоб вывести туда инфу значимую для анализа аварий.
А в оконном надо использовать библиотеки логгирования и писать в файлы.