2017-12-09

Высоко-нагруженная СУБД в Docker? Ты что дебил?

Очередная юмористическая запись
К написанию натолкнул спор разговор с одним человеком из компании noname.

Началось всё в стиле "сколько стоит сделать сайт". Понятно что разговор шёл о использовании Docker и СУБД, Если быть точнее то об использовании PostgreSQL в том самом Docker.
Вопрос собеседника, что лучше Debian или Ubuntu меня заставил напрячься, я заподозрил что где то кроется подвох.
Понятное дело что за стабильность Debian приходится платить версиями пакетов, и наоборот за свежесть Ubuntu платить приходится багами.

Затем разговор перешёл в русло тяжёлых нагрузок PostgreSQL работающего в Docker уже по меньшей мере забавно но да ладно.
В итоге собеседник выдал, что ни я ни 90% "рунета" ничего не понимаем в Docker.
А я то наивно полагал, что бородатые дядьки на HI-Load конференциях знают побольше таких как мой собеседник. Или может всё поменялось за последние пол года и Docker больше не нуждается в драйверах для работы с дисковой подсистемой. Мало того, может Docker работает даже быстрее самой OS на которой развёрнут. Но это наверняка какая то тайна о которой знает только собеседник и оставшиеся 10% "рунета".

2017-06-23

Этикет? - не, не слышала!

Вдруг зазвонил телефон. +79514992094
Кто говорит?
И тут мне в ответ какая то барышня - "Вы что скрываетесь?"
Я отвечаю - "Я же должен знать с кем говорю."
В ответ я услышал следующее - "Я работодатель. Короче до свидания" и бросила трубку.
Самое забавное то, что голос был как будто человеко резко про-слабило

На секундочку - это был HR компании? Тот человек который должен сглаживать углы и шероховатости между сотрудниками, и должен оценивать человека на собеседовании? Это просто верх мастерства.

Как говорится - хорошо хоть на*ер не послали.


2017-06-20

Doker - как не надо делать

В общем пример как не надо делать

FROM perl:5.20

MAINTAINER Xxxxxxx Dmitry

RUN apt-get update
RUN apt-get install -y curl build-essential m4 libncurses5-dev libssh-dev
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN apt-get update

RUN curl -L cpanmin.us | perl - Mojolicious@6.08

2017-06-06

Гнусный Microsift и почему фтопку Skype

Появилось уведомление, что Microsoft начинает блокировать Skype for Linux (который работает по принципу p2p). И на следующий день с моей учётной записи начали просить денег в долг.
Всё бы ничего и можно было бы списать на то, что не там где надо входил в учётную запись. Если бы не история входов. Все входы сделаны с ОС Linux с одних и тех же адресов (рабочий и домашний). Сказать что пароль был простой тоже нельзя. Пароль был больше 15ти символов, верхний и нижний регистр, цифры и спецсимволы!

При всём этом когда я входил в свой аккаунт через Linux клиент - буквально через пару секунд происходил автовыход. В веб версии этого не было.
Вывод я для себя сделал - Microsoft специально спровоцировал утечку паролей Linux клиентов.

В общем я настроил всякие дополнительные методы защиты по смс и тд. И решил отказаться от Skype как основного месседжера.

Отказаться решил в пользу Telegram и Hangouts
У первого интересные моменты с ботами и каналами + недавно реализовали звонки
У второго групповые видео звонки с возможностью "расшаривать" экран

2017-06-05

MySQL мыши и кактус

Есть такое забавное выражение "мыши плакали кололись но продолжили есть кактус".

Цитата одного из сотрудников MailRu Group звучит так - "Кто то как мы, перешёл на PostgreSQL и теперь счастлив, а кто то остался на MySQL и продолжает есть кактус".

Собственно приведу всего один простой наглядный пример почему это так.

Для эксперименты были взяты MariaDB 10.1 и 10.2, последняя соответствует MySQL 5.7

2017-06-02

Oracle переносит выпуск Java 9 на осень

Компания Oracle в третий раз переносит релиз Java 9. В соответствии с новым планом выпуск переносится с 27 июля на 21 сентября из-за разногласий в исполнительном комитете JCP (Java Community Process), касающихся внедрения новой модульной архитектуры Jigsaw, которая, по мнению Red Hat, может привести к нарушению работы уже существующих приложений, расколу экосистемы и фрагментации сообщества. Компания Oracle не отказывается от Jigsaw и надеется за два дополнительных месяца устранить отмеченные комитетом недостатки. 

2017-06-01

Выпуск серверной JavaScript-платформы Node.js 8.0


Представлен релиз Node.js 8.0.0, платформы для выполнения высокопроизводительных сетевых приложений на языке JavaScript. Node.js 8.0 относится к веткам с длительным сроком поддержки, но данный статус будет присвоен только в октябре, после проведения стабилизации. Время выпуска обновлений для LTS-веток составляет 4 года. Поддержка прошлой LTS-ветки Node.js 6.0 продлится до 2020 года, а позапрошлой LTS-ветки 4.x до апреля 2018 года. Поддержка промежуточной ветки Node.js 7.0 будет прекращена в июле 2017 года.
Из улучшений в Node.js 8.0 отмечается обновление движка V8 до версии 5.8, в которой реализована новая схема компиляции, основанная на применении интерпретатора Ignition и JIT-компилятора Turbofan. Новая схема примечательна повышением производительности выполнения JavaScript-приложений и снижением расхода памяти. В V8 5.8 также представлен новый подход к стабилизации - ABI данной версии будет совместим с V8 5.9 и 6.0, что позволит реализовать обновление движка V8 до новых выпусков в рамках жизненного цикла ветки Node.js 8.x.
.....

.....
По своей сути Node.js похож на фреймворки Perl AnyEvent, Ruby Event Machine, Python Twisted и реализацию событий в Tcl, но цикл обработки событий (event loop) в Node.js скрыт от разработчика и напоминает обработку событий в web-приложении, работающем в браузере. При написании приложений для node.js необходимо учитывать специфику событийно-ориентированного программирования, например, вместо выполнения "var result = db.query("select..");" с ожиданием завершения работы и последующей обработкой результатов, в Node.js использует принцип асинхронного выполнения, т.е. код трансформируется в "db.query("select..", function (result) {обработка результата});", при котором управление мгновенно перейдёт к дальнейшему коду, а результат запроса будет обработан по мере поступления данных. Ни одна функция в Node.js не должна напрямую выполнять операции ввода/вывода - для получения данных с диска, от другого процесса или из сети требуется установка callback-обработчика.