Skip to content

Instantly share code, notes, and snippets.

@antage
antage / README.md
Last active August 9, 2020 18:25
Session blocking

В DLE существует проблема блокировки сессий. На каждом запросе выполняется session_start(), который открывает сессию, ставит блокировку и держит ее до завершения запроса. Если сессия уже заблокирована, все остальные бесконечно ждут когда смогут захватит блокировку.

Типичный сценарий:

  1. Пользователь делает запрос который по каким то причинам долго выполняется.
  2. Сессия пользователя блокируется.
  3. Пользователь продолжает делать запросы к сайту.
  4. Процессы начинают вставать в ожидание на блокировку.
  5. Количество процессов упирается в лимит, сайт перестает отвечать на любые запросы всех пользователей.
@antage
antage / printer.ini
Last active November 5, 2022 10:42
Voron V2 250^3 FLYF407 controller Klipper configuration
# Voron 2.4 250^3 FLY407
[printer]
kinematics: corexy
max_velocity: 170
max_accel: 5000
max_accel_to_decel: 2500
max_z_velocity: 35
max_z_accel: 350
square_corner_velocity: 5.0
@antage
antage / 99-nexus7.rules
Created October 4, 2012 18:32
Automount Google Nexus 7 via udev & mtpfs
# Google Nexus 7 16 Gb
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e41", MODE="0777" # MTP media (multimedia device)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0777" # MTP media with USB debug on(multimedia device)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e43", MODE="0777" # PTP media (camera)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e44", MODE="0777" # PTP media with USB debug on (camera)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0777" # Bootloader
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="d001", MODE="0777" # Recovery
# Google Nexus 7 MTP mode : automatic umount & mount when plugged
ENV{ID_MODEL}=="Nexus", ENV{ID_MODEL_ID}=="4e41", ACTION=="add", RUN+="/bin/umount /media/nexus7"
@antage
antage / install-rbenv-user.sh
Created December 1, 2011 14:56
System wide install rbenv on Debian
#!/bin/bash
# per-user install
echo 'if [ -z "$(type rbenv 2> /dev/null | head -1 | grep function)" ]; then' >> ~/.bashrc
echo ' export RBENV_ROOT=/usr/local/rbenv' >> ~/.bashrc
echo ' export PATH=$RBENV_ROOT/bin:$PATH' >> ~/.bashrc
echo ' eval "$(rbenv init -)"' >> ~/.bashrc
echo 'fi' >> ~/.bashrc
@antage
antage / My GIT aliases
Last active January 8, 2018 18:22
GIT aliases
[alias]
ci = commit
co = checkout
st = status
br = branch