суббота, 20 марта 2021 г.
четверг, 18 марта 2021 г.
Немного о говнокодерах в убунте
Есть обычная LTS убунта, никого не трогает, по apt install php ставится версия 7.4 (в 20.04). Но нам нужен пхп 5.6 ВТОРЫМ. Ок, ставим
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
Теперь по apt install php5.6 ставится 5.6, вроде всё хорошо... А нет.
# apt info php | grep Version
Version: 2:8.0+82+ubuntu20.04.1+deb.sury.org+1
# apt-cache policy php
php:
Installed: 2:7.4+75
Candidate: 2:8.0+82+ubuntu20.04.1+deb.sury.org+1
То есть теперь, если мы используем штатную версию 7.4, по условному apt install php-curl нам прилетит совершенно бесполезная версия 8.0. Что называется, ПРЕВЕД. При этом reconfigure не помогает
# dpkg-reconfigure php
Впрочем, это рукожопство лечится. Идём в /etc/apt/preferences.d/ и пишем файлик (какой? Синтаксис там совершенно мерзейший, типичный говнокод в действии - у того же центос прямо в .repo пишем что исключаем из данной репы и живём спокойно). Так что вариант - ppa поставили, нужное поставили, потом из /etc/apt/sources.list.d убрали/удалили.
среда, 17 марта 2021 г.
ubuntu, php, xhprof
"XHProf был разработан Facebook и заброшен , когда они переехали в HHVM. Теперь есть fork проекта под названием Tideways , который обещает добавить поддержку PHP версий 5.6 и 7."
Хотя если перейти на http://pecl.php.net/package/xhprof то версия 2.2.3 там от конца 2020 года...
Итого: можно ставить так
apt install php-pear
apt install php-dev # phpize
extension=xhprof.so
xhprof.output_dir="/tmp/xhprof"
и в /etc/php/7.4/cli/conf.d делаем ln -s /etc/php/7.4/mods-available/xhprof.ini 20-xhprof.ini
повторить для апача или fpm
или через tideways (веб версия - платно! Сам xhprof вроде нет, но там формат другой, нужно переписывать код)
https://tideways.com/profiler/xhprof-for-php7
https://github.com/tideways/php-xhprof-extension
https://github.com/tideways/php-xhprof-extension/releases
https://gist.github.com/snoek09/72d0563d350fcc9ea6117790eeb6e60f
GUI
https://github.com/perftools/xhgui
apt install mongodb
#pecl install mongodb
apt install php-mongodb
systemctl enable mongodb
grep bind /etc/mongodb.conf # обязательно проверяем что есть bind_ip и он не выставлен в 0.0.0.0 - это чревато! Должно быть 127.0.0.1
systemctl restart mongodb
echo 'extension=mongodb.so' > /etc/php/7.4/mods-available/mongodb.ini
и повторяем включения
apt install composer
composer install --no-dev
curl 127.0.0.1:8080/install.php
вторник, 16 марта 2021 г.
werf
Есть такая надстройка над helm - werf
Утилита не сложная, по набору документации быстро изучается (русский язык там есть, и проработан неплохо).
Но очень важный момент - на данный момент stable - версия 1.1, а дока пишется под пока ещё beta 1.2. И есть существенные отличия в синтаксисе, поэтому на 1.1 по доке 1.2 будут нюансы. Есть и по 1.1 (сверху переключатель), но там нет руководств по быстрой настройке таких вещей как nodejs (2), ruby, django...
А так, есть куча видео на ютубе и куча статей на хабре, зачем нужна эта утилита.
суббота, 13 марта 2021 г.
Быстрое введение в Clickhouse
Есть такая бд от яндекса, и неплохое описание на хабре и офсайте.
Это такая колоночная бд, заточенная под аналитику. Поэтому нужно понимать нюансы, прежде всего там нет транзакций, очень ограниченные джойны, операции изменения и удаления предполагают работу с большим количеством строк. Но при этом легко масштабируется и для своих задач очень быстра.
Также нюанс, который редко описывают в доках. Там нет штатной бэкапилки, работа вида "скопировать и потом вернуть на место файлы бд".
Второй нюанс - внутри оно обмазано ZooKeeper-ом, так что его надо уметь ставить, обслуживать и чинить.
Ну и SQL вроде типовой, а вроде и не очень, есть нюансы.
И небольшая обучалка
четверг, 4 марта 2021 г.
Ubuntu 20.04 и сканер отпечатков
Fingerprint GUI is no longer maintained and is not compatible with Ubuntu 20.04 and newer. There is a built-in fingerprint login feature in 20.04 under Settings->Users->Authentication & Login.
https://askubuntu.com/questions/1231357/fingerprint-gui-not-installing-in-ubuntu-20-04