Pull to refresh

Comments 16

Потому что конкретно в нашей ситуации нам было удобнее и сподручнее «смотреть» в базу так, как мы это реализовали, поэтому мы даже не задумывались об Firebird Interactive SQL Utility.
Вроде ценное замечание, но можно использовать для чего именно?

  • Можно вместо fdb, работая в интерактивном режиме, тут понятно, но менее удобно;
  • Можно вместо питона, но что может гарантировать стабильный вывод значения, скажем в диапазоне 0..1, который в статье указан? Опять же, если намек на INput filename
специально поставил firebird, zabbix и asterix не стал ставить…
как то так
test.sql
connect employee;
select 'result: '||/*тут у нас результат-*/'1' as res from rdb$database;
quit;


скрипт для вставки
root@home:~# /opt/firebird/bin/isql -q -now -i test.sql | grep 'result:' | awk '{print $2}'
1

Что там вырезать с помощью awk/grep или других «встроенных» утилит каждый может решать сам, но по сути python тут видится лишним элементом.

Благодарен, что взяли на себя труд. Но это же медленное извращение с текстом! Надо еще обработать exception'ы. Так можно и firebird взять лишним элементом. А по-моему честный код в который всегда можно добавить хоть обращение к веб, хоть что — удобнее. Ах да, можно ведь использовать wget…

Ну так смысл в статье — написать скрипт который по крону раз в n минут заполняет переменную состояния для zabbix-а (а предыдущий вопрос строго для чисел был), потому и удивило что для этого питон с доп. библиотекой тянут :)
Обычно в таких случаях стараются что-то из базовой поставки использовать.

Не используйте firebird для Веба. Fb тупиковая Бд.
у нас стоит fb 2.5 классик максимальное количество коннектов 400.
Дальше отказывается подключать пользователей !


А Если используете, и будете масштабироватся знайте лучше сразу мигрировать на тот же постгре либо коммерческие бд.


А весь хваленный маркетинг в итоге превращается в очень сложное сопровождение этой субд.
Новые проекты лучше уж начинать с MariaDb либо c Postresql.

И зачем вы используете classic с его накладными расходами, да и как то вы не указали условия, а то может в вашем варианте не в БД проблема?

Не используйте firebird для Веба.

Никто и не говорил, что FB у нас используется для Веба. Эта СУБД у нас на вооружении касаемо проектов, никак не связанных с Вебом.
1. да FB не для веба, если веб на PHP
2. про тупиковую не согласен
3. зачем используете классик если у вас коротко живущие коннекты?
4. тестировали ли FB 3?

зы
про 400 пользователей: что за железо?
есть БД ежедневно 3k+ подключений, проблемы начинаются ближе к 4к
причем есть основания полагать, что истинный корень проблемы в количестве соединений а в неправильной работе с транзакциями в некоторых АРМах
Вы её просто готовить не умеете. Зачем на классике каждого посетителя сразу к базе пускать?
Ну вот и снова очередная статья с `make install`.
wget http://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz -O /var/tmp/Python-3.6.1.tar.xz
cd /var/tmp/Python-3.6.1
./configure
make
make install
Раз уж вы пишете настолько банальные вещи, то почему упустили распаковку скачанного архива? Вдруг читатель не знает, как это сделать?

Библиотека fdb работает с версиями Python 2.6+ и 3.x; в CentOS 6.8 стоит Python 2.6, если мне память не изменяет. Нужды разводить бардак на сервере, и тем более рекомендовать поступать так другим, небыло.
Почему бардак? python3 и pip3 вместе с python и pip, никто никому не мешает. Тем более лично мне python3 нравится намного больше, потому как функции это функции, никаких команд print, все единообразно. Никаких танцев с бубнами со строками. Опять же, все серьезные проекты (например Django) давным давно поддерживают python 3. И, опять же, не нужно думать о virtualenv.

Дабы не городить бардак, python 2 можно удалить, но зачем лишние действия?

Действительно, можно указать, что можно использовать и python. Как вы верно заметили, fdb работает и с тем, и с тем. Только стоит учесть, что если копировать скрипт 1 в 1 из статьи — в статье python3.

Дабы не городить бардак, python 2 можно удалить
Нельзя. В данном случае нельзя просто взять, и удалить Python 2.
Опять же, все серьезные проекты (например Django) давным давно поддерживают python 3. И, опять же, не нужно думать о virtualenv.

Вот только в серьезных проектах обычно используют виртуальные окружения, дабы не разводить бардак в системе и переключаться между несколькими окружениями. Не хочется возиться с установкой python3 (тем более собирать из исходников!) — можно установить miniconda/anaconda дистрибутив. Всего лишь надо скачать установочный скрипт и запустить, можно даже без прав рута. Далее,
conda create -n myvenv python=3.5
source activate myenv
Вуаля! И, в отличие от venv, не надо дополнительно устанавливать setuptools, pip3. И можно создавать окружения с любыми версиями питона (venv использует установленный в системе)


python 2 можно удалить

И отвалятся системные скрипты

Раз уж вы пишете настолько банальные вещи, то почему упустили распаковку скачанного архива? Вдруг читатель не знает, как это сделать?

Ну, такими темпами могу сказать, что нет предела совершенству, придраться можно ко всему. Практически данный процесс не помешает, с точки зрения перфекционизма да, скорее всего, тут не всё круто, на идеал и не претендую.

Библиотека fdb работает с версиями Python 2.6+ и 3.x; в CentOS 6.8 стоит Python 2.6, если мне память не изменяет.

Тут спорить не буду. Мы хотели максимально актуальные версии, в чем нас нельзя обвинять =)
Sign up to leave a comment.

Articles