SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Упаковка и развертывание
программ на perl под Debian

Вячеслав Матюхин


May Perl, Москва, 16-17 мая 2009 года
Поиск по блогам
Статистика
• 280 пакетов
• 100000 строк кода
• 200 хостов
• 20 групп хостов
• 20 баз mysql до 100GB каждая
Общие знания про Debian
Debian
Полезные скрипты

Тысячи их.
Debian
Полезные скрипты

Тысячи их.
И все написаны на perl.
Debian
Полезные скрипты
...dh_make, dh-make-perl, debuild, debcommit, dupload, debrelease, dch,
debc, debi, dpkg-buildpackage, dpkg-repack, dh_builddeb, dh_builddeps,
dh_clean, dh_clearvcs, dh_compress, dh_css, dh_desktop, dh_fixperms,
dh_gconf, dh_gencontrol, dh_install, dh_installcatalogs, dh_installchangelogs,
dh_installcron, dh_installdeb, dh_installdebconf, dh_installdefoma,
dh_installdirs, dh_installdocs, dh_installemacsen, dh_installexamples,
dh_installinfo, dh_installinit, dh_installlogcheck, dh_installlogrotate,
dh_installman, dh_installmanpages, dh_installmenu, dh_installmime,
dh_installmodules, dh_installpam, dh_installppp, dh_installudev, dh_installwm,
dh_installxfonts, dh_installxmlcatalogs, dh_link, dh_listpackages, dh_make,
dh_makeshlibs, dh_md5sums, dh_movefiles, dh_perl, dh_perldeps,
dh_pycentral, dh_pysupport, dh_python, dh_scrollkeeper, dh_shlibdeps,
dh_strip, dh_suidregister, dh_testdir, dh_testroot, dh_testversion,
dh_undocumented, dh_usrlocal, dh_versions, cvs-buildpackage, svn-
buildpackage, apt-file, debconf, dpkg-parsechangelog, dpkg-repack, lintian...
Debian
dh_make
• Создает скелет нового пакета
Debian
 dh_make
• Создает скелет нового пакета
• И много мусора:
$ ls debian/
changelog control cron.d.ex docs
emacsen-remove.ex init.d.ex libyapm-perl.default.ex
manpage.1.ex manpage.xml.ex postinst.ex preinst.ex
README.Debian watch.ex compat copyright dirs
emacsen-install.ex emacsen-startup.ex init.d.lsb.ex
libyapm-perl.doc-base.EX manpage.sgml.ex menu.ex
postrm.ex prerm.ex rules
Debian
dh_make
• Создает скелет нового пакета
• И много мусора
• Карго-культ!
Debian
Необходимые файлы
•   debian/control - метаданные пакета
•   debian/compat - для debhelper
•   debian/rules - makefile для сборки
•   debian/changelog
Debian
debhelper
#!/usr/bin/make -f
clean:
    dh_testdir
    dh_testroot
    dh_clean
    $(MAKE) clean
build:
    $(MAKE) test
install:
    dh_testdir
    dh_testroot
    dh_clean -k
    dh_installdirs
    $(MAKE) install DESTDIR=debian/$(shell dh_listpackages)
binary: install
    dh_testdir
    dh_testroot
    dh_installchangelogs
    dh_installdocs
    dh_installexamples
    dh_installman
    dh_link
    dh_compress
    dh_fixperms
    dh_perl
    dh_installdeb
    dh_gencontrol
    dh_md5sums
    dh_builddeb
.PHONY: install binary
Debian
CDBS

#!/usr/bin/make -f

include /usr/share/cdbs/1/class/perlmodule.mk
include /usr/share/cdbs/1/rules/debhelper.mk
Debian
dh-make-perl

Одной строкой:
$ dh-make-perl --email=mmcleric@yandex-team.ru

Другой строкой:
$ sudo dh-make-perl --install --cpan Some::Module
Debian
   dh-make-perl

   Одной строкой:
   $ dh-make-perl --email=mmcleric@yandex-team.ru

   Другой строкой:
   $ sudo dh-make-perl --install --cpan Some::Module



http://wiki.debian.org/Teams/DebianPerlGroup:
...just send a signed mail to debian-perl@lists.debian.org and list the packages
you want us to take over.
Наши расширения debhelper
Debhelper
 dh_perldeps


Как отобразить зависимости perl-модулей
в зависимости пакетов?
Debhelper
        dh_perldeps
$ DH_VERBOSE=1 dh_perldeps
         processing file debian/libyandex-unrotate-perl/usr/share/perl5/Yandex/
Unrotate.pm
         dependent perl modules: warnings, strict, Digest::MD5, Yandex::Logger,
Yandex::TmpFile, File::Basename
         realpath: /usr/share/perl/5.8/warnings.pm -> /usr/share/perl/5.8.8/warnings.pm
         realpath: /usr/share/perl/5.8/strict.pm -> /usr/share/perl/5.8.8/strict.pm
         realpath: /usr/lib/perl/5.8/Digest/MD5.pm -> /usr/lib/perl/5.8.8/Digest/MD5.pm
         realpath: /usr/share/perl/5.8/File/Basename.pm -> /usr/share/perl/5.8.8/File/
Basename.pm
         dependent debian packages: perl, perl-base, libyandex-logger-perl, perl-modules,
libyandex-tmpfile-perl
Debhelper
  dh_perldeps

1. Читаем весь код в пакете
2. Ищем /buses+((?:w+::)*w+)(?:s+(v?[d_.]+))?/sg
3. Просматриваем @INC в поисках файлов
4. Делаем dpkg -S на каждый файл
5. ???
6. PROFIT!
Debhelper
dh_perldeps

До:
$ grep Depends debian/control
Depends: ${perl:Depends}
Debhelper
dh_perldeps

До:
$ grep Depends debian/control
Depends: ${perl:Depends}



После:
$ debc | grep Depends
 Depends: libyandex-logger-perl, libyandex-tmpfile-perl,
perl (>= 5.6.0-16), perl-base, perl-modules
Debhelper
dh_builddeps
$ dh_builddeps

$ cat debian/control
...
Build-Depends: perl, libyandex-ppb-ssh-perl, libyandex-
unrotate-perl
# [dh_builddeps] previous line is autogenerated
...
Debhelper
  dh_builddeps

- Debian policy запрещает генерировать control
- Иногда некроссплатформенен
+ Зато незаменим для автосборок
Debhelper
dh_perldeps и dh_builddeps

Безумная альтернатива - dpkg-depcheck
• Использует strace
• Тормозит
Debhelper
dh_versions


Q: Для каких пакетов писать версии?
Debhelper
dh_versions


Q: Для каких пакетов писать версии?
A: Для некоторых.
Debhelper
dh_versions

В исходниках:
use version; our $VERSION = qv(‘{{DEBIAN_VERSION}}’) unless
‘{{DEBIAN_VERSION}}’ =~ /DEBIAN/;

$ dh_versions

В пакете:
use version; our $VERSION = qv(’1.0.3’) unless ‘1.0.3’ =~ /
DEBIAN/;
Debhelper
dh_versions
$ grep Logger ./scheduler.pl
use Yandex::Logger 1.0.2;
$ debuild
...
$ debc | grep Depends
Depends: libyandex-logger-perl (>= 1.0.2), perl (>= 5.6.0-16),
perl-base, perl-modules
Debhelper
И снова CDBS

#!/usr/bin/make -f

include /usr/share/cdbs/1/class/perlmodule.mk
# include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/rules/ppb.mk
Тестирование
Тестирование
Yandex::Config
# scheduler.pl:
use Yandex::Config ‘yandex-ppb-scheduler/main.cfg’, qw(
   $WORKDIR
   @DISTRIBUTE_TARGETS
);

# тесты:
BEGIN {
  $ENV{CONFIG_PATH} = ‘t/etc’;
}
system(“./scheduler.pl”);
Тестирование
  Yandex::Config

• Дефолтный CONFIG_PATH - “./etc:/etc”
• Проверяет, что параметры объявлены
• Работает на стадии компиляции
Тестирование
Yandex::DB
# в коде:
use Yandex::DB;
$db_scheduler = connectdb(“scheduler”);


$ # в консоли:
$ connectdb scheduler
Тестирование
Yandex::DB
Yandex::DB::Plugin::File
$ cat /etc/db.d/scheduler
[
  {
    “priority” : 1,
    “base” : “scheduler”,
    “host” : “db.feeds.yandex.net”,
    “pass” : “pass”,
    “user” : “user”,
  }
]
Тестирование
Yandex::DB
Yandex::DB::Plugin::Meta
$ cat /etc/db.d/meta
[{
    quot;basequot; : quot;metaquot;,
    quot;hostquot; : quot;meta-db.feeds.yandex.netquot;,
    ...
}, ...]

[meta-dbs3.feeds.yandex.net] meta> select host, user, passwd,
base from Bases where name = ‘scheduler’;
+-----------------------+-----------+-----------+-----------+
| host                  | user      | passwd    | base      |
+-----------------------+-----------+-----------+-----------+
| db.feeds.yandex.net   | user      | pass      | scheduler |
+-----------------------+-----------+-----------+-----------+
Тестирование
Yandex::DB
Yandex::DB::Plugin::Sandbox
# t/test.t:
$ENV{YANDEX_SANDBOX_DB} = “scheduler,feeds”;
use Yandex::DB;
$db = connectdb(“scheduler”);
... # заполнить базу временными данными

$ENV{YANDEX_SANDBOX_DB_EXISTING} = $ENV{YANDEX_SANDBOX_DB};
system(“./scheduler.pl”);
... # проверить содержимое базы
Тестирование
  Yandex::DB
  Yandex::DB::Plugin::Sandbox
• Индивидуальные базы у каждого пользователя
• Пересоздается на каждый запуск тестов
• Но остается работать после запуска тестов
Вячеслав Матюхин
Разработчик

Россия, Москва,
ул. Льва Толстого, 16.

+7 (495) 739-00-00
+7 (495) 739-70-70 — факс

mmcleric@yandex-team.ru

Contenu connexe

Tendances

俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681Turkmenistan Laws
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055Turkmenistan Laws
 
Minsk Jazz 190509 Templ
Minsk Jazz 190509 TemplMinsk Jazz 190509 Templ
Minsk Jazz 190509 Templsef2009
 
Основы работы с Memcached
Основы работы с MemcachedОсновы работы с Memcached
Основы работы с Memcachedrailsclub
 
Intro To RDBMS And SQL Server 2005 - Svetlin Nakov
Intro To RDBMS And SQL Server 2005 - Svetlin NakovIntro To RDBMS And SQL Server 2005 - Svetlin Nakov
Intro To RDBMS And SQL Server 2005 - Svetlin NakovSvetlin Nakov
 
Jazz – открытая платформа разработки ПО
Jazz – открытая платформа разработки ПОJazz – открытая платформа разработки ПО
Jazz – открытая платформа разработки ПОSQALab
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech MainHideki Yamane
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)Hideki Yamane
 
企业级搜索引擎Solr交流
企业级搜索引擎Solr交流企业级搜索引擎Solr交流
企业级搜索引擎Solr交流chuan liang
 
Что такое ASP.NET MVC?
Что такое ASP.NET MVC?Что такое ASP.NET MVC?
Что такое ASP.NET MVC?Dima Pasko
 
俄罗斯Gost标准,进出口购买商品目录№RG 3757
俄罗斯Gost标准,进出口购买商品目录№RG 3757俄罗斯Gost标准,进出口购买商品目录№RG 3757
俄罗斯Gost标准,进出口购买商品目录№RG 3757Turkmenistan Laws
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687Turkmenistan Laws
 
俄罗斯Gost标准,进出口购买商品目录№RG 3438
俄罗斯Gost标准,进出口购买商品目录№RG 3438俄罗斯Gost标准,进出口购买商品目录№RG 3438
俄罗斯Gost标准,进出口购买商品目录№RG 3438Turkmenistan Laws
 
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3Транслируем.бел
 
俄罗斯Gost标准,进出口购买商品目录№RG 3782
俄罗斯Gost标准,进出口购买商品目录№RG 3782俄罗斯Gost标准,进出口购买商品目录№RG 3782
俄罗斯Gost标准,进出口购买商品目录№RG 3782Turkmenistan Laws
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441Russian Gost
 

Tendances (20)

俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2681
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 1055
 
Minsk Jazz 190509 Templ
Minsk Jazz 190509 TemplMinsk Jazz 190509 Templ
Minsk Jazz 190509 Templ
 
Hasql in practice (Russian)
Hasql in practice (Russian)Hasql in practice (Russian)
Hasql in practice (Russian)
 
Основы работы с Memcached
Основы работы с MemcachedОсновы работы с Memcached
Основы работы с Memcached
 
Intro To RDBMS And SQL Server 2005 - Svetlin Nakov
Intro To RDBMS And SQL Server 2005 - Svetlin NakovIntro To RDBMS And SQL Server 2005 - Svetlin Nakov
Intro To RDBMS And SQL Server 2005 - Svetlin Nakov
 
Jazz – открытая платформа разработки ПО
Jazz – открытая платформа разработки ПОJazz – открытая платформа разработки ПО
Jazz – открытая платформа разработки ПО
 
Postgre Sql 8 4
Postgre Sql 8 4Postgre Sql 8 4
Postgre Sql 8 4
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech Main
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)
 
企业级搜索引擎Solr交流
企业级搜索引擎Solr交流企业级搜索引擎Solr交流
企业级搜索引擎Solr交流
 
Что такое ASP.NET MVC?
Что такое ASP.NET MVC?Что такое ASP.NET MVC?
Что такое ASP.NET MVC?
 
俄罗斯Gost标准,进出口购买商品目录№RG 3757
俄罗斯Gost标准,进出口购买商品目录№RG 3757俄罗斯Gost标准,进出口购买商品目录№RG 3757
俄罗斯Gost标准,进出口购买商品目录№RG 3757
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 2687
 
俄罗斯Gost标准,进出口购买商品目录№RG 3438
俄罗斯Gost标准,进出口购买商品目录№RG 3438俄罗斯Gost标准,进出口购买商品目录№RG 3438
俄罗斯Gost标准,进出口购买商品目录№RG 3438
 
Hiv
HivHiv
Hiv
 
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3
Bynet2.3 Microsoft. Mediacontent delivery using IIS7 and Silverlight3
 
俄罗斯Gost标准,进出口购买商品目录№RG 3782
俄罗斯Gost标准,进出口购买商品目录№RG 3782俄罗斯Gost标准,进出口购买商品目录№RG 3782
俄罗斯Gost标准,进出口购买商品目录№RG 3782
 
Strip
StripStrip
Strip
 
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441
俄罗斯进出口标准,技术规格,法律,法规,中英文,目录编号RG 441
 

En vedette

Вебклуб Perlgolf.ru
Вебклуб Perlgolf.ruВебклуб Perlgolf.ru
Вебклуб Perlgolf.rumayperl
 
Почему я программирую на Perl‎
Почему я программирую на Perl‎Почему я программирую на Perl‎
Почему я программирую на Perl‎Anatoly Sharifulin
 
‎Тестирование в проекте REG.RU‎
‎Тестирование в проекте REG.RU‎‎Тестирование в проекте REG.RU‎
‎Тестирование в проекте REG.RU‎mayperl
 
Browser sniffing в 21 веке‎
Browser sniffing в 21 веке‎Browser sniffing в 21 веке‎
Browser sniffing в 21 веке‎mayperl
 
Navigating Uncertainty when Launching New Ideas
Navigating Uncertainty when Launching New IdeasNavigating Uncertainty when Launching New Ideas
Navigating Uncertainty when Launching New Ideashopperomatic
 

En vedette (9)

Вебклуб Perlgolf.ru
Вебклуб Perlgolf.ruВебклуб Perlgolf.ru
Вебклуб Perlgolf.ru
 
Почему я программирую на Perl‎
Почему я программирую на Perl‎Почему я программирую на Perl‎
Почему я программирую на Perl‎
 
Selenium Perl
Selenium PerlSelenium Perl
Selenium Perl
 
‎Тестирование в проекте REG.RU‎
‎Тестирование в проекте REG.RU‎‎Тестирование в проекте REG.RU‎
‎Тестирование в проекте REG.RU‎
 
Unit Four
Unit FourUnit Four
Unit Four
 
Unit Five
Unit FiveUnit Five
Unit Five
 
Unit Seven
Unit SevenUnit Seven
Unit Seven
 
Browser sniffing в 21 веке‎
Browser sniffing в 21 веке‎Browser sniffing в 21 веке‎
Browser sniffing в 21 веке‎
 
Navigating Uncertainty when Launching New Ideas
Navigating Uncertainty when Launching New IdeasNavigating Uncertainty when Launching New Ideas
Navigating Uncertainty when Launching New Ideas
 

Similaire à Упаковка и развертывание программ на perl под debian‎

P2 P Mobile Advertising And Targeting
P2 P Mobile Advertising And TargetingP2 P Mobile Advertising And Targeting
P2 P Mobile Advertising And Targetingguest258f78a
 
Защо Ruby on Rails
Защо Ruby on RailsЗащо Ruby on Rails
Защо Ruby on RailsStefan Kanev
 
Groovy Vs Perl
Groovy Vs PerlGroovy Vs Perl
Groovy Vs Perlmayperl
 
Ведение документации в perl6: POD, да не тот !
Ведение документации в perl6: POD, да не тот !Ведение документации в perl6: POD, да не тот !
Ведение документации в perl6: POD, да не тот !mayperl
 
Paver For PyWorks 2008
Paver For PyWorks 2008Paver For PyWorks 2008
Paver For PyWorks 2008Kevin Dangoor
 
Perl в хэке и хэки в Perl
Perl в хэке и хэки в PerlPerl в хэке и хэки в Perl
Perl в хэке и хэки в Perlmayperl
 
bioinfolec_2nd_20070622
bioinfolec_2nd_20070622bioinfolec_2nd_20070622
bioinfolec_2nd_20070622sesejun
 
R57php 1231677414471772-2
R57php 1231677414471772-2R57php 1231677414471772-2
R57php 1231677414471772-2ady36
 
yusukebe in Yokohama.pm 090909
yusukebe in Yokohama.pm 090909yusukebe in Yokohama.pm 090909
yusukebe in Yokohama.pm 090909Yusuke Wada
 
HA+DRBD+Postgres - PostgresWest '08
HA+DRBD+Postgres - PostgresWest '08HA+DRBD+Postgres - PostgresWest '08
HA+DRBD+Postgres - PostgresWest '08Jesse Young
 
query optimization
query optimizationquery optimization
query optimizationDimara Hakim
 
421 Ch
421 Ch421 Ch
421 Chanjaan
 
За что мы ненавидим Drupal
За что мы ненавидим DrupalЗа что мы ненавидим Drupal
За что мы ненавидим DrupalDrupal Camp Kyiv
 

Similaire à Упаковка и развертывание программ на perl под debian‎ (20)

Why Ror
Why RorWhy Ror
Why Ror
 
P2 P Mobile Advertising And Targeting
P2 P Mobile Advertising And TargetingP2 P Mobile Advertising And Targeting
P2 P Mobile Advertising And Targeting
 
Защо Ruby on Rails
Защо Ruby on RailsЗащо Ruby on Rails
Защо Ruby on Rails
 
DevOps pasv public
DevOps pasv publicDevOps pasv public
DevOps pasv public
 
Groovy Vs Perl
Groovy Vs PerlGroovy Vs Perl
Groovy Vs Perl
 
Ведение документации в perl6: POD, да не тот !
Ведение документации в perl6: POD, да не тот !Ведение документации в perl6: POD, да не тот !
Ведение документации в perl6: POD, да не тот !
 
Paver For PyWorks 2008
Paver For PyWorks 2008Paver For PyWorks 2008
Paver For PyWorks 2008
 
XS Japan 2008 Xen Mgmt Japanese
XS Japan 2008 Xen Mgmt JapaneseXS Japan 2008 Xen Mgmt Japanese
XS Japan 2008 Xen Mgmt Japanese
 
Perl в хэке и хэки в Perl
Perl в хэке и хэки в PerlPerl в хэке и хэки в Perl
Perl в хэке и хэки в Perl
 
bioinfolec_2nd_20070622
bioinfolec_2nd_20070622bioinfolec_2nd_20070622
bioinfolec_2nd_20070622
 
OpenSPARC
OpenSPARCOpenSPARC
OpenSPARC
 
Capistrano2
Capistrano2Capistrano2
Capistrano2
 
Perl basics for Pentesters
Perl basics for PentestersPerl basics for Pentesters
Perl basics for Pentesters
 
R57php 1231677414471772-2
R57php 1231677414471772-2R57php 1231677414471772-2
R57php 1231677414471772-2
 
yusukebe in Yokohama.pm 090909
yusukebe in Yokohama.pm 090909yusukebe in Yokohama.pm 090909
yusukebe in Yokohama.pm 090909
 
HA+DRBD+Postgres - PostgresWest '08
HA+DRBD+Postgres - PostgresWest '08HA+DRBD+Postgres - PostgresWest '08
HA+DRBD+Postgres - PostgresWest '08
 
query optimization
query optimizationquery optimization
query optimization
 
421 Ch
421 Ch421 Ch
421 Ch
 
Cooking with Chef
Cooking with ChefCooking with Chef
Cooking with Chef
 
За что мы ненавидим Drupal
За что мы ненавидим DrupalЗа что мы ненавидим Drupal
За что мы ненавидим Drupal
 

Plus de mayperl

Use Perl like Perl
Use Perl like PerlUse Perl like Perl
Use Perl like Perlmayperl
 
Anyevent
AnyeventAnyevent
Anyeventmayperl
 
Perl + nginx = ♥‎
Perl + nginx = ♥‎Perl + nginx = ♥‎
Perl + nginx = ♥‎mayperl
 
А у нас Perl 6 в production :)
А у нас Perl 6 в production :)А у нас Perl 6 в production :)
А у нас Perl 6 в production :)mayperl
 
Что будет с Перлом?
Что будет с Перлом?Что будет с Перлом?
Что будет с Перлом?mayperl
 
Использование WebMoney в Perl‎
Использование WebMoney в Perl‎Использование WebMoney в Perl‎
Использование WebMoney в Perl‎mayperl
 
Работа с большими файлами под перлом‎
Работа с большими файлами под перлом‎Работа с большими файлами под перлом‎
Работа с большими файлами под перлом‎mayperl
 
Сравнение работы алгоритмов сортировки, реализованных на Perl
Сравнение работы алгоритмов сортировки, реализованных на PerlСравнение работы алгоритмов сортировки, реализованных на Perl
Сравнение работы алгоритмов сортировки, реализованных на Perlmayperl
 
Курс Perl в УрГУ
Курс Perl в УрГУКурс Perl в УрГУ
Курс Perl в УрГУmayperl
 
Making Your Own CPAN
Making Your Own CPANMaking Your Own CPAN
Making Your Own CPANmayperl
 
Распределенная обработка потоковых данных
Распределенная обработка потоковых данныхРаспределенная обработка потоковых данных
Распределенная обработка потоковых данныхmayperl
 
Написание DSL в Perl
Написание DSL в PerlНаписание DSL в Perl
Написание DSL в Perlmayperl
 
10.000 вариантов снять квартиру или сам себе POE-риелтор
10.000 вариантов снять квартиру или сам себе POE-риелтор10.000 вариантов снять квартиру или сам себе POE-риелтор
10.000 вариантов снять квартиру или сам себе POE-риелторmayperl
 

Plus de mayperl (13)

Use Perl like Perl
Use Perl like PerlUse Perl like Perl
Use Perl like Perl
 
Anyevent
AnyeventAnyevent
Anyevent
 
Perl + nginx = ♥‎
Perl + nginx = ♥‎Perl + nginx = ♥‎
Perl + nginx = ♥‎
 
А у нас Perl 6 в production :)
А у нас Perl 6 в production :)А у нас Perl 6 в production :)
А у нас Perl 6 в production :)
 
Что будет с Перлом?
Что будет с Перлом?Что будет с Перлом?
Что будет с Перлом?
 
Использование WebMoney в Perl‎
Использование WebMoney в Perl‎Использование WebMoney в Perl‎
Использование WebMoney в Perl‎
 
Работа с большими файлами под перлом‎
Работа с большими файлами под перлом‎Работа с большими файлами под перлом‎
Работа с большими файлами под перлом‎
 
Сравнение работы алгоритмов сортировки, реализованных на Perl
Сравнение работы алгоритмов сортировки, реализованных на PerlСравнение работы алгоритмов сортировки, реализованных на Perl
Сравнение работы алгоритмов сортировки, реализованных на Perl
 
Курс Perl в УрГУ
Курс Perl в УрГУКурс Perl в УрГУ
Курс Perl в УрГУ
 
Making Your Own CPAN
Making Your Own CPANMaking Your Own CPAN
Making Your Own CPAN
 
Распределенная обработка потоковых данных
Распределенная обработка потоковых данныхРаспределенная обработка потоковых данных
Распределенная обработка потоковых данных
 
Написание DSL в Perl
Написание DSL в PerlНаписание DSL в Perl
Написание DSL в Perl
 
10.000 вариантов снять квартиру или сам себе POE-риелтор
10.000 вариантов снять квартиру или сам себе POE-риелтор10.000 вариантов снять квартиру или сам себе POE-риелтор
10.000 вариантов снять квартиру или сам себе POE-риелтор
 

Dernier

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 

Dernier (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

Упаковка и развертывание программ на perl под debian‎