Такой бизнес всегда впереди. Подумайте, что вы придумали революционную идею, реализовывали её 2 года, отточили до блеска и оказалось... она никому не нужна.
Нормальный бизнес делает прототип за неделю, с багами, с ошибками, с хрен знает чем - тестирует, нужно не нужно и только потом думает нужно это развивать или нет. А если в этот момент пока вы думаете, конкурент выпустит аналог? Вся ваша работа будет пустая. По этому время в бизнесе - ключевой показатель. Наличие высшего образования никак не гарантирует профессионализм, знание и адекватность специалиста, это лишь говорит о том что у него есть высшее образование.... на этом пожалуй все достоинства и заканчиваются (конкретно в нашей сфере, то есть в сфере IT). Научиться нужным навыкам можно и без института, а научиться всему - жизни не хватит.
Диск то не переполнится, а дескрипторы быстро закончатся. Лучше кэш пихать в память, типо мэмкеша или редиса какого нибудь. Ну на крайний случай в бд, если она не являеться узким местом.
Таким платят копейки, потому что выхлопа с них минимум. Делать что то новое можно годами и ничего не сделать, а кто всё это оплачивать будет? Большие зарплаты у учителей/преподавателей? А ведь они знают дофига и больше, только денег то они не приносят собственно.
Все зависит от вас напрямую, если вас можно заменить кем то кто будет работать за 30 000 то вам соответственно больше платить и не будут. Все относительно.
Прям чувствую отдаленность от коммерческой разработки. Мы пишем код и мы делаем решения прежде всего для бизнеса, а бизнесу плевать, что там под капотом, им важно время, потому что время деньги и ценятся не те кто может сопли месяцами жевать придумывая свой велосипед, а тот кто за минимальные сроки выдаст максимальный результат при том высочайшего качества. И тут на многое можно закрыть глаза. А для себя да, вы можете хоть год решение выдумывать, ведь кроме вас оно никому не нужно.
У вас должны были быть и надеюсь теперь будут и не в одном экземпляре, а то обычно если что то ломается, то как правило всё и сразу.
Ваша вина в том что у вас небыло реплики у другого хостера, на которую можно было бы переключить трафик в течении нескольких минут (да экономия такая экономия). Всегда есть фактор и этот фактор надо исключать, тем более если простои обходяться дорого. А если завтра вашего 100% хостера придут и закроют и оборудование изымут? Да у нас страна такая.
Если что то хочешь сделать хорошо, сделай это сам.
И благополучно забывает про это, берет актуальную инфу на рынке и изучает все заного, оттачивая мастерство на практике. Программист не будет лучшем физиком, чем собственно сам физик, по этому при работе в какой то предметной области там есть свои спецы, которы всё что надо объяснят, так как знают это лучше. А все знания приходят по большей части в рабочем процессе. Что хорошо - это ты помнишь, что есть то что тебе нужно, осталось только поискать (как алгоритмы которые проходил в ВУЗе, они быстро забудутся если ты не спортивный программист).
Я хоть и знаю angular\react\blackbone и иже с ними трендовые фичи, но мне они в работе не нужны, кроме внутренних сервисов компании и могу сказать, что они нигде кроме построение отзывчивых интерфейсов и не нужны. Чтобы попасть туда, где строят такие интерфейсы придется не один десяток сайтиков пособирать и интернет магазинчиков, где собственно всё это нафиг не нужно. А с таким опытом и крепкой базой уже все эти парадигмы будут как орешки. Обычно разработчики деляться на фронтеда и бэкенда, вот когда у человека будет опыт он поймет в чем развиваться, не на одном серьезном проекте фронтеда не заставят писать бэкенд.
Короче, ваш совет больше вредный, чем полезный. Начать лучше с общего стека, простых библиотек, полезных навыков работы с кодом и данными.
Вы сами то это изучили? и как? Человеку с минимум базы предложить изучить сразу несколько различных парадигм и паттернов не имея сильной базы, ну ну.
Тогда как то так
//кэш $cacheName = "cache/" . md5($url) . ".cache"; $cacheExists = file_exists($cacheName); if(!$cacheExists) { //создаём кэш ob_start(); getData(); //условная функция, собирает страницу и выводит её $data = ob_get_contents(); ob_end_clean(); if(is_null(error_get_last())) file_put_contents($cacheName, $data); //КЭШ СОЗДАН } else //либо грузим из кэша { $data = file_get_contents($cacheName); //ЗАГРУЖЕНО ИЗ КЭША } echo $data;
Что нужно сделать чтобы в буфер попали варнинги которые по умолчанию отправляются в stderr? Я столько лет программирую и никогда не встречал такой кейс. Сейчас попробую потестить ради интереса :)
----
Действительно, есть такой кейс, как то я прошел мимо такого бага :)
Я вообще не понимаю что вы кэшируете и как ваши warning попадут в кэш.
сделайте функцию, которая будет возвращать html для вывода окончательный, результат функции и ложите в кэш