Некоторые кадры и переходы — офигенные, а некоторые — ну фиг знает:
Блог
Эгея v3118
Вышла новая сборка Эгеи, v3118.
Недавно я задавал вопрос про фоновую работу ПХП на ХТТПС. По вашим советам перешёл на curl и всё стало прекрасно работать. Если у вас ХТТПС, вам стоит обновиться, иначе у вас может плохо работать поиск и не работать бекап и подтягивание обложек видосов.
Ещё в этом билде сильно оптимизирована обработка строк. Если вы страдали от медленного сохранения больших заметок, вам стоит обновиться.
Обновляться как обычно — заменить папки /system/, /themes/plain/ и файл .htaccess в корне.
Что почитать на выходных — 152
Вот:
- Турбулентность ясного неба. Лётчик объясняет, почему турбулентность — это не страшно: «Самому самолёту по-барабану, куда его там кидает и швыряет, потому что он находится в самом потоке и намертво с ним связан. Самолёт становится частью этого потока».
- Про дизайнеров и программистов. Программист Игорь Адаменко рассказывает о взаимодействии с дизайнерами. С Игорем мы сделали новое автосохранение в Эгее (он его там упоминает), а до этого он сверстал мне новое главное меню на сайте.
- 43 Unspeakable Sexual Fantasies People Actually Have. Кайф, что всё такое разное, но вроде ничего особенно безумного. Грустно, что люди говорят «It’s so weird, so I never bring it up to anyone» и «I’ve never shared this with anyone». Один раз живём, ну.
- Люди в интернете. Сергей Минкин.
Хотите стать спонсором рубрики? Пишите: ilyabirman@ilyabirman.ru
Видео по вторникам: песочные часы Марка Ньюсона
Какие офигенные! Очень надо:
Интересно, что когда их опубликовали, в интернете началось бурление, мол, какой дурак потратит двенадцать тысяч долларов на песочные часы. Ну вот я бы потратил, если бы мог себе позволить, в чём проблема? Очень хочется, чтобы люди перестали считать покупку красивых вещей безумием и начали относиться к этому как к чему-то нормальному. Жизнь нужна, чтобы тебе было клёво, а не чтобы выжить.
Эмёрдж 1.3.1
Вышел Эмёрдж 1.3.1, где исправлены пара багов. Один касался анимации спиннера, другой — ошибок в консоли из-за ЦСС-изображений. Если вас не беспокоят эти проблемы, обновляться не обязательно.
Если вы покупали Эмёрдж, вы бесплатно получаете и обновление. Просто скачайте новую версию по той же ссылке, что и в прошлый раз. Если ссылка потерялась, напишите мне и укажите домен, для которого покупали.
Берлинская метровентшахта
В Москве какой-то конкурс про оформление вентиляционных шахт метро. Я по этому поводу вспомнил вот эту крутую шахту из Берлина, с логотипом метро:
Добавлено на следующий день: Пишут, что это лифт. Непонятно тогда, почему решётки.
Вопрос про фоновую работу ПХП
Эгея написана на ПХП как обычное веб-приложение, отвечающее на запросы браузера к серверу. Браузер просит страницу — Эгея её генерирует и отдаёт.
Часть работы, которую делает Эгея — медленная по своей природе, например создание бекапа или индексация большого блога для поиска. Но Эгея отдаёт страницы быстро.
Это потому что в Эгее реализован механизм фоновой работы через запрос к себе. Когда нужно сделать что-то долгое, Эгея устанавливает ХТТП-соединение сама с собой, как бы делая вид, что она браузер, отправляет запрос по специальному урлу, который означает «сделай бекап» или «поиндексируй поиск», и тут же обрывает соединение. В результате выполнение скрипта заканчивается быстро, а вся долгая работа делается незаметно, как раз в ответ на этот запрос к себе. О таком методе я узнал лет двенадцать назад от Романа Иванова, и с тех пор пользуюсь.
К сожалению, с этим методом возникла проблема, когда я стал поддерживать ХТТПС. Если просто отправлять запрос и сразу закрывать соединение, как я всегда делал, не происходит вообще ничего — с точки зрения сервера всё выглядит так, как будто к нему и не обращались. Если же попробовать прочитать ответ, то приходит 400 Bad Request, потому что я как бы пытаюсь говорить с ХТТПС-сервером на простом ХТТП. К сожалению, мне почему-то так и не удалось отправить самому себе запрос по ХТТПС с помощью функции fsockopen () и её родственников, хотя я вроде бы исчитал документацию со всех сторон.
Вместо запроса к себе можно использовать register_shutdown_function (). Но я когда-то пользовался ей, и у меня осталось ощущение ненадёжности — кажется, она выполнялась не всегда, и там были какие-то особенности внутри странные, например, что все пути к файлам должны быть указаны абсолютно. Короче, чтобы ей воспользоваться, нужно переструктурировать код. Женя Степанищев ещё рассказал про fastcgi_finish_request () — похожий вариант.
Эти схемы мне не нравятся непрозрачностью: часть скрипта будет выполняться в каком-то мире, который не виден никому. В варианте с запросом к себе мне ничто не мешает зайти браузером по моему служебному урлу и посмотреть, что происходит. А тут придётся что-то специальное изобретать для отладки. Кроме того, запрос к себе, разумеется, запускает новую копию ПХП, в которой заново начинается отсчёт времени. Выполняя такой запрос, я могу теоретически захотеть сделать что-то ещё так же, и инициировать запрос третьго уровня. И все эти запросы — одинаковой природы, просто заход по урлу. Мне нравится эта однородность.
Есть радикальный вариант — переделать всё так, чтобы по служебным урлам ходил аджаксом клиент, пока ни о чём не подозревающий пользователь смотрит на уже загрузившуюся страницу. Такая конфигурация мне не нравится уже эстетически. Что это за беспомощный сервер, что ему надо, чтобы его клиент приводил в чувство? Возможно, это бред, но я бы хотел, чтобы сервер мог работать самостоятельно.
Ну и пока умники в твиттере не начали писать «расскажите кто-нибудь Бирману про крон», объясню, что моя задача — сделать максимально автономное решение, не требующее от пользователя никакой специальной настройки сервера. Закачал на сервер папку — всё работает. Если вы матёрый программист в свитере, вам такое не понять.
Короче, в идеале я бы хотел заставить работать свою исходную конфигурацию. Для этого мне нужно научиться делать запрос к себе по ХТТПС. Причём мне нужно просто «потрогать» нужный урл и отвалиться — мне не нужно по нему передавать никаких данных, не нужно читать ответ. Как это сделать?
Ну и если вы знаете какой-то ещё способ добиться нужного результата, лишённый всех описанных недостатков, тоже расскажите.
Найки, Адоби и Тафти
Название компании Nike читается «Найки». По-русски Найк называет себя Найком, а не «Найки», потому что так удобнее: Найк понятно как склонять. Молодцы! Не то, что Микросо́фт, который зачем-то насилует русский язык и называет себя «Ма́йкрософтом».
Название компании Adobe читается «Эдоуби». Не знаю ничего о том, как они себя называют по-русски, но от людей регулярно слышу что-то вроде «Эдоуб». Меня не смущают варианты «Адоб», «Адобе», «Адоби», но «Эдоуб» — это как «Эйпл», так говорить нельзя.
Фамилия профессора Tufte читается «Тафти». Тут, слава богу, все говорят правильно — видимо, потому, что слышат это слово раньше, чем видят.
Но заметка не об этом. Дело в том, что я откуда-то взял, что название компании Bose (колонки там всякие) тоже из этой серии и читается «Боузи». И даже сказал об этом нескольким человекам. Но это не соответствует действительности: я посмотрел несколько источников, и везде сказано, что это «Боуз». Так что прошу прощения у всех, кого ввёл в заблуждение.
Добавлено в сентябре 2017-го. А, ещё Moscone.
Аудио по четвергам: «Человек с красным лицом»
Немного попсового прога вам: