A year of SRE work on a small Bitrix site

  1. Big problems on a small scale

  2. A year of SRE work on a small Bitrix site (this post)

In this post, you’ll learn what I learned over a year when I picked up responsibility for my father’s website commercial and technical success. Despite all my Site Reliability experience, I wasted plenty of time and effort due to not following two simple rules I already knew, which are don’t change the system without looking at the relevant data and graphs you identified as a target of a change in advance, and, the primary rule of any refactoring, avoid introducing multiple changes at once as they make results interpolation close to impossible.

Site speed

The website has a lot of decent content with SEO-friendly metadata, however, it did not have as good search engines positions as it deserved. One of the solid factors for search positions, especially for mobile users, is site loading speed. I thought it was the biggest problem I could fix to give the site an edge versus competitors.

I assumed that replacing Apache with Nginx + php-fpm, enabling Nginx PageSpeed mod and upgrading PHP version alongside checking the code for possible JS optimisations should speed the site up. The page readiness time graph below shows that part of the assumptions had the effect precisely opposite to the desired one.

DOM load time from July 2020 to July 2021, 50th percentile

Percentiles: 50th | 75th | 90th | 95th

Big problems on a small scale

  1. Big problems on a small scale (this post)

  2. A year of SRE work on a small Bitrix site

My future is bright, but my present is dreadful. Aside from usual life problems, which I can’t do anything about, I’ve got a bunch I’m capable of resolving, and that turned out to be a challenge I could not cast away.

A bit of background

I’ve started helping my father’s small company of 13 people plus three contractors working on the site and its content when I’ve heard enough silly stories about problems with the company site. Three particular which enraged me the most were:

  • sitemap.xml not renewed for two months after migration to the new platform causing massive search engines traffic decrease
  • robots.txt for regional subdomains having Hostname directive pointing to the main site, effectively causing three sites to merge into a single one in the eyes of the search engines
  • the cherry on the cake, the Google Lighthouse website performance benchmark reliably shows 25-30 points out of 100

Philadelphia City Hall, March 2020: photo by Ksenia Gulyaeva

Site Reliability Engineering vs DevOps

Recently on many occasions, I’ve had to explain the difference between SRE and DevOps practitioners and thought it might be helpful to write it down.

DevOps are making developers happy by increasing development velocity.

Site Reliability Engineers are making business happy by providing meaningful and comprehensible visibility into technical systems' health. The key is the ability to communicate risk in the same terms to both business and technical stakeholders.

Jordan Peterson о достижении целей и о цене успеха

Сегодня я хотел бы поделиться с вами видео Jordan Peterson’а, канадского преподавателя психологии и превосходного оратора, на которого я наткнулся пару дней назад. На канале Bite-sized Philosophy подобраны пяти-десятиминутные фрагменты его выступлений и лекций, в которых он отвечает на какие-либо вопросы или в рамках большой темы рассказывает про малую.

В видео ниже Питерсон рассуждает о том, что, чтобы стать тем, кем ты хочешь, необходимо отправиться в “путешествие”, начать двигаться к своей цели, даже зная, что в самом начале ты ничего не будешь понимать в новых для тебя областях, и будешь поразительно глупо и глубоко ошибаться. Это нормальная часть процесса, и её нельзя пропустить: невозможно выбрать более прямой путь с меньшим количеством ошибок сидя на месте и наблюдая, поскольку позиция цели уточняется в процессе путешествия. Из изначальной точки цель видна нечётко и совсем не там, где она на самом деле находится, только двигаясь, со временем ошибаясь всё так же часто, но с менее серьёзными последствиями, можно в конечном итоге её достигнуть, и само это путешествие будет частью интересной и достойной жизни, чего нельзя сказать о сидении на пятой точке в ожидании.

Следствие из предыдущего предложения: когда ты не двигаешься к цели и ожидаешь правильного момента и возможности, opportunity, которая позволила бы сразу достигнуть цели, ты не сможешь ею воспользоваться. Даже когда она будет перед твоим носом из-за отсутствия опыта побед и поражений ты никогда и не узнаешь, что эта возможность является правильной, поскольку глупость, отсутствие опыта помешают тебе.

Jordan Peterson – How To Stop Rotting Away At Home

Adrenaline in my blood

«Вот то, ради чего, собственно, люди потребляют ЛСД, наркотики, идут на смерть, почему они прыгают с парашютом, почему они идут в наемные солдаты, в экстремальные точки едут и т. д., то есть ради определенного праздника, ради праздника с большой буквы, ради праздника экстремального, экзистенциального, мистического праздника, потому что если праздника нет, то эта жизнь […] не нужна».

«А, по мне, так… самое страшное это умереть заживо. Это самое чудовищное, что я могу себе представить… И вообще, мне кажется, что лучше уж (и, главное, красивее) яркое, горькое, испепеляющее и победное мгновение света, чем долгая косно-унылая и прозаично-параличная жизнь».

«Сытый индивидуум, существующий в липкой протяженности будней, надежд, желаний, ожиданий и т. д. и т. п., не сотворит чуда, не остановит мир. На это способен лишь тот, кому нечего терять».

Про это же трек Долгая счастливая жизнь из одноимённого альбома 2004 года.

Случалась ли когда-либо в вашей жизни ситуация, в которой от ваших действий сейчас буквально зависит ваша жизнь? Весьма маловероятно, если вы не военный, и тем интереснее мне было бы услышать эту историю.

У меня такая ситуация в последний раз была сегодня ночью — я укладывал парашют перед прыжком, который состоится в следующие выходные, а до этого делал это на аэродроме непосредственно перед прыжками. От моих действий зависит, откроется ли парашют мягко и даст нормально лететь под ним до приземления, или откроется слишком резко, отчего я потеряю сознание от перегрузки и сломаю позвоночник, или что угодно в промежутке между двумя этими сценариями. Когда занимаешься парашютным спортом, об этом толком не задумываешься — но пару недель назад на жёстком открытии на своей укладке я здорово ударил рёбра, и вспоминаю об этом каждый раз, когда пытаюсь глубоко вздохнуть.

Как пережить автокатастрофу в небе над пустыней и другие видео

Skydiving in a car

В 50 выпуске Radio Skydive UK (потрясный подкаст про парашютный спорт в UK и вообще) в рубрике “School of Hard Knocks” (школа жизни?) в отрывке 2:57:00 - 3:06:00 Dan Brodsky-Chenfeld рассказывает о том, как он выпрыгнул из самолёта, находясь на пассажирском сиденье кабриолета.

В какой-то момент полёта машина сделала сальто назад, без последствий выкинув трёх других пассажиров-парашютистов, а ему (поскольку ему не за что было держаться) сломала большой палец и нос, и здорово тряхнула по рёбрам. Из-за крови из разбитого носа он ничего не видел, и вынужден был улететь для открытия подальше от машины в наугад выбранном направлении, после чего раскрыл парашют и с горем пополам приземлился.

Самой сложной частью приключения оказалось объяснить врачам в госпитале, куда он приехал самостоятельно, каким образом он попал в такой серьёзный “car accident”, но его машина при этом в целости и сохранности стоит на парковке, и убедить их не вызывать шерифа. Описание прыжка показалось мне очень знакомым, и я по памяти нашёл видео, на котором он запечатлён:

Skydiving in car

Кто бы знал, что у этого видео из середины девяностых есть такая богатая история?

Girlfriend experience

My girlfriend is working outside of IT but had an interest in programming and started learning C# and Xamarin framework two years ago, and around that time, she decided to create her own mobile game.

It was a long journey that changed her life somehow and soon will help her end up with the job of a programmer in another country.

The last step of writing a program is publishing it for the public, and I am glad to announce the game named Planet Parade is finally out for iOS and Android devices!

Planet Parade

It’s a Mastermind game with planets (and Pluto), it’s source code in C# available on GitHub, and I encourage you to try it out:)

Get it on AppStore Get it on Google Play

Sky May

Сегодня читаю сборник современного автора, с прошлой пятницы не открывал книги и очень соскучился – может быть, тёмная проза оказалась достаточно сильной, чтобы затянуть меня в своё настроение. Сейчас всё темно и беспросветно, хотя и пройдёт завтра. Я долго вынашивал мысль рассказать, как всё светло и радужно в скайдайве, но запечатлеть день передышки и то, что ему предшествовало, кажется интересней.

Медленное и быстрое мышление

Одна бессонная ночь – и рассвет нового дня встречает другой человек. Книги о психологии часто спрашивают читателя, мол, когда вы в последний раз думали о том-то?

Не знаю, как с этим у других людей, а я почти никогда не думаю о чём-то целенаправленно – в обществе я общаюсь, в одиночестве я делаю дела, но не думаю толком.

Lust for life

Я долгое время думал, что же написать, и недавно меня ударила молния: то же самое, о чём я говорю. В прошлой записи я упоминал эссе Write Like You Talk, а сегодня я расскажу ровно то, что жгло мне душу в последнее время и что я изливал на беззащитных собеседников.

Зачем человеку жить и бредить одним, а писать о другом? Уберём лишние слои, как это делал Казимир Малевич. Музыка, фильмы, книги, статьи, тренировки в аэротрубе, прыжки с парашютом и общение с прекрасным полом – вот смесь, которой дышу я.

Iggy Pop - In the death car, we’re alive