пятница, 30 марта 2012 г.
вторник, 13 декабря 2011 г.
Java development 2.0:
Часть 1. Вторая волна разработки Java-приложений: «Облачное» хранилище средствами Amazon SimpleDB
Часть 2. Вторая волна разработки Java-приложений: «Облачное» хранилище средствами Amazon SimpleDB
http://www.ibm.com/developerworks/ru/library/j-javadev2-9/index.html?ca=dre-
http://www.ibm.com/developerworks/ru/library/j-javadev2-10/index.html?ca=dre-
Часть 1. Вторая волна разработки Java-приложений: «Облачное» хранилище средствами Amazon SimpleDB
Часть 2. Вторая волна разработки Java-приложений: «Облачное» хранилище средствами Amazon SimpleDB
http://www.ibm.com/developerworks/ru/library/j-javadev2-9/index.html?ca=dre-
http://www.ibm.com/developerworks/ru/library/j-javadev2-10/index.html?ca=dre-
понедельник, 28 ноября 2011 г.
3 варианта подключения файла в перле
На примере сапы
my $sape_id = 'aaaaaa';
1) require sprintf('%s/%s/SAPE.pm', $ENV{'DOCUMENT_ROOT'}, $sape_id);
2) require "$ENV{DOCUMENT_ROOT}/${sape_id}/SAPE.pm";
3) "$ENV{DOCUMENT_ROOT}/aaaaaaa/SAPE.pm" =~ /^(.+)$/; require $1;
Как мне кажется, 2 метод оптимальный. Вопрос, как там со всякими null-byte уязвимостями.
my $sape_id = 'aaaaaa';
1) require sprintf('%s/%s/SAPE.pm', $ENV{'DOCUMENT_ROOT'}, $sape_id);
2) require "$ENV{DOCUMENT_ROOT}/${sape_id}/SAPE.pm";
3) "$ENV{DOCUMENT_ROOT}/aaaaaaa/SAPE.pm" =~ /^(.+)$/; require $1;
Как мне кажется, 2 метод оптимальный. Вопрос, как там со всякими null-byte уязвимостями.
среда, 23 ноября 2011 г.
Особенности подключения модулей и сообщений об ошибках
Переносили сайт.
Проблема возникла с TrustLink:
Права в порядке. Добавили перед евалом
Вставили вместо евала прямое подключение
Так из-за абсолютно невменяемого показа ошибок диагностика заняла 3 часа.
Проблема возникла с TrustLink:
/var/www/site/htroot/ffffff at (eval 12) line 13.
{
{
'ffffff';
push @INC, "$ENV{DOCUMENT_ROOT}/$o->{TRUSTLINK_USER}";
-> eval("use TrustlinkClient;") or die $!;
my $trustlink = new TrustlinkClient($o);
undef($o);
# use Data::Dumper;
# print '<pre>',Dumper($trustlink),'</pre>';
print $trustlink->build_links();
}
Права в порядке. Добавили перед евалом
warn join ("\n", @INC);
Вывод нормальный, аномалий нет, путь к нужному модулю есть.Вставили вместо евала прямое подключение
require "$ENV{DOCUMENT_ROOT}/ffffff/TrustlinkClient.pm";
Оказалось, он не модуль не видит, а в модуле ошибка - нет библиотеки URI. Проблема была решена установкой libwww-perlТак из-за абсолютно невменяемого показа ошибок диагностика заняла 3 часа.
суббота, 15 октября 2011 г.
суббота, 24 сентября 2011 г.
bitrix backup script
#!/bin/sh
#http://dev.1c-bitrix.ru/community/blogs/howto/945.php
doc_root=$1
name=$2
if [ -z $doc_root ]; then
echo Usage: $0 /path/to/document/root [backup_name]
exit
fi
if [ -z $name ]; then
name=backup
fi
dbconn=$doc_root/bitrix/php_interface/dbconn.php
readcfg() {
grep $1 $dbconn | sed 's/.*"\(.*\)".*/\1/'
}
host=`readcfg DBHost`
username=`readcfg DBLogin`
password=`readcfg DBPassword`
database=`readcfg DBName`
utf=`grep 'BX_UTF' $dbconn | grep true`
if [ -z "$utf" ]; then
charset=cp1251
else
charset=utf8
fi
backup_dir=$doc_root/bitrix/backup
if [ ! -e $backup_dir ]; then
mkdir $backup_dir
fi
cd $doc_root &&
mysqldump -h$host -u$username -p$password --default-character-set=$charset $database > $backup_dir/$name.sql &&
tar -cf $backup_dir/$name.tar $backup_dir/$name.sql &&
rm $backup_dir/$name.sql &&
tar -rf $backup_dir/$name.tar --exclude '*bitrix/tmp/*' --exclude '*bitrix/updates/*' --exclude '*bitrix/backup/*' --exclude '*bitrix/*cache/*' . &&
gzip -f -9 $backup_dir/$name.tar &&
echo OK && exit
echo Error
вторник, 20 сентября 2011 г.
perl: профилирование
Вариантов много.
perl -d:NYTProf script.pl
nytprofhtml && смотрим в браузере
perl-Class-Accessor-Named.noarch : Better profiling output for Class::Accessor
perl-Devel-Profiler.noarch : Perl profiler compatible with dprofpp
perl-Template-Timer.noarch : Rudimentary profiling for Template Toolkit
perl-Test-Timestamp.noarch : Create timestamp objects for testing or profiling
perl-Devel-NYTProf.x86_64 : Powerful fast feature-rich perl source code profiler
perl-Devel-SmallProf.noarch : Per-line Perl profiler
perl-Template-Timer.noarch : Rudimentary profiling for Template Toolkit
oprofile.x86_64 : System wide profiler
perl -d:NYTProf script.pl
nytprofhtml && смотрим в браузере
perl-Class-Accessor-Named.noarch : Better profiling output for Class::Accessor
perl-Devel-Profiler.noarch : Perl profiler compatible with dprofpp
perl-Template-Timer.noarch : Rudimentary profiling for Template Toolkit
perl-Test-Timestamp.noarch : Create timestamp objects for testing or profiling
perl-Devel-NYTProf.x86_64 : Powerful fast feature-rich perl source code profiler
perl-Devel-SmallProf.noarch : Per-line Perl profiler
perl-Template-Timer.noarch : Rudimentary profiling for Template Toolkit
oprofile.x86_64 : System wide profiler
Подписаться на:
Сообщения (Atom)