Умный дом. Часть первая — МОЗГ

Умному дому прежде всего нужен мозг, это медузы и депутаты могут жить без мозгов, дом не может.

В качестве мозга в принципе подойдет любой компьютер. Я выбрал Raspberry PI 3B за 35 баксов, так как он не шумит, место не занимает, а если сдохнет — не жалко.

Мне как админу, давно работающему с FreeBSD разумеется захотелось на этот недокомпьютер с процессором бюджетного смартфона и 1Гб не самой быстрой памяти, поставить именно фряху.

Все оказалось просто и скучно. https://download.freebsd.org/ftp/snapshots/arm64/aarch64/ISO-IMAGES/ взял свежую версию, там есть специальные релизы именно под RPI3, роутер заставив по MAC-у это фигни выдавать фиксированный IP, как результат получился вот такой rc.conf

hostname="dom"
ifconfig_ue0="DHCP"
syslogd_enable="NO"
sshd_enable="YES"
mysql_enable="YES"
nginx_enable="YES"
proftpd_enable="YES"
php_fpm_enable="YES"
memcached_enable="YES"
ntpdate_enable="YES"

Обновление часиков RPI требуется обязательно, потому что как показала практика слетают они на раз при вырубки питания в доме. А так классическая связка Nginx+PHP-FPM+MySQL+Memcached, единственное что принципиально использую MarinaDB которая является аналогом MySQL не рискуя стать платной.

Главное, в данном эксперименте, что этот недосервер отдает страницу, которая генерируется PHP с тремя include, подключаясь к Memcached и к MySQL, делая к последней три несложных запроса, отрабатывает суммарно в пределах 0.01-0.02 сек. Конечно если ту же базу избиркома с миллионом кандидатов и сотнями тысяч выборов, весом в полтора гига на эту штуку поставить, да еще и клиентов одновременно сотню нагнать, то она не выдержит, но для задач умного дома запас производительности более чем достаточен.