From mail на knutov.com Mon Mar 4 06:19:07 2013 From: mail на knutov.com (Nick Knutov) Date: Mon, 04 Mar 2013 20:19:07 +0600 Subject: [Moscow.pm] =?utf-8?b?c3luY21sLCDQs9GD0LPQu9C+LdC60LDQu9C10L0=?= =?utf-8?b?0LTQsNGA0Lg=?= Message-ID: <5134AD5B.8050602@knutov.com> Очень хочу syncml сервер на перле. Все проекты, которые нагугливаются, более мертвы, чем нет. Может быть кто-нибудь видел живой работающий экземляр? На карайний случай устроила бы реализация, умеющая только контакты. Заодним, каким модулем (и в каком формате) сейчас лучше читать и пушить обратно гугло-календари? И там в большей части форматов, похоже, нет возможности залить кусок календаря на сервер, а хотелось бы иметь возможность создать отдельное событие и залить на сервер только его, не получая с сервера календарь целиком. -- Best Regards, Nick Knutov http://knutov.com ICQ: 272873706 Voice: +7-904-84-23-130 From ali на ali.org.ua Mon Mar 4 07:59:12 2013 From: ali на ali.org.ua (Oleg Alistratov) Date: Mon, 04 Mar 2013 17:59:12 +0200 Subject: [Moscow.pm] =?koi8-r?b?c3luY21sLCDH1cfMzy3LwczFzsTB0sk=?= In-Reply-To: <5134AD5B.8050602@knutov.com> References: <5134AD5B.8050602@knutov.com> Message-ID: <3023771362412752@web2d.yandex.ru> Я его (SyncML) делал года 4 назад. Это лютый пипец. Сервер-то как раз сделать не проблема. Проблемы: модули для работы с бинарым XML и WBXML в частности плохи и неустойчивы. У каждого клиента почему-то своя, понимаемая только им версия бинарного XML, документация отсутствует, для каждого телефона / операционки нужно методом тыка подбирать, как он хотя бы vcard формирует. Задача для меня одного оказалась неподъемная. Я ее по-прежнему хочу, но в одиночку не потяну. 04.03.2013, 16:19, "Nick Knutov" : > Очень хочу syncml сервер на перле. Все проекты, которые нагугливаются, > более мертвы, чем нет. Может быть кто-нибудь видел живой работающий > экземляр? На карайний случай устроила бы реализация, умеющая только > контакты. > > Заодним, каким модулем (и в каком формате) сейчас лучше читать и пушить > обратно гугло-календари? И там в большей части форматов, похоже, нет > возможности залить кусок календаря на сервер, а хотелось бы иметь > возможность создать отдельное событие и залить на сервер только его, не > получая с сервера календарь целиком. > > -- > Best Regards, > Nick Knutov > http://knutov.com > ICQ: 272873706 > Voice: +7-904-84-23-130 > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Oleg Alistratov From mail на knutov.com Mon Mar 4 09:47:01 2013 From: mail на knutov.com (Nick Knutov) Date: Mon, 04 Mar 2013 23:47:01 +0600 Subject: [Moscow.pm] =?koi8-r?b?c3luY21sLCDH1cfMzy3LwczFzsTB0sk=?= In-Reply-To: <3023771362412752@web2d.yandex.ru> References: <5134AD5B.8050602@knutov.com> <3023771362412752@web2d.yandex.ru> Message-ID: <5134DE15.7020007@knutov.com> Эх, я вот тоже думал, что неспроста эта хорошая идея не использовалась массово на практике. Когда меня последний раз сильно припёрло (тоже года четыре, наверное, назад) - мы подняли сервер на Funambol. Но это неуправляемый монстр и к тому же ява и дальше, чем для бекапов, его использовать не получается. С ним, кстати, проблем с контактами не было ни у одного из клиентов, вроде. Хотя календари с сониэриками синкались как-то очень странно, а todo листы не синкались вообще. Тогда вопрос встаёт по-другому - есть гугловские аккаунты, надо иметь возможность из перловых клиентов читать/писать/искать контакты и календари, причем в календарях очень желательно иметь возможность создавать события не читая всего календаря. Без разницы по какому протоколу. Какими модулями это можно сделать? 04.03.2013 21:59, Oleg Alistratov пишет: > Я его (SyncML) делал года 4 назад. Это лютый пипец. > Сервер-то как раз сделать не проблема. > > Проблемы: модули для работы с бинарым XML и WBXML в частности плохи и неустойчивы. > У каждого клиента почему-то своя, понимаемая только им версия бинарного XML, > документация отсутствует, для каждого телефона / операционки нужно методом тыка подбирать, > как он хотя бы vcard формирует. > > Задача для меня одного оказалась неподъемная. Я ее по-прежнему хочу, но в одиночку не потяну. -- Best Regards, Nick Knutov http://knutov.com ICQ: 272873706 Voice: +7-904-84-23-130 From ali на ali.org.ua Mon Mar 4 10:18:53 2013 From: ali на ali.org.ua (Oleg Alistratov) Date: Mon, 04 Mar 2013 20:18:53 +0200 Subject: [Moscow.pm] =?koi8-r?b?c3luY21sLCDH1cfMzy3LwczFzsTB0sk=?= In-Reply-To: <5134DE15.7020007@knutov.com> References: <5134AD5B.8050602@knutov.com> <3023771362412752@web2d.yandex.ru> <5134DE15.7020007@knutov.com> Message-ID: <1020211362421133@web18g.yandex.ru> Ну, сипан говорит, что у него есть https://metacpan.org/module/Cal::DAV А вот CardDav не обнаружен, зато есть https://metacpan.org/module/WWW::Contact::GoogleContactsAPI https://metacpan.org/module/MERIXZON/WWW-Google-Contacts-0.35/lib/WWW/Google/Contacts/ContactList.pm https://metacpan.org/module/WebService::Google::Contact Что там к чему ? не пробовал. 04.03.2013, 19:47, "Nick Knutov" : > Эх, я вот тоже думал, что неспроста эта хорошая идея не использовалась > массово на практике. > > Когда меня последний раз сильно припёрло (тоже года четыре, наверное, > назад) - мы подняли сервер на Funambol. Но это неуправляемый монстр и к > тому же ява и дальше, чем для бекапов, его использовать не получается. С > ним, кстати, проблем с контактами не было ни у одного из клиентов, > вроде. Хотя календари с сониэриками синкались как-то очень странно, а > todo листы не синкались вообще. > > Тогда вопрос встаёт по-другому - есть гугловские аккаунты, надо иметь > возможность из перловых клиентов читать/писать/искать контакты и > календари, причем в календарях очень желательно иметь возможность > создавать события не читая всего календаря. Без разницы по какому > протоколу. Какими модулями это можно сделать? > > 04.03.2013 21:59, Oleg Alistratov пишет: > >>  Я его (SyncML) делал года 4 назад. Это лютый пипец. >>  Сервер-то как раз сделать не проблема. >> >>  Проблемы: модули для работы с бинарым XML и WBXML в частности плохи и неустойчивы. >>  У каждого клиента почему-то своя, понимаемая только им версия бинарного XML, >>  документация отсутствует, для каждого телефона / операционки нужно методом тыка подбирать, >>  как он хотя бы vcard формирует. >> >>  Задача для меня одного оказалась неподъемная. Я ее по-прежнему хочу, но в одиночку не потяну. > > -- > Best Regards, > Nick Knutov > http://knutov.com > ICQ: 272873706 > Voice: +7-904-84-23-130 > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Oleg Alistratov From andy на shitov.ru Mon Mar 4 14:09:13 2013 From: andy на shitov.ru (Andrew Shitov) Date: Mon, 4 Mar 2013 23:09:13 +0100 Subject: [Moscow.pm] =?utf-8?q?Fwd=3A_=5BKiev-pm=5D_Pragmatic_Perl=2E_?= =?utf-8?b?0JLRi9C/0YPRgdC6IDE=?= In-Reply-To: <5134BB88.6080301@gmail.com> References: <5134BB88.6080301@gmail.com> Message-ID: ---------- Forwarded message ---------- From: vti Date: 2013/3/4 Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 To: "Kiev.pm group" Друзья! Представляю вам первый выпуск русскоязычного журнала о Perl http://pragmaticperl.com В этом номере: - Возрождение Perl - YAPC::Europe 2013 ?Future Perl? - Moo ? современный минимальный ООП-фреймворк - Dancer2 ? Революция - Padre IDE. В шаге от релиза 1.0 - Всё, что вы хотели знать об AnyEvent, но боялись спросить - Что нового в Perl 5.17.9 - Обзор CPAN за февраль 2013 г. - Интервью с Tatsuhiko Miyagawa - Perl Quiz Читайте, критикуйте, комментируйте! -- vti _______________________________________________ Kiev-pm mailing list Kiev-pm на pm.org http://mail.pm.org/mailman/listinfo/kiev-pm -- Andrew Shitov ______________________________________________________________________ andy на shitov.ru | http://shitov.ru From worldmind на mail.ru Mon Mar 4 21:19:35 2013 From: worldmind на mail.ru (=?UTF-8?B?QWxleGV5IFNocnVi?=) Date: Tue, 05 Mar 2013 09:19:35 +0400 Subject: [Moscow.pm] =?utf-8?q?Fwd=3A_=5BKiev-pm=5D_Pragmatic_Perl=2E_?= =?utf-8?b?0JLRi9C/0YPRgdC6IDE=?= References: <5134BB88.6080301@gmail.com> Message-ID: <1362460775.145492777@f267.mail.ru> Мне выпуск понравился, темы интересные, изложение нормальное Понедельник, 4 марта 2013, 23:09 +01:00 от Andrew Shitov : >---------- Forwarded message ---------- >From: vti < viacheslav.t на gmail.com > >Date: 2013/3/4 >Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 >To: "Kiev.pm group" < kiev-pm на pm.org > > > >Друзья! > >Представляю вам первый выпуск русскоязычного журнала о Perl >http://pragmaticperl.com > >В этом номере: >- Возрождение Perl >- YAPC::Europe 2013 ?Future Perl? >- Moo ? современный минимальный ООП-фреймворк >- Dancer2 ? Революция >- Padre IDE. В шаге от релиза 1.0 >- Всё, что вы хотели знать об AnyEvent, но боялись спросить >- Что нового в Perl 5.17.9 >- Обзор CPAN за февраль 2013 г. >- Интервью с Tatsuhiko Miyagawa >- Perl Quiz > >Читайте, критикуйте, комментируйте! > >-- >vti >_______________________________________________ >Kiev-pm mailing list >Kiev-pm на pm.org >http://mail.pm.org/mailman/listinfo/kiev-pm > > >-- >Andrew Shitov >______________________________________________________________________ >andy на shitov.ru | http://shitov.ru >-- >Moscow.pm mailing list >moscow-pm на pm.org | http://moscow.pm.org -- Alexey Shrub ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From todmst на gmail.com Mon Mar 4 22:04:34 2013 From: todmst на gmail.com (Dmitry Starikovsky) Date: Tue, 5 Mar 2013 09:04:34 +0300 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= In-Reply-To: <1362460775.145492777@f267.mail.ru> References: <5134BB88.6080301@gmail.com> <1362460775.145492777@f267.mail.ru> Message-ID: Журнал понравился, особенно про ООП фрэймворки. Обзоры такого формата выручают, когда в зоопарке модулей со сходной функциональностью нужно выбрать подходящее что то. 5 марта 2013 г., 8:19 пользователь Alexey Shrub написал: > Мне выпуск понравился, темы интересные, изложение нормальное > > > Понедельник, 4 марта 2013, 23:09 +01:00 от Andrew Shitov : > > ---------- Forwarded message ---------- > From: vti > > > Date: 2013/3/4 > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 > To: "Kiev.pm group" > > > > > Друзья! > > Представляю вам первый выпуск русскоязычного журнала о Perl > http://pragmaticperl.com > > В этом номере: > - Возрождение Perl > - YAPC::Europe 2013 <> > - Moo -- современный минимальный ООП-фреймворк > - Dancer2 -- Революция > - Padre IDE. В шаге от релиза 1.0 > - Всё, что вы хотели знать об AnyEvent, но боялись спросить > - Что нового в Perl 5.17.9 > - Обзор CPAN за февраль 2013 г. > - Интервью с Tatsuhiko Miyagawa > - Perl Quiz > > Читайте, критикуйте, комментируйте! > > -- > vti > _______________________________________________ > Kiev-pm mailing list > Kiev-pm на pm.org > http://mail.pm.org/mailman/listinfo/kiev-pm > > > -- > Andrew Shitov > ______________________________________________________________________ > andy на shitov.ru| > http://shitov.ru > -- > Moscow.pm mailing list > moscow-pm на pm.org| > http://moscow.pm.org > > > > -- > Alexey Shrub > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From shatlovsky на gmail.com Mon Mar 4 22:44:15 2013 From: shatlovsky на gmail.com (Alex Shatlovsky) Date: Tue, 5 Mar 2013 10:44:15 +0400 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= In-Reply-To: References: <5134BB88.6080301@gmail.com> Message-ID: Отличный журнал, большое спасибо авторам! 5 марта 2013 г., 2:09 пользователь Andrew Shitov написал: > ---------- Forwarded message ---------- > From: vti > Date: 2013/3/4 > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 > To: "Kiev.pm group" > > > Друзья! > > Представляю вам первый выпуск русскоязычного журнала о Perl > http://pragmaticperl.com > > В этом номере: > - Возрождение Perl > - YAPC::Europe 2013 <> > - Moo -- современный минимальный ООП-фреймворк > - Dancer2 -- Революция > - Padre IDE. В шаге от релиза 1.0 > - Всё, что вы хотели знать об AnyEvent, но боялись спросить > - Что нового в Perl 5.17.9 > - Обзор CPAN за февраль 2013 г. > - Интервью с Tatsuhiko Miyagawa > - Perl Quiz > > Читайте, критикуйте, комментируйте! > > -- > vti > _______________________________________________ > Kiev-pm mailing list > Kiev-pm на pm.org > http://mail.pm.org/mailman/listinfo/kiev-pm > > > -- > Andrew Shitov > ______________________________________________________________________ > andy на shitov.ru | http://shitov.ru > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Алекс From shafiev на gmail.com Mon Mar 4 23:16:42 2013 From: shafiev на gmail.com (Naim Shafiev) Date: Tue, 5 Mar 2013 11:16:42 +0400 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= In-Reply-To: References: <5134BB88.6080301@gmail.com> Message-ID: неплохо. Начал читать и очень рад, что и в этом направлении есть подвижки. 5 марта 2013 г., 10:44 пользователь Alex Shatlovsky написал: > Отличный журнал, большое спасибо авторам! > > 5 марта 2013 г., 2:09 пользователь Andrew Shitov написал: > > ---------- Forwarded message ---------- > > From: vti > > Date: 2013/3/4 > > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 > > To: "Kiev.pm group" > > > > > > Друзья! > > > > Представляю вам первый выпуск русскоязычного журнала о Perl > > http://pragmaticperl.com > > > > В этом номере: > > - Возрождение Perl > > - YAPC::Europe 2013 <> > > - Moo -- современный минимальный ООП-фреймворк > > - Dancer2 -- Революция > > - Padre IDE. В шаге от релиза 1.0 > > - Всё, что вы хотели знать об AnyEvent, но боялись спросить > > - Что нового в Perl 5.17.9 > > - Обзор CPAN за февраль 2013 г. > > - Интервью с Tatsuhiko Miyagawa > > - Perl Quiz > > > > Читайте, критикуйте, комментируйте! > > > > -- > > vti > > _______________________________________________ > > Kiev-pm mailing list > > Kiev-pm на pm.org > > http://mail.pm.org/mailman/listinfo/kiev-pm > > > > > > -- > > Andrew Shitov > > ______________________________________________________________________ > > andy на shitov.ru | http://shitov.ru > > -- > > Moscow.pm mailing list > > moscow-pm на pm.org | http://moscow.pm.org > > > > -- > Алекс > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From zhuravlev.artem.vasilyevich на gmail.com Mon Mar 4 23:51:41 2013 From: zhuravlev.artem.vasilyevich на gmail.com (Artem Zhuravlev) Date: Tue, 5 Mar 2013 10:51:41 +0300 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= In-Reply-To: References: <5134BB88.6080301@gmail.com> Message-ID: Спасибо. 5 марта 2013 г., 11:16 пользователь Naim Shafiev написал: > неплохо. > Начал читать и очень рад, что и в этом направлении есть подвижки. > > 5 марта 2013 г., 10:44 пользователь Alex Shatlovsky написал: > > Отличный журнал, большое спасибо авторам! >> >> 5 марта 2013 г., 2:09 пользователь Andrew Shitov >> написал: >> > ---------- Forwarded message ---------- >> > From: vti >> > Date: 2013/3/4 >> > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 >> > To: "Kiev.pm group" >> > >> > >> > Друзья! >> > >> > Представляю вам первый выпуск русскоязычного журнала о Perl >> > http://pragmaticperl.com >> > >> > В этом номере: >> > - Возрождение Perl >> > - YAPC::Europe 2013 <> >> > - Moo -- современный минимальный ООП-фреймворк >> > - Dancer2 -- Революция >> > - Padre IDE. В шаге от релиза 1.0 >> > - Всё, что вы хотели знать об AnyEvent, но боялись спросить >> > - Что нового в Perl 5.17.9 >> > - Обзор CPAN за февраль 2013 г. >> > - Интервью с Tatsuhiko Miyagawa >> > - Perl Quiz >> > >> > Читайте, критикуйте, комментируйте! >> > >> > -- >> > vti >> > _______________________________________________ >> > Kiev-pm mailing list >> > Kiev-pm на pm.org >> > http://mail.pm.org/mailman/listinfo/kiev-pm >> > >> > >> > -- >> > Andrew Shitov >> > ______________________________________________________________________ >> > andy на shitov.ru | http://shitov.ru >> > -- >> > Moscow.pm mailing list >> > moscow-pm на pm.org | http://moscow.pm.org >> >> >> >> -- >> Алекс >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From somerandomlogin на gmail.com Tue Mar 5 00:26:40 2013 From: somerandomlogin на gmail.com (Jack of Shadows) Date: Tue, 5 Mar 2013 12:26:40 +0400 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= In-Reply-To: References: <5134BB88.6080301@gmail.com> Message-ID: Запостьте кто-нибудь на Хабр, что ли. 2013/3/5 Artem Zhuravlev : > Спасибо. > > 5 марта 2013 г., 11:16 пользователь Naim Shafiev > написал: > >> неплохо. >> Начал читать и очень рад, что и в этом направлении есть подвижки. >> >> 5 марта 2013 г., 10:44 пользователь Alex Shatlovsky >> написал: >> >>> Отличный журнал, большое спасибо авторам! >>> >>> 5 марта 2013 г., 2:09 пользователь Andrew Shitov >>> написал: >>> > ---------- Forwarded message ---------- >>> > From: vti >>> > Date: 2013/3/4 >>> > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 >>> > To: "Kiev.pm group" >>> > >>> > >>> > Друзья! >>> > >>> > Представляю вам первый выпуск русскоязычного журнала о Perl >>> > http://pragmaticperl.com >>> > >>> > В этом номере: >>> > - Возрождение Perl >>> > - YAPC::Europe 2013 <> >>> > - Moo -- современный минимальный ООП-фреймворк >>> > - Dancer2 -- Революция >>> > - Padre IDE. В шаге от релиза 1.0 >>> > - Всё, что вы хотели знать об AnyEvent, но боялись спросить >>> > - Что нового в Perl 5.17.9 >>> > - Обзор CPAN за февраль 2013 г. >>> > - Интервью с Tatsuhiko Miyagawa >>> > - Perl Quiz >>> > >>> > Читайте, критикуйте, комментируйте! >>> > >>> > -- >>> > vti >>> > _______________________________________________ >>> > Kiev-pm mailing list >>> > Kiev-pm на pm.org >>> > http://mail.pm.org/mailman/listinfo/kiev-pm >>> > >>> > >>> > -- >>> > Andrew Shitov >>> > ______________________________________________________________________ >>> > andy на shitov.ru | http://shitov.ru >>> > -- >>> > Moscow.pm mailing list >>> > moscow-pm на pm.org | http://moscow.pm.org >>> >>> >>> >>> -- >>> Алекс >>> -- >>> Moscow.pm mailing list >>> moscow-pm на pm.org | http://moscow.pm.org >> >> >> >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > From worldmind на mail.ru Tue Mar 5 00:30:29 2013 From: worldmind на mail.ru (=?UTF-8?B?QWxleGV5IFNocnVi?=) Date: Tue, 05 Mar 2013 12:30:29 +0400 Subject: [Moscow.pm] =?utf-8?q?Fwd=3A_=5BKiev-pm=5D_Pragmatic_Perl=2E_?= =?utf-8?b?0JLRi9C/0YPRgdC6IDE=?= References: <5134BB88.6080301@gmail.com> Message-ID: <1362472229.548843943@f156.mail.ru> Вполне логично, Андрей? Вторник, 5 марта 2013, 12:26 +04:00 от Jack of Shadows : >Запостьте кто-нибудь на Хабр, что ли. > >2013/3/5 Artem Zhuravlev < zhuravlev.artem.vasilyevich на gmail.com >: >> Спасибо. >> >> 5 марта 2013 г., 11:16 пользователь Naim Shafiev < shafiev на gmail.com > >> написал: >> >>> неплохо. >>> Начал читать и очень рад, что и в этом направлении есть подвижки. >>> >>> 5 марта 2013 г., 10:44 пользователь Alex Shatlovsky < shatlovsky на gmail.com > >>> написал: >>> >>>> Отличный журнал, большое спасибо авторам! >>>> >>>> 5 марта 2013 г., 2:09 пользователь Andrew Shitov < andy на shitov.ru > >>>> написал: >>>> > ---------- Forwarded message ---------- >>>> > From: vti < viacheslav.t на gmail.com > >>>> > Date: 2013/3/4 >>>> > Subject: [Kiev-pm] Pragmatic Perl. Выпуск 1 >>>> > To: "Kiev.pm group" < kiev-pm на pm.org > >>>> > >>>> > >>>> > Друзья! >>>> > >>>> > Представляю вам первый выпуск русскоязычного журнала о Perl >>>> > http://pragmaticperl.com >>>> > >>>> > В этом номере: >>>> > - Возрождение Perl >>>> > - YAPC::Europe 2013 <> >>>> > - Moo -- современный минимальный ООП-фреймворк >>>> > - Dancer2 -- Революция >>>> > - Padre IDE. В шаге от релиза 1.0 >>>> > - Всё, что вы хотели знать об AnyEvent, но боялись спросить >>>> > - Что нового в Perl 5.17.9 >>>> > - Обзор CPAN за февраль 2013 г. >>>> > - Интервью с Tatsuhiko Miyagawa >>>> > - Perl Quiz >>>> > >>>> > Читайте, критикуйте, комментируйте! >>>> > >>>> > -- >>>> > vti >>>> > _______________________________________________ >>>> > Kiev-pm mailing list >>>> > Kiev-pm на pm.org >>>> > http://mail.pm.org/mailman/listinfo/kiev-pm >>>> > >>>> > >>>> > -- >>>> > Andrew Shitov >>>> > ______________________________________________________________________ >>>> > andy на shitov.ru | http://shitov.ru >>>> > -- >>>> > Moscow.pm mailing list >>>> > moscow-pm на pm.org | http://moscow.pm.org >>>> >>>> >>>> >>>> -- >>>> Алекс >>>> -- >>>> Moscow.pm mailing list >>>> moscow-pm на pm.org | http://moscow.pm.org >>> >>> >>> >>> -- >>> Moscow.pm mailing list >>> moscow-pm на pm.org | http://moscow.pm.org >>> >> >> >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> >-- >Moscow.pm mailing list >moscow-pm на pm.org | http://moscow.pm.org -- Alexey Shrub ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From pavel на kuptsov.info Tue Mar 5 03:50:01 2013 From: pavel на kuptsov.info (Pavel Kuptsov) Date: Tue, 5 Mar 2013 15:50:01 +0400 Subject: [Moscow.pm] =?koi8-r?b?RndkOiBbS2lldi1wbV0gUHJhZ21hdGljIFBlcmwu?= =?koi8-r?b?IPfZ0NXTyyAx?= Message-ID: > Конец Дайджест списка рассылки Moscow-pm; том 65, выпуск 3 > ********************************************************** > Спасибо - замечательный журнал. Только смутил вопрос из викторины о кол-ве подписчиков PJ из Украины :))). --- Павел ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Thu Mar 7 06:37:13 2013 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 07 Mar 2013 17:37:13 +0300 Subject: [Moscow.pm] AnyEvent::HTTP::Server In-Reply-To: References: Message-ID: <5138A619.4090706@mail.ru> Привет, 22.01.2013 19:13, Mons Anderson пишет: > Принимайте: > https://github.com/Mons/AnyEvent-HTTP-Server-II > Скоро будет на CPAN. ну как там с тестированием в продакшене и выкаткой на cpan? -- Alexey Shrub From i.petro.77.00 на gmail.com Mon Mar 11 04:10:30 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Mon, 11 Mar 2013 15:10:30 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDRgdC0?= =?utf-8?b?0LXQu9Cw0YLRjCBleGl0PyAoc3lzdGVtIGluIChnbG9iYWwpP0RFU1RS?= =?utf-8?b?T1kp?= Message-ID: <20130311111030.GN28320@vdsl.uvw.ru> есть некий код - обертка над консольным приложением (вообще все это в тестах происходит) то есть обертка запускает консольку и помнит ее pid (общается с ней по сокету), а деструктор делает нечто вроде следующего sub DESTROY { my ($self) = @_; kill KILL => $self->{child}; waitpid $self->{child}, 0; rmtree $self->{tempdir}; } ну и все работало нормально. Далее, поскольку консолька пускается во временной директории, то решили добавить еще снятие бактрейса если консолька грохается в сегфолт. сваяли нечто вроде следующего: sub DESTROY { my ($self) = @_; if (-r $self->{core}) [ system "echo bt|gdb $self->{path} $self->{core}"; } kill KILL => $self->{child} if $self->{child}; waitpid $self->{child}, 0; rmtree $self->{tempdir}; } и вот такой код приводит к тому что в пакете main такой вот код: exit 123; приводит к тому что приложение всегда возвращает 0 если был вызов system. вопрос: где баг и как правильно сделать? From khedin на gmail.com Mon Mar 11 04:18:30 2013 From: khedin на gmail.com (Konstantin S. Uvarin) Date: Mon, 11 Mar 2013 15:18:30 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDRgdC0?= =?utf-8?b?0LXQu9Cw0YLRjCBleGl0PyAoc3lzdGVtIGluIChnbG9iYWwpP0RFU1RST1kp?= In-Reply-To: <20130311111030.GN28320@vdsl.uvw.ru> References: <20130311111030.GN28320@vdsl.uvw.ru> Message-ID: <201303111518.30657.khedin@gmail.com> Приветствую! > есть некий код - обертка над консольным приложением (вообще все это в > тестах происходит) > > > то есть обертка запускает консольку и помнит ее pid (общается с ней по > сокету), а деструктор делает нечто вроде следующего > > sub DESTROY { > my ($self) = @_; > kill KILL => $self->{child}; > waitpid $self->{child}, 0; > rmtree $self->{tempdir}; > } > > > > > ну и все работало нормально. > > Далее, поскольку консолька пускается во временной директории, то > решили добавить еще снятие бактрейса если консолька грохается в > сегфолт. сваяли нечто вроде следующего: > > > sub DESTROY { > my ($self) = @_; > if (-r $self->{core}) [ > system "echo bt|gdb $self->{path} $self->{core}"; > } > > kill KILL => $self->{child} if $self->{child}; > waitpid $self->{child}, 0; > rmtree $self->{tempdir}; > } > > и вот такой код приводит к тому что в пакете main такой вот код: > > exit 123; > > приводит к тому что приложение всегда возвращает 0 если был вызов > system. > > вопрос: где баг и как правильно сделать? Проблема в глобальности $?. local $? в деструкторе должно помочь. Проверял только с END { }, но вроде бы так же должно работать (у меня была похожая штука именно в DESTROY и тоже с удалением временной директории). -bash$ perl -we 'exit 123; END { system "true" }' ; echo $? 0 -bash$ perl -we 'exit 123; END { local $?; system "true" }' ; echo $? 123 -- WBR, Konstantin S. Uvarin From khedin на gmail.com Mon Mar 11 04:27:22 2013 From: khedin на gmail.com (Konstantin S. Uvarin) Date: Mon, 11 Mar 2013 15:27:22 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDRgdC0?= =?utf-8?b?0LXQu9Cw0YLRjCBleGl0PyAoc3lzdGVtIGluIChnbG9iYWwpP0RFU1RST1kp?= In-Reply-To: <201303111518.30657.khedin@gmail.com> References: <20130311111030.GN28320@vdsl.uvw.ru> <201303111518.30657.khedin@gmail.com> Message-ID: <201303111527.22617.khedin@gmail.com> Приветствую! > Приветствую! > > > есть некий код - обертка над консольным приложением (вообще все это в > > тестах происходит) > > > > > > то есть обертка запускает консольку и помнит ее pid (общается с ней по > > сокету), а деструктор делает нечто вроде следующего > > > > sub DESTROY { > > my ($self) = @_; > > kill KILL => $self->{child}; > > waitpid $self->{child}, 0; > > rmtree $self->{tempdir}; > > } > > > > > > > > > > ну и все работало нормально. > > > > Далее, поскольку консолька пускается во временной директории, то > > решили добавить еще снятие бактрейса если консолька грохается в > > сегфолт. сваяли нечто вроде следующего: > > > > > > sub DESTROY { > > my ($self) = @_; > > if (-r $self->{core}) [ > > system "echo bt|gdb $self->{path} $self->{core}"; > > } > > > > kill KILL => $self->{child} if $self->{child}; > > waitpid $self->{child}, 0; > > rmtree $self->{tempdir}; > > } > > > > и вот такой код приводит к тому что в пакете main такой вот код: > > > > exit 123; > > > > приводит к тому что приложение всегда возвращает 0 если был вызов > > system. > > > > вопрос: где баг и как правильно сделать? > > Проблема в глобальности $?. local $? в деструкторе должно помочь. > > Проверял только с END { }, но вроде бы так же должно работать (у меня была > похожая штука именно в DESTROY и тоже с удалением временной директории). > > -bash$ perl -we 'exit 123; END { system "true" }' ; echo $? > 0 > -bash$ perl -we 'exit 123; END { local $?; system "true" }' ; echo $? > 123 Собственно, тот же пример, но с деструктором. -bash$ perl -we 'my $foo = bless {}, "Foo"; exit 123; package Foo; DESTROY { system "true" }' ; echo $? 0 -bash$ perl -we 'my $foo = bless {}, "Foo"; exit 123; package Foo; DESTROY { local $?; system "true" }' ; echo $? 123 К сожалению, не могу найти первоисточник, где было более чётко изложено. -- WBR, Konstantin S. Uvarin From i.petro.77.00 на gmail.com Mon Mar 11 04:29:54 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Mon, 11 Mar 2013 15:29:54 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDRgdC0?= =?utf-8?b?0LXQu9Cw0YLRjCBleGl0PyAoc3lzdGVtIGluIChnbG9iYWwpP0RFU1RS?= =?utf-8?b?T1kp?= In-Reply-To: <201303111518.30657.khedin@gmail.com> References: <20130311111030.GN28320@vdsl.uvw.ru> <201303111518.30657.khedin@gmail.com> Message-ID: <20130311112954.GO28320@vdsl.uvw.ru> >> вопрос: где баг и как правильно сделать? > Проблема в глобальности $?. local $? в деструкторе должно помочь. спасибо сейчас попробую. чет самому в голову не пришло From an.gorohovski на gmail.com Tue Mar 12 13:44:12 2013 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Tue, 12 Mar 2013 22:44:12 +0200 Subject: [Moscow.pm] =?utf-8?b?0YfRgtC10L3QuNC1INC90LXQvtCx0YDQsNCx0L4=?= =?utf-8?b?0YLQsNC90L3Ri9GFIFBPU1Qt0LTQsNC90L3Ri9GF?= Message-ID: Уважаемое сообщество, Доброго времени суток! Может кто-нибудь знает, подскажите пожалуйста: Как в web perl-скрипте реализовать чтение необработанных POST-данных, подобно тому как это делается в PHP через ('php://input'), например, Спасибо, ANG From mons на cpan.org Tue Mar 12 15:48:17 2013 From: mons на cpan.org (Mons Anderson) Date: Wed, 13 Mar 2013 02:48:17 +0400 Subject: [Moscow.pm] =?utf-8?b?0YfRgtC10L3QuNC1INC90LXQvtCx0YDQsNCx0L4=?= =?utf-8?b?0YLQsNC90L3Ri9GFIFBPU1Qt0LTQsNC90L3Ri9GF?= In-Reply-To: References: Message-ID: Для начала нужно определить в каком окружении это запускается. если я правильно предполагаю и это cgi скрипт, то raw-post данные это просто #!/usr/bin/env perl my $data = do { local $/; }; print "Content-Type: text/plain\n\n"; print "Got your data:\n"; print $data; 2013/3/13 Alessandro Gorohovski > Уважаемое сообщество, > Доброго времени суток! > > Может кто-нибудь знает, подскажите пожалуйста: > > Как в web perl-скрипте реализовать чтение > необработанных POST-данных, подобно тому как это > делается в PHP через ('php://input'), например, > > # Get the raw POST data: > $data = file_get_contents('php://**input'); > ?> > > Спасибо, ANG > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Best wishes, Vladimir V. Perepelitsa aka Mons Anderson , http://github.com/Mons ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Wed Mar 13 00:22:47 2013 From: worldmind на mail.ru (=?UTF-8?B?QWxleGV5IFNocnVi?=) Date: Wed, 13 Mar 2013 11:22:47 +0400 Subject: [Moscow.pm] =?utf-8?b?0YfRgtC10L3QuNC1INC90LXQvtCx0YDQsNCx0L4=?= =?utf-8?b?0YLQsNC90L3Ri9GFIFBPU1Qt0LTQsNC90L3Ri9GF?= In-Reply-To: References: Message-ID: <1363159367.90977122@f91.mail.ru> У модуля CGI::Minimal есть метод raw Вторник, 12 марта 2013, 22:44 +02:00 от "Alessandro Gorohovski" : >Уважаемое сообщество, >Доброго времени суток! > >Может кто-нибудь знает, подскажите пожалуйста: > >Как в web perl-скрипте реализовать чтение >необработанных POST-данных, подобно тому как это >делается в PHP через ('php://input'), например, > >     # Get the raw POST data: >     $data = file_get_contents('php://input'); >?> > >Спасибо, ANG >-- >Moscow.pm mailing list >moscow-pm на pm.org | http://moscow.pm.org -- Alexey Shrub ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Wed Mar 13 00:32:00 2013 From: worldmind на mail.ru (=?UTF-8?B?QWxleGV5IFNocnVi?=) Date: Wed, 13 Mar 2013 11:32:00 +0400 Subject: [Moscow.pm] =?utf-8?q?use_fields_=D0=B8_JSON=3A=3AXS?= Message-ID: <1363159920.959513104@f91.mail.ru> Привет всем, use fields и JSON::XS не дружат друг с другом и у Лемана руки всё никак не дойдут пофиксить это - хочет сделать правильно, в итоге пока не сделал никак На гитхабе есть версия модуля https://github.com/chipdude/json-xs с исправлением https://github.com/chipdude/json-xs/commit/5072061ae670db645af09176a7fc42deac7298f7 видимо не столь красивым, но как понимаю работающим. Кто-нибудь пользовался? -- Alexey Shrub ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From sharifulin на gmail.com Wed Mar 13 02:38:46 2013 From: sharifulin на gmail.com (=?KOI8-R?B?4c7B1M/Mycog+8HSycbVzMnO?=) Date: Wed, 13 Mar 2013 13:38:46 +0400 Subject: [Moscow.pm] =?koi8-r?b?6yDOwc0g0NLJxcjBzCDvzMXHIOHMydPU0sHUz9c=?= Message-ID: Привет, Moscow.pm. К нам в гости приехал Олег Алистратов, руководитель группы в киевском Яндексе. http://ali2.moikrug.ru Если есть желание пообщаться, то приходите в четверг (14.03) в 21:00 Molly Gwinns на Красной Пресне. http://www.afisha.ru/msk/restaurant/15070/ ЗЫ: внеочередной оффлайн Moscow.pm, так сказать Beer.pm :-) -- С уважением, Анатолий Шарифулин. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Wed Mar 13 09:27:31 2013 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Wed, 13 Mar 2013 18:27:31 +0200 Subject: [Moscow.pm] =?utf-8?b?0YfRgtC10L3QuNC1INC90LXQvtCx0YDQsNCx0L4=?= =?utf-8?b?0YLQsNC90L3Ri9GFIFBPU1Qt0LTQsNC90L3Ri9GF?= In-Reply-To: References: Message-ID: Mons Anderson писал(а) в своём письме Wed, 13 Mar 2013 00:48:17 +0200: > Для начала нужно определить в каком окружении это запускается. > если я правильно предполагаю и это cgi скрипт, то raw-post данные это > просто > > #!/usr/bin/env perl > > my $data = do { local $/; }; > > print "Content-Type: text/plain\n\n"; > print "Got your data:\n"; > print $data; Да, это так. Моя ошибка была в том, что полагался на чтение my $data = <>; Как результат --- получал пустой файл. Премного благодарен. > 2013/3/13 Alessandro Gorohovski > >> Уважаемое сообщество, >> Доброго времени суток! >> >> Может кто-нибудь знает, подскажите пожалуйста: >> >> Как в web perl-скрипте реализовать чтение >> необработанных POST-данных, подобно тому как это >> делается в PHP через ('php://input'), например, >> >> > # Get the raw POST data: >> $data = file_get_contents('php://**input'); >> ?> >> >> Спасибо, ANG From postmaster на softsearch.ru Wed Mar 13 12:03:47 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Wed, 13 Mar 2013 23:03:47 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= Message-ID: <1989103639.20130313230347@softsearch.ru> Здравствуйте. Возник вопрос про выбор алгоритма электронных товаров в интернете. Скажем, продаём премиум аккаунты на download-сайте. Можно продавать за фиксированную цену и при этом методом тыка попытаться найти цену, которая даст максимальную прибыль (маленькая цена - купит много, но прибыль маленькая). А как иначе продавать так, чтобы цена была оптимальная? В голову приходит только аукцион, когда в течении суток продаётся фиксированное количество премиум аккаунтов. Но это неудобно для юзеров. Хочется чего-то простого: пришёл и купил. Для упрощения предположим, что продаваемый товар/услуга всю свою стоимость переносит в прибыль. Т.е. оборот и прибыль равны. Есть идеи, как организовать продажу так, чтобы максимизировать прибыль? -- С уважением, Михаил mailto:postmaster на softsearch.ru From evdokimov.denis на gmail.com Wed Mar 13 13:23:35 2013 From: evdokimov.denis на gmail.com (Denis Evdokimov) Date: Thu, 14 Mar 2013 00:23:35 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <1989103639.20130313230347@softsearch.ru> References: <1989103639.20130313230347@softsearch.ru> Message-ID: Как мне кажется, хорошо подойдёт простой способ. Изначально продаем дорого. Потом снижаем цену(не обязательно равномерно). Смотрим на график прибыль на пользователя. Пока прибыль растёт или находится на плато, можно снижать дальше. Стоит учитывать сезонность и прочие внешние факторы. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From postmaster на softsearch.ru Wed Mar 13 14:27:37 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Thu, 14 Mar 2013 01:27:37 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: References: <1989103639.20130313230347@softsearch.ru> Message-ID: <1605950519.20130314012737@softsearch.ru> Здравствуйте, Denis. > Как мне кажется, хорошо подойдёт простой способ. > Изначально продаем дорого. > Потом снижаем цену(не обязательно равномерно). > Смотрим на график прибыль на пользователя. Пока прибыль растёт > или находится на плато, можно снижать дальше. > Стоит учитывать сезонность и прочие внешние факторы. Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть на то, что получится. Но есть минусы. Покупатели могут намеренно ждать снижения и игнорировать повышение, ибо знают, что проигнорировав повышение они получат понижение, т.е. они смогут манипулировать ценой. Хотя может это выдуманная мной проблема. И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав скидку 30% можно утроить продажи. И всё это надо успеть просчитать довольно быстро. Там счёт на дни. Приведу идеальный пример, где цена всегда оптимальна. Заплатил фиксированную цену и твоя реклама на морде сайта висит до тех пор, пока кто-то другой не заплатит столько же. Типа "царь горы". Платится за право попасть на морду, но не за время размещения на ней. Эта фиксированная цена может довольно сильно колебаться почти не влияя на прибыль. Её понижение приведёт к тому, что придётся чаще платить. Повышение - реже. Но всёравно реклама будет продаваться по оптимальной цене и прибыль будет максимизирована. Вот хочется нечто подобное придумать. Тогда можно и скидки давать на эту цену, привлекая их любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на небольших количествах продаваемых единиц должно работать хорошо, т.е. накопленная статистика не всегда репрезентативна может быть (например продаётся 100 единиц товара в день, а номенклатура - 1 млн.). -- С уважением, Михаил mailto:postmaster на softsearch.ru From shatlovsky на gmail.com Wed Mar 13 22:32:57 2013 From: shatlovsky на gmail.com (Alex Shatlovsky) Date: Thu, 14 Mar 2013 09:32:57 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <1605950519.20130314012737@softsearch.ru> References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> Message-ID: Привет, Думаю, что ценой может управлять робот. Идея такая: даем ему некую базовую цену (base). Для 90% посетителей робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров - 0.9*base. Через время эксперимента T робот считает доходность по трем выборкам, и по результатам выставляет новый base - 1.1, 1 или 0.95 от base. Играя с T, размерами выборки и размерами скидок/накруток, робота нужно будет настроить. Если продукт международный, то стоит еще подумать про разделение рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в регионе независимо от других. 14 марта 2013 г., 1:27 пользователь Михаил Монашёв написал: > Здравствуйте, Denis. > >> Как мне кажется, хорошо подойдёт простой способ. >> Изначально продаем дорого. >> Потом снижаем цену(не обязательно равномерно). >> Смотрим на график прибыль на пользователя. Пока прибыль растёт >> или находится на плато, можно снижать дальше. >> Стоит учитывать сезонность и прочие внешние факторы. > > Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть > на то, что получится. Но есть минусы. Покупатели могут намеренно ждать > снижения и игнорировать повышение, ибо знают, что проигнорировав > повышение они получат понижение, т.е. они смогут манипулировать ценой. > Хотя может это выдуманная мной проблема. > > И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав > скидку 30% можно утроить продажи. И всё это надо успеть просчитать > довольно быстро. Там счёт на дни. > > Приведу идеальный пример, где цена всегда оптимальна. Заплатил > фиксированную цену и твоя реклама на морде сайта висит до тех пор, > пока кто-то другой не заплатит столько же. Типа "царь горы". Платится > за право попасть на морду, но не за время размещения на ней. Эта > фиксированная цена может довольно сильно колебаться почти не влияя на > прибыль. Её понижение приведёт к тому, что придётся чаще платить. > Повышение - реже. Но всёравно реклама будет продаваться по оптимальной > цене и прибыль будет максимизирована. Вот хочется нечто подобное > придумать. Тогда можно и скидки давать на эту цену, привлекая их > любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на > небольших количествах продаваемых единиц должно работать хорошо, т.е. > накопленная статистика не всегда репрезентативна может быть (например > продаётся 100 единиц товара в день, а номенклатура - 1 млн.). > > -- > С уважением, > Михаил mailto:postmaster на softsearch.ru > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Алекс From andrei.protasovitski на gmail.com Thu Mar 14 00:40:41 2013 From: andrei.protasovitski на gmail.com (Andrei) Date: Thu, 14 Mar 2013 08:40:41 +0100 Subject: [Moscow.pm] =?utf-8?b?T0ZGVE9QSUMg0L/RgNC+INGN0LvQsNGB0YLQuNGH?= =?utf-8?b?0L3QvtGB0YLRjCDRgdC/0YDQvtGB0LAg0Lgg0L/RgNC10LTQu9C+0LY=?= =?utf-8?b?0LXQvdC40Y8=?= In-Reply-To: References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> Message-ID: 14 марта 2013 г., 6:32 пользователь Alex Shatlovsky написал: > Привет, > > Думаю, что ценой может управлять робот. > Идея такая: даем ему некую базовую цену (base). Для 90% посетителей > робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров > - 0.9*base. Через время эксперимента T робот считает доходность по > трем выборкам, и по результатам выставляет новый base - 1.1, 1 или > 0.95 от base. > Играя с T, размерами выборки и размерами скидок/накруток, робота нужно > будет настроить. > Если продукт международный, то стоит еще подумать про разделение > рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в > регионе независимо от других. > Не взлетит. Чтобы построить более-менее вменяемые доверительные интервалы нужно хотя бы 50000 (пятьдесят) тысяч посетителей на эти 5%, т.е. где-то 1000000 (один миллион) уникальных посетителей всего. Статистика -- это далеко не только среднее. > > > > > 14 марта 2013 г., 1:27 пользователь Михаил Монашёв > написал: > > Здравствуйте, Denis. > > > >> Как мне кажется, хорошо подойдёт простой способ. > >> Изначально продаем дорого. > >> Потом снижаем цену(не обязательно равномерно). > >> Смотрим на график прибыль на пользователя. Пока прибыль растёт > >> или находится на плато, можно снижать дальше. > >> Стоит учитывать сезонность и прочие внешние факторы. > > > > Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть > > на то, что получится. Но есть минусы. Покупатели могут намеренно ждать > > снижения и игнорировать повышение, ибо знают, что проигнорировав > > повышение они получат понижение, т.е. они смогут манипулировать ценой. > > Хотя может это выдуманная мной проблема. > > > > И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав > > скидку 30% можно утроить продажи. И всё это надо успеть просчитать > > довольно быстро. Там счёт на дни. > > > > Приведу идеальный пример, где цена всегда оптимальна. Заплатил > > фиксированную цену и твоя реклама на морде сайта висит до тех пор, > > пока кто-то другой не заплатит столько же. Типа "царь горы". Платится > > за право попасть на морду, но не за время размещения на ней. Эта > > фиксированная цена может довольно сильно колебаться почти не влияя на > > прибыль. Её понижение приведёт к тому, что придётся чаще платить. > > Повышение - реже. Но всёравно реклама будет продаваться по оптимальной > > цене и прибыль будет максимизирована. Вот хочется нечто подобное > > придумать. Тогда можно и скидки давать на эту цену, привлекая их > > любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на > > небольших количествах продаваемых единиц должно работать хорошо, т.е. > > накопленная статистика не всегда репрезентативна может быть (например > > продаётся 100 единиц товара в день, а номенклатура - 1 млн.). > > > > -- > > С уважением, > > Михаил mailto:postmaster на softsearch.ru > > > > -- > > Moscow.pm mailing list > > moscow-pm на pm.org | http://moscow.pm.org > > > > -- > Алекс > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Andrei Protasovitski < andrei[dot]protasovitski[at]gmail[dot]com > Diemen, Netherlands ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From shatlovsky на gmail.com Thu Mar 14 01:19:31 2013 From: shatlovsky на gmail.com (Alex Shatlovsky) Date: Thu, 14 Mar 2013 12:19:31 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> Message-ID: 14 марта 2013 г., 11:40 пользователь Andrei написал: > > 14 марта 2013 г., 6:32 пользователь Alex Shatlovsky > написал: > >> Привет, >> >> Думаю, что ценой может управлять робот. >> Идея такая: даем ему некую базовую цену (base). Для 90% посетителей >> робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров >> - 0.9*base. Через время эксперимента T робот считает доходность по >> трем выборкам, и по результатам выставляет новый base - 1.1, 1 или >> 0.95 от base. >> Играя с T, размерами выборки и размерами скидок/накруток, робота нужно >> будет настроить. >> Если продукт международный, то стоит еще подумать про разделение >> рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в >> регионе независимо от других. > > > > Не взлетит. Чтобы построить более-менее вменяемые доверительные интервалы > нужно хотя бы 50000 (пятьдесят) тысяч посетителей на эти 5%, т.е. где-то > 1000000 (один миллион) уникальных посетителей всего. Статистика -- это > далеко не только среднее. В условиях задачи ничего не было сказано про количество уникальных посетителей. Однако зная посещаемость других проектов Михаила, я предположил, что и на абстрактном download сайте имеется внушительная клиентская база (миллионы уников). -- > > >> >> >> >> >> >> 14 марта 2013 г., 1:27 пользователь Михаил Монашёв >> написал: >> > Здравствуйте, Denis. >> > >> >> Как мне кажется, хорошо подойдёт простой способ. >> >> Изначально продаем дорого. >> >> Потом снижаем цену(не обязательно равномерно). >> >> Смотрим на график прибыль на пользователя. Пока прибыль растёт >> >> или находится на плато, можно снижать дальше. >> >> Стоит учитывать сезонность и прочие внешние факторы. >> > >> > Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть >> > на то, что получится. Но есть минусы. Покупатели могут намеренно ждать >> > снижения и игнорировать повышение, ибо знают, что проигнорировав >> > повышение они получат понижение, т.е. они смогут манипулировать ценой. >> > Хотя может это выдуманная мной проблема. >> > >> > И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав >> > скидку 30% можно утроить продажи. И всё это надо успеть просчитать >> > довольно быстро. Там счёт на дни. >> > >> > Приведу идеальный пример, где цена всегда оптимальна. Заплатил >> > фиксированную цену и твоя реклама на морде сайта висит до тех пор, >> > пока кто-то другой не заплатит столько же. Типа "царь горы". Платится >> > за право попасть на морду, но не за время размещения на ней. Эта >> > фиксированная цена может довольно сильно колебаться почти не влияя на >> > прибыль. Её понижение приведёт к тому, что придётся чаще платить. >> > Повышение - реже. Но всёравно реклама будет продаваться по оптимальной >> > цене и прибыль будет максимизирована. Вот хочется нечто подобное >> > придумать. Тогда можно и скидки давать на эту цену, привлекая их >> > любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на >> > небольших количествах продаваемых единиц должно работать хорошо, т.е. >> > накопленная статистика не всегда репрезентативна может быть (например >> > продаётся 100 единиц товара в день, а номенклатура - 1 млн.). >> > >> > -- >> > С уважением, >> > Михаил mailto:postmaster на softsearch.ru >> > >> > -- >> > Moscow.pm mailing list >> > moscow-pm на pm.org | http://moscow.pm.org >> >> >> >> -- >> Алекс >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org > > > > > -- > Andrei Protasovitski > < andrei[dot]protasovitski[at]gmail[dot]com > > Diemen, Netherlands > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Алекс From andrey на kopeyko.ru Thu Mar 14 02:42:35 2013 From: andrey на kopeyko.ru (Andrey Kopeyko) Date: Thu, 14 Mar 2013 13:42:35 +0400 Subject: [Moscow.pm] =?utf-8?b?T0ZGVE9QSUMg0L/RgNC+INGN0LvQsNGB0YLQuNGH?= =?utf-8?b?0L3QvtGB0YLRjCDRgdC/0YDQvtGB0LAg0Lgg0L/RgNC10LTQu9C+0LbQtdC9?= =?utf-8?b?0LjRjw==?= In-Reply-To: References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> Message-ID: <51419B8B.10100@kopeyko.ru> 14.03.2013 09:32, Alex Shatlovsky пишет: > Привет, > > Думаю, что ценой может управлять робот. > Идея такая: даем ему некую базовую цену (base). Для 90% посетителей > робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров > - 0.9*base. Алексей, привет! Это ты описал давным-давно известный A/B-split testing. (A/B/C в твоём случае.) Проблема только в том, что в России ты не можешь так поиграться с ценами - одинаковые товары ты обязан по одинаковой цене продавать. По закону обязан. Вот поиграться в бандлами (добавляя\убавляя\заменяя компоненты) - это пожалуйста. А игра с голой ценой - приведёт тебя на нары, будь осторожен. > > Если продукт международный, то стоит еще подумать про разделение > рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в > регионе независимо от других. Сегментировать можно и по категориям - студенты\пенсионеры, к примеру, отдельно (ибо они хорошо отделяются, по предъявлении документов). Впрочем, тут абстрактные рассуждения уже заканчиваются, нужна конкретика. > > > > > 14 марта 2013 г., 1:27 пользователь Михаил Монашёв > написал: >> Здравствуйте, Denis. >> >>> Как мне кажется, хорошо подойдёт простой способ. >>> Изначально продаем дорого. >>> Потом снижаем цену(не обязательно равномерно). >>> Смотрим на график прибыль на пользователя. Пока прибыль растёт >>> или находится на плато, можно снижать дальше. >>> Стоит учитывать сезонность и прочие внешние факторы. >> >> Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть >> на то, что получится. Но есть минусы. Покупатели могут намеренно ждать >> снижения и игнорировать повышение, ибо знают, что проигнорировав >> повышение они получат понижение, т.е. они смогут манипулировать ценой. >> Хотя может это выдуманная мной проблема. >> >> И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав >> скидку 30% можно утроить продажи. И всё это надо успеть просчитать >> довольно быстро. Там счёт на дни. >> >> Приведу идеальный пример, где цена всегда оптимальна. Заплатил >> фиксированную цену и твоя реклама на морде сайта висит до тех пор, >> пока кто-то другой не заплатит столько же. Типа "царь горы". Платится >> за право попасть на морду, но не за время размещения на ней. Эта >> фиксированная цена может довольно сильно колебаться почти не влияя на >> прибыль. Её понижение приведёт к тому, что придётся чаще платить. >> Повышение - реже. Но всёравно реклама будет продаваться по оптимальной >> цене и прибыль будет максимизирована. Вот хочется нечто подобное >> придумать. Тогда можно и скидки давать на эту цену, привлекая их >> любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на >> небольших количествах продаваемых единиц должно работать хорошо, т.е. >> накопленная статистика не всегда репрезентативна может быть (например >> продаётся 100 единиц товара в день, а номенклатура - 1 млн.). >> >> -- >> С уважением, >> Михаил mailto:postmaster на softsearch.ru >> >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org > > > > -- > Алекс > -- Best regards, Andrey Kopeyko From andrei.protasovitski на gmail.com Thu Mar 14 07:40:20 2013 From: andrei.protasovitski на gmail.com (Andrei) Date: Thu, 14 Mar 2013 15:40:20 +0100 Subject: [Moscow.pm] =?utf-8?b?T0ZGVE9QSUMg0L/RgNC+INGN0LvQsNGB0YLQuNGH?= =?utf-8?b?0L3QvtGB0YLRjCDRgdC/0YDQvtGB0LAg0Lgg0L/RgNC10LTQu9C+0LY=?= =?utf-8?b?0LXQvdC40Y8=?= In-Reply-To: References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> Message-ID: 14 марта 2013 г., 9:19 пользователь Alex Shatlovsky написал: > 14 марта 2013 г., 11:40 пользователь Andrei > написал: > > > > 14 марта 2013 г., 6:32 пользователь Alex Shatlovsky < > shatlovsky на gmail.com> > > написал: > > > >> Привет, > >> > >> Думаю, что ценой может управлять робот. > >> Идея такая: даем ему некую базовую цену (base). Для 90% посетителей > >> робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров > >> - 0.9*base. Через время эксперимента T робот считает доходность по > >> трем выборкам, и по результатам выставляет новый base - 1.1, 1 или > >> 0.95 от base. > >> Играя с T, размерами выборки и размерами скидок/накруток, робота нужно > >> будет настроить. > >> Если продукт международный, то стоит еще подумать про разделение > >> рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в > >> регионе независимо от других. > > > > > > > > Не взлетит. Чтобы построить более-менее вменяемые доверительные интервалы > > нужно хотя бы 50000 (пятьдесят) тысяч посетителей на эти 5%, т.е. где-то > > 1000000 (один миллион) уникальных посетителей всего. Статистика -- это > > далеко не только среднее. > > В условиях задачи ничего не было сказано про количество уникальных > посетителей. Однако зная посещаемость других проектов Михаила, я > предположил, что и на абстрактном download сайте имеется внушительная > клиентская база (миллионы уников). > В условиях задачи не сказано. Но если ты начнёшь считать неуникальных, то данные не будут значить ничего. С другой стороны, этот миллион должен состоять из потенциальных покупателей. Если основная аудитория приходит не для того, чтобы купить, а по другим причинам, ты просто забьёшь данные заведомо неконвертируюмыми посетителями. В этом случае средние значения каждого варианта сдвинутся к нулю гораздо медленее, чем сузятся доверительные интервалы. Это может легко привести к тому, что незначимое станет значимым или наоборот. В лучшем случае ты дашь полный ход нейтральному варианту. Есть ещё MAB experiments (http://en.wikipedia.org/wiki/Multi-armed_bandit). В теории этот метод звучит очень вкусно, но для тестов в веб-приложениях, мне кажется, этот подход скорее опасен, чем полезен, поскольку подразумевает анализ на основе выборки из бесконечного числа попыток. В общем, правильно проэксперементировать тоже нужно уметь. > > -- > > > > > > > >> > >> > >> > >> > >> > >> 14 марта 2013 г., 1:27 пользователь Михаил Монашёв > >> написал: > >> > Здравствуйте, Denis. > >> > > >> >> Как мне кажется, хорошо подойдёт простой способ. > >> >> Изначально продаем дорого. > >> >> Потом снижаем цену(не обязательно равномерно). > >> >> Смотрим на график прибыль на пользователя. Пока прибыль растёт > >> >> или находится на плато, можно снижать дальше. > >> >> Стоит учитывать сезонность и прочие внешние факторы. > >> > > >> > Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть > >> > на то, что получится. Но есть минусы. Покупатели могут намеренно ждать > >> > снижения и игнорировать повышение, ибо знают, что проигнорировав > >> > повышение они получат понижение, т.е. они смогут манипулировать ценой. > >> > Хотя может это выдуманная мной проблема. > >> > > >> > И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав > >> > скидку 30% можно утроить продажи. И всё это надо успеть просчитать > >> > довольно быстро. Там счёт на дни. > >> > > >> > Приведу идеальный пример, где цена всегда оптимальна. Заплатил > >> > фиксированную цену и твоя реклама на морде сайта висит до тех пор, > >> > пока кто-то другой не заплатит столько же. Типа "царь горы". Платится > >> > за право попасть на морду, но не за время размещения на ней. Эта > >> > фиксированная цена может довольно сильно колебаться почти не влияя на > >> > прибыль. Её понижение приведёт к тому, что придётся чаще платить. > >> > Повышение - реже. Но всёравно реклама будет продаваться по оптимальной > >> > цене и прибыль будет максимизирована. Вот хочется нечто подобное > >> > придумать. Тогда можно и скидки давать на эту цену, привлекая их > >> > любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на > >> > небольших количествах продаваемых единиц должно работать хорошо, т.е. > >> > накопленная статистика не всегда репрезентативна может быть (например > >> > продаётся 100 единиц товара в день, а номенклатура - 1 млн.). > >> > > >> > -- > >> > С уважением, > >> > Михаил mailto:postmaster на softsearch.ru > >> > > >> > -- > >> > Moscow.pm mailing list > >> > moscow-pm на pm.org | http://moscow.pm.org > >> > >> > >> > >> -- > >> Алекс > >> -- > >> Moscow.pm mailing list > >> moscow-pm на pm.org | http://moscow.pm.org > > > > > > > > > > -- > > Andrei Protasovitski > > < andrei[dot]protasovitski[at]gmail[dot]com > > > Diemen, Netherlands > > > > -- > > Moscow.pm mailing list > > moscow-pm на pm.org | http://moscow.pm.org > > > > > > -- > Алекс > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Andrei Protasovitski < andrei[dot]protasovitski[at]gmail[dot]com > Diemen, Netherlands ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From aml на rulezz.ru Thu Mar 14 11:47:50 2013 From: aml на rulezz.ru (Alexander Lourier) Date: Thu, 14 Mar 2013 22:47:50 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <1989103639.20130313230347@softsearch.ru> References: <1989103639.20130313230347@softsearch.ru> Message-ID: <51421B56.2080906@rulezz.ru> 13.03.2013 23:03, Михаил Монашёв wrote: > Есть идеи, как организовать продажу так, чтобы максимизировать > прибыль? Мы в играх аналогичную задачу решаем, когда вводим новые расходные предметы в игре - нам надо выставить такую цену, чтобы получить максимальную прибыль в течение долгого времени. В качестве первого приближения на глаз прикидываем ценность предмета, сравнивая с его аналогами: вот эта штука немного круче и стоит N, а вот эта - немного слабее и стоит M. Значит берём что-то между M и N. Смотрим на продажи, записываем статистику. Через какое-то время, когда первый всплеск спроса утихнет, и он более-менее выравняется, вводим 10% скидку, анонсируем это. Если спрос вырос больше, чем на 11%, значит надо ещё снижать цену. Если спрос вырос незначительно, значит наоборот - можно повышать. Через какое-то время можно повторить. Примерно раз в полгода смотрим сводную статистику по всем предметам и делаем корректировки по всем сразу. -- Alexander Lourier, http://aml.rulezz.ru From postmaster на softsearch.ru Thu Mar 14 13:26:24 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Fri, 15 Mar 2013 00:26:24 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <51421B56.2080906@rulezz.ru> References: <1989103639.20130313230347@softsearch.ru> <51421B56.2080906@rulezz.ru> Message-ID: <941541731.20130315002624@softsearch.ru> Здравствуйте, Alexander. >> Есть идеи, как организовать продажу так, чтобы максимизировать >> прибыль? > Мы в играх аналогичную задачу решаем, когда вводим новые расходные > предметы в игре - нам надо выставить такую цену, чтобы получить > максимальную прибыль в течение долгого времени. В качестве первого > приближения на глаз прикидываем ценность предмета, сравнивая с его > аналогами: вот эта штука немного круче и стоит N, а вот эта - > немного слабее и стоит M. Значит берём что-то между M и N. Смотрим > на продажи, записываем статистику. Через какое-то время, когда > первый всплеск спроса утихнет, и он более-менее выравняется, вводим > 10% скидку, анонсируем это. Если спрос вырос больше, чем на 11%, > значит надо ещё снижать цену. Если спрос вырос незначительно, значит > наоборот - можно повышать. Через какое-то время можно повторить. > Примерно раз в полгода смотрим сводную статистику по всем предметам > и делаем корректировки по всем сразу. Негибко. Летом, например, хорошо бы цену снижать, ибо народу мало. Перед НГ скидки делать, ибо народу много и они хотят покупать. Но это именно скидки, а не снижение цены. И вот вопрос: какой процент скидок оптимальный? Мне кажется, что цену на завтра стоит определять на основе сегодняшних и может быть вчерашних продаж. Если период больше, то под праздники не успеешь адаптироваться. Alex Shatlovsky предложил ИМХО правильную мысль: использовать не всех покупателей, а лишь их часть для поиска правильной цены. Их ведь можно персональными скидками маскировать, например. P.S. А вообще странно, что человечество, в последнее годы только и занятой перепродажей всего чего можно, до сих пор не придумало простого способа поиска оптимальной цены. -- С уважением, Михаил mailto:postmaster на softsearch.ru From andrey на kopeyko.ru Thu Mar 14 13:58:25 2013 From: andrey на kopeyko.ru (Andrey Kopeyko) Date: Fri, 15 Mar 2013 00:58:25 +0400 Subject: [Moscow.pm] =?utf-8?b?T0ZGVE9QSUMg0L/RgNC+INGN0LvQsNGB0YLQuNGH?= =?utf-8?b?0L3QvtGB0YLRjCDRgdC/0YDQvtGB0LAg0Lgg0L/RgNC10LTQu9C+0LbQtdC9?= =?utf-8?b?0LjRjw==?= In-Reply-To: <941541731.20130315002624@softsearch.ru> References: <1989103639.20130313230347@softsearch.ru> <51421B56.2080906@rulezz.ru> <941541731.20130315002624@softsearch.ru> Message-ID: <514239F1.6040500@kopeyko.ru> 15.03.2013 00:26, Михаил Монашёв пишет: > > P.S. > А вообще странно, что человечество, в последнее годы только и занятой > перепродажей всего чего можно, до сих пор не придумало простого > способа поиска оптимальной цены. Держи карман шире! - нашедший правильную формулу\алгоритм уже стремится растолковать тебе секрет своего успеха. -- Best regards, Andrey Kopeyko From postmaster на softsearch.ru Thu Mar 14 16:06:12 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Fri, 15 Mar 2013 03:06:12 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <514239F1.6040500@kopeyko.ru> References: <1989103639.20130313230347@softsearch.ru> <51421B56.2080906@rulezz.ru> <941541731.20130315002624@softsearch.ru> <514239F1.6040500@kopeyko.ru> Message-ID: <1674756395.20130315030612@softsearch.ru> Здравствуйте, Andrey. >> А вообще странно, что человечество, в последнее годы только и >> занятой перепродажей всего чего можно, до сих пор не придумало >> простого способа поиска оптимальной цены. > Держи карман шире! - нашедший правильную формулу\алгоритм уже > стремится растолковать тебе секрет своего успеха. Глупо верить, что это знание принесёт её обладателю что-то, кроме известности в лучшем случае. -- С уважением, Михаил mailto:postmaster на softsearch.ru From greyhard на gmail.com Thu Mar 14 21:34:56 2013 From: greyhard на gmail.com (Ilynikh Denis) Date: Fri, 15 Mar 2013 08:34:56 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <51419B8B.10100@kopeyko.ru> References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> <51419B8B.10100@kopeyko.ru> Message-ID: <2696393D-81DD-4ACD-9EF6-8D872746DD81@gmail.com> 14.03.2013, в 13:42, Andrey Kopeyko написал(а): > 14.03.2013 09:32, Alex Shatlovsky пишет: >> Привет, >> >> Думаю, что ценой может управлять робот. >> Идея такая: даем ему некую базовую цену (base). Для 90% посетителей >> робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров >> - 0.9*base. > > Алексей, привет! > > Это ты описал давным-давно известный A/B-split testing. (A/B/C в твоём случае.) > > Проблема только в том, что в России ты не можешь так поиграться с ценами - одинаковые товары ты обязан по одинаковой цене продавать. По закону обязан. Вот поиграться в бандлами (добавляя\убавляя\заменяя компоненты) - это пожалуйста. А игра с голой ценой - приведёт тебя на нары, будь осторожен. > >> >> Если продукт международный, то стоит еще подумать про разделение >> рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в >> регионе независимо от других. > > Сегментировать можно и по категориям - студенты\пенсионеры, к примеру, отдельно (ибо они хорошо отделяются, по предъявлении документов). > > Впрочем, тут абстрактные рассуждения уже заканчиваются, нужна конкретика. > >> >> >> >> >> 14 марта 2013 г., 1:27 пользователь Михаил Монашёв >> написал: >>> Здравствуйте, Denis. >>> >>>> Как мне кажется, хорошо подойдёт простой способ. >>>> Изначально продаем дорого. >>>> Потом снижаем цену(не обязательно равномерно). >>>> Смотрим на график прибыль на пользователя. Пока прибыль растёт >>>> или находится на плато, можно снижать дальше. >>>> Стоит учитывать сезонность и прочие внешние факторы. >>> >>> Была такая идея. Постоянно колебать цену то вверх, то вниз и смотреть >>> на то, что получится. Но есть минусы. Покупатели могут намеренно ждать >>> снижения и игнорировать повышение, ибо знают, что проигнорировав >>> повышение они получат понижение, т.е. они смогут манипулировать ценой. >>> Хотя может это выдуманная мной проблема. >>> >>> И ещё вопрос. Как в эту схему вписать, например Новый год, когда дав >>> скидку 30% можно утроить продажи. И всё это надо успеть просчитать >>> довольно быстро. Там счёт на дни. >>> >>> Приведу идеальный пример, где цена всегда оптимальна. Заплатил >>> фиксированную цену и твоя реклама на морде сайта висит до тех пор, >>> пока кто-то другой не заплатит столько же. Типа "царь горы". Платится >>> за право попасть на морду, но не за время размещения на ней. Эта >>> фиксированная цена может довольно сильно колебаться почти не влияя на >>> прибыль. Её понижение приведёт к тому, что придётся чаще платить. >>> Повышение - реже. Но всёравно реклама будет продаваться по оптимальной >>> цене и прибыль будет максимизирована. Вот хочется нечто подобное >>> придумать. Тогда можно и скидки давать на эту цену, привлекая их >>> любителетей и увеличивая конкуренцию. И манипулировать сложнее. И на >>> небольших количествах продаваемых единиц должно работать хорошо, т.е. >>> накопленная статистика не всегда репрезентативна может быть (например >>> продаётся 100 единиц товара в день, а номенклатура - 1 млн.). >>> >>> -- >>> С уважением, >>> Михаил mailto:postmaster на softsearch.ru >>> >>> -- >>> Moscow.pm mailing list >>> moscow-pm на pm.org | http://moscow.pm.org >> >> >> >> -- >> Алекс > > > -- > Best regards, > Andrey Kopeyko > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org А если не играть ценой а раздавать каждому клиенту разную скидку. допустим увеличить цену товаров на 10 % и потом выдавать скидки до 20%. В таком случае мы попадаем под закон ? Фиксировать сколько было выдано и каких скидок, и посмотреть затем статистику при каких скидках больше всего покупают, и считать эту цену оптимальной From aml на rulezz.ru Thu Mar 14 23:54:02 2013 From: aml на rulezz.ru (Alexander Lourier) Date: Fri, 15 Mar 2013 10:54:02 +0400 Subject: [Moscow.pm] =?koi8-r?b?T0ZGVE9QSUMg0NLPINzMwdPUyd7Oz9PU2CDT0NLP?= =?koi8-r?b?08EgySDQ0sXEzM/Wxc7J0Q==?= In-Reply-To: <941541731.20130315002624@softsearch.ru> References: <1989103639.20130313230347@softsearch.ru> <51421B56.2080906@rulezz.ru> <941541731.20130315002624@softsearch.ru> Message-ID: <5142C58A.2030102@rulezz.ru> 15.03.2013 00:26, Михаил Монашёв wrote: > Здравствуйте, Alexander. > >>> Есть идеи, как организовать продажу так, чтобы максимизировать >>> прибыль? > >> Мы в играх аналогичную задачу решаем, когда вводим новые расходные >> предметы в игре - нам надо выставить такую цену, чтобы получить >> максимальную прибыль в течение долгого времени. В качестве первого >> приближения на глаз прикидываем ценность предмета, сравнивая с его >> аналогами: вот эта штука немного круче и стоит N, а вот эта - >> немного слабее и стоит M. Значит берём что-то между M и N. Смотрим >> на продажи, записываем статистику. Через какое-то время, когда >> первый всплеск спроса утихнет, и он более-менее выравняется, вводим >> 10% скидку, анонсируем это. Если спрос вырос больше, чем на 11%, >> значит надо ещё снижать цену. Если спрос вырос незначительно, значит >> наоборот - можно повышать. Через какое-то время можно повторить. >> Примерно раз в полгода смотрим сводную статистику по всем предметам >> и делаем корректировки по всем сразу. > > Негибко. Летом, например, хорошо бы цену снижать, ибо народу мало. > Перед НГ скидки делать, ибо народу много и они хотят покупать. Но это > именно скидки, а не снижение цены. И вот вопрос: какой процент скидок > оптимальный? Нам в этом плане проще. К праздникам что-то новое эксклюзивное выпускаем, чего никогда раньше не было и никогда уже не будет. Покупают так, что за ушами трещит. > Мне кажется, что цену на завтра стоит определять на основе сегодняшних > и может быть вчерашних продаж. Если период больше, то под праздники не > успеешь адаптироваться. Если объём продаж у тебя достаточно большой, чтобы полезный сигнал (реакция рынка на скидку) не тонул в шумах (индивидуальном поведении покупателей), то можно и каждый день. > P.S. > А вообще странно, что человечество, в последнее годы только и занятой > перепродажей всего чего можно, до сих пор не придумало простого > способа поиска оптимальной цены. Может и придумало. У меня ценообразованием экономист занимается. На выходе говорит, какие цены надо скорректировать. Может у него какие-то ноу-хау есть, не знаю. -- Alexander Lourier, http://aml.rulezz.ru From andrey на kopeyko.ru Fri Mar 15 01:42:39 2013 From: andrey на kopeyko.ru (Andrey Kopeyko) Date: Fri, 15 Mar 2013 12:42:39 +0400 Subject: [Moscow.pm] =?utf-8?b?T0ZGVE9QSUMg0L/RgNC+INGN0LvQsNGB0YLQuNGH?= =?utf-8?b?0L3QvtGB0YLRjCDRgdC/0YDQvtGB0LAg0Lgg0L/RgNC10LTQu9C+0LbQtdC9?= =?utf-8?b?0LjRjw==?= In-Reply-To: <2696393D-81DD-4ACD-9EF6-8D872746DD81@gmail.com> References: <1989103639.20130313230347@softsearch.ru> <1605950519.20130314012737@softsearch.ru> <51419B8B.10100@kopeyko.ru> <2696393D-81DD-4ACD-9EF6-8D872746DD81@gmail.com> Message-ID: <5142DEFF.7050204@kopeyko.ru> 15.03.2013 08:34, Ilynikh Denis пишет: > > > 14.03.2013, в 13:42, Andrey Kopeyko написал(а): > >> 14.03.2013 09:32, Alex Shatlovsky пишет: >>> Привет, >>> >>> Думаю, что ценой может управлять робот. >>> Идея такая: даем ему некую базовую цену (base). Для 90% посетителей >>> робот дает цену price, для 5% юзеров дает 1.1*base, для ещё 5% юзеров >>> - 0.9*base. >> >> Алексей, привет! >> >> Это ты описал давным-давно известный A/B-split testing. (A/B/C в твоём случае.) >> >> Проблема только в том, что в России ты не можешь так поиграться с ценами - одинаковые товары ты обязан по одинаковой цене продавать. По закону обязан. Вот поиграться в бандлами (добавляя\убавляя\заменяя компоненты) - это пожалуйста. А игра с голой ценой - приведёт тебя на нары, будь осторожен. >> >>> >>> Если продукт международный, то стоит еще подумать про разделение >>> рынков. Т.е. делим юзеров на несколько регионов, и управляем ценой в >>> регионе независимо от других. >> >> Сегментировать можно и по категориям - студенты\пенсионеры, к примеру, отдельно (ибо они хорошо отделяются, по предъявлении документов). >> >> Впрочем, тут абстрактные рассуждения уже заканчиваются, нужна конкретика. >> ... > А если не играть ценой а раздавать каждому клиенту разную скидку. допустим увеличить цену товаров на 10 % и потом выдавать скидки до 20%. В таком случае мы попадаем под закон ? Метод формирования цены не важен, важна фактическая цена продажи. Одно и тоже, но по разным ценам - низзя. > Фиксировать сколько было выдано и каких скидок, и посмотреть затем статистику при каких скидках больше всего покупают, и считать эту цену оптимальной > -- Best regards, Andrey Kopeyko From khrt на ya.ru Wed Mar 20 07:26:44 2013 From: khrt на ya.ru (Artie Kh) Date: Wed, 20 Mar 2013 16:26:44 +0200 Subject: [Moscow.pm] RT REST API (part 2) Message-ID: <29D4585B4D6B45FE80466CA128CD6D03@gmail.com> Привет! Возникла новая проблема с RT REST API. Можно-ли как нибудь переопределить результаты поиска? Я хочу что бы в результатах поиска показывалось поле LastUpdatedBy как, например, в интерфейсе. Пытался разобраться с share/html/REST/1.0/search/ticket, но так и не смог ничего сделать. Может быть кто-то сталкивался с похожей проблемой и может мне подсказать? -- ak From citrin на citrin.ru Thu Mar 21 06:03:09 2013 From: citrin на citrin.ru (Anton Yuzhaninov) Date: Thu, 21 Mar 2013 17:03:09 +0400 Subject: [Moscow.pm] =?koi8-r?b?19nCz9Igyc3FzskgxMzRIENQQU4gzc/E1czRLg==?= Message-ID: <514B050D.9080907@citrin.ru> Планирую выложить на CPAN модуль. Возник вопрос с выбором имени. Модуль реализует алгоритм ORTC (Optimal Routing Table Constructor). Можно назвать как Net::CIDR::ORTC, но тут http://pause.perl.org/pause/query?ACTION=pause_namingmodules#Net пишут, что использовать namespace Net, нежелательно. В то же время в namespace CIDR:: насколько вижу только один модуль, а в Net::CIDR их заметно больше. Функциональность модуля: на входе список префикс - значение, например: 192.168.0.0/23 -> A 192.168.2.0/24 -> B 192.168.3.0/24 -> B на выходе, эквивалентный (при использовании longest prefix match), список с меньшим числом префиксов, для данного примера: 192.168.0.0/23 -> A 192.168.2.0/23 -> B From sharifulin на gmail.com Thu Mar 21 06:04:49 2013 From: sharifulin на gmail.com (=?KOI8-R?B?4c7B1M/Mycog+8HSycbVzMnO?=) Date: Thu, 21 Mar 2013 17:04:49 +0400 Subject: [Moscow.pm] =?koi8-r?b?19nCz9Igyc3FzskgxMzRIENQQU4gzc/E1czRLg==?= In-Reply-To: <514B050D.9080907@citrin.ru> References: <514B050D.9080907@citrin.ru> Message-ID: 2013/3/21 Anton Yuzhaninov > Net::CIDR::ORTC Net::CIDR::ORTC -- С уважением, Анатолий Шарифулин. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ali на ali.org.ua Thu Mar 21 15:27:09 2013 From: ali на ali.org.ua (Oleg Alistratov) Date: Fri, 22 Mar 2013 00:27:09 +0200 Subject: [Moscow.pm] =?koi8-r?b?19nCz9Igyc3FzskgxMzRIENQQU4gzc/E1czRLg==?= In-Reply-To: <514B050D.9080907@citrin.ru> References: <514B050D.9080907@citrin.ru> Message-ID: <644241363904829@web26h.yandex.ru> 21.03.2013, 15:03, "Anton Yuzhaninov" : > Планирую выложить на CPAN модуль. > Возник вопрос с выбором имени. > > Модуль реализует алгоритм ORTC (Optimal Routing Table Constructor). Можно > назвать как Net::CIDR::ORTC, но тут > http://pause.perl.org/pause/query?ACTION=pause_namingmodules#Net > пишут, что использовать namespace Net, нежелательно. То они не хотели, чтоб туда всякие api веб-сервисов пихали. > В то же время в namespace CIDR:: насколько вижу только один модуль, И тот 98 года. > а в Net::CIDR их заметно больше. Делай Net::CIDR::ORTC, без всяких сомнений. > Функциональность модуля: > > на входе список префикс - значение, например: > 192.168.0.0/23 -> A > 192.168.2.0/24 -> B > 192.168.3.0/24 -> B > > на выходе, эквивалентный (при использовании longest prefix match), список с > меньшим числом префиксов, для данного примера: > 192.168.0.0/23 -> A > 192.168.2.0/23 -> B > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Oleg Alistratov From shafiev на gmail.com Thu Mar 21 15:29:04 2013 From: shafiev на gmail.com (Naim Shafiev) Date: Fri, 22 Mar 2013 02:29:04 +0400 Subject: [Moscow.pm] =?koi8-r?b?19nCz9Igyc3FzskgxMzRIENQQU4gzc/E1czRLg==?= In-Reply-To: <644241363904829@web26h.yandex.ru> References: <514B050D.9080907@citrin.ru> <644241363904829@web26h.yandex.ru> Message-ID: 22 марта 2013 г., 2:27 пользователь Oleg Alistratov написал: > > > 21.03.2013, 15:03, "Anton Yuzhaninov" : > > > Планирую выложить на CPAN модуль. > > Возник вопрос с выбором имени. > > > > Модуль реализует алгоритм ORTC (Optimal Routing Table Constructor). Можно > > назвать как Net::CIDR::ORTC, но тут > > http://pause.perl.org/pause/query?ACTION=pause_namingmodules#Net > > пишут, что использовать namespace Net, нежелательно. > > То они не хотели, чтоб туда всякие api веб-сервисов пихали. > > > В то же время в namespace CIDR:: насколько вижу только один модуль, > > И тот 98 года. > > > а в Net::CIDR их заметно больше. > > Делай Net::CIDR::ORTC, без всяких сомнений. > +1 . > > > Функциональность модуля: > > > > на входе список префикс - значение, например: > > 192.168.0.0/23 -> A > > 192.168.2.0/24 -> B > > 192.168.3.0/24 -> B > > > > на выходе, эквивалентный (при использовании longest prefix match), > список с > > меньшим числом префиксов, для данного примера: > > 192.168.0.0/23 -> A > > 192.168.2.0/23 -> B > > -- > > Moscow.pm mailing list > > moscow-pm на pm.org | http://moscow.pm.org > > -- > Oleg Alistratov > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From i.petro.77.00 на gmail.com Sat Mar 23 13:14:00 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Sun, 24 Mar 2013 00:14:00 +0400 Subject: [Moscow.pm] =?utf-8?b?0Jgg0LLRgdC1LdGC0LDQutC4LCDQutCw0Log0L8=?= =?utf-8?b?0YDQsNCy0LjQu9GM0L3QviDQv9C10YDQtdGF0LLQsNGC0LjRgtGMINC4?= =?utf-8?b?0YHQutC70Y7Rh9C10L3QuNC1Pw==?= Message-ID: <20130323201400.GA20618@vdsl.uvw.ru> задача: - перехватить исключение подзадачи: - передать исключение на более верхний уровень в измененном виде - точно определить место где произошло исключение которое мы перехватили решение второй подзадачи приводит нас к двум вариантам. вариант ?1 ~~~~~~~~~~ eval { ... код с исключением }; if ($@) { тут выпарсиваем место исключения из $@; } этот вариант очевидно ущербный в силу парсинга: в современных perl'ах, а так же в всяких расширениях получается что не всегда можно точно распарсить. вариант ?2 ~~~~~~~~~~ local $SIG{__DIE__} = sub { тут по значению, возвращенному функцией caller определяем место исключения ... die $_[0]; }; тут код выбрасывающий исключение но второй вариант ущербен в связи с тем обстоятельством что невозможен иерархический перехват. то есть если код какого-либо модуля тоже хватает $SIG{__DIE__}, то мы не можем определить место падения иначе как парся $@. вот пример: sub foo1 { local $SIG{__DIE__} = sub { print "die 1\n"; die $_[0]; }; die "привет 1"; } sub foo2 { local $SIG{__DIE__} = sub { print "die 2\n"; die $_[0]; }; foo1; } foo2; данная программа выводит строку 'die 1', а 'die 2', разумеется не будет выведен никогда. если предположить что foo1 у нас в стороннем модуле, то задача не решена. есть еще какие-то мысли как перехватить исключение с точным определением места исключения? а общая задача банальная: 1. имеется некое большое приложение. 2. в этом приложении на самом верхнем уровне мы перехватываем исключения и отправляем email о том что оно произошло 3. хотим дополнительно в письме отправить stacktrace, соответственно код такой: $SIG{__DIE__} = sub { собираем stacktrce и определяем место где упало die $_[0]; }; eval { main }; if ($@) { отправляем email со stacktrace сохраненным в SIG{__DIE__}. } такой подход работает, все красиво, но есть куча внешних модулей (как оказывается) которые так же ловят SIG{__DIE__} у кого какие мысли? From sergey.aleynikov на gmail.com Sat Mar 23 13:35:46 2013 From: sergey.aleynikov на gmail.com (Sergey Aleynikov) Date: Sun, 24 Mar 2013 00:35:46 +0400 Subject: [Moscow.pm] =?koi8-r?b?6SDX08Ut1MHLySwgy8HLINDSwdfJzNjOzyDQxdLF?= =?koi8-r?b?yNfB1MnU2CDJ08vMwN7FzsnFPw==?= In-Reply-To: <20130323201400.GA20618@vdsl.uvw.ru> References: <20130323201400.GA20618@vdsl.uvw.ru> Message-ID: Добрый день, >вариант No.1 а) Вам могут кинуть объект, в котором парсить нечего б) Исключение в перлах версий до 5.16 могли перезатереть "по дороге". Поэтому только $SIG{__DIE__}, который должен устанавливаться один раз в самом начале. Всё, что пытается его перезатереть, выкинуть. Best regards, Sergey Aleynikov From i.petro.77.00 на gmail.com Sat Mar 23 13:40:40 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Sun, 24 Mar 2013 00:40:40 +0400 Subject: [Moscow.pm] =?utf-8?b?0Jgg0LLRgdC1LdGC0LDQutC4LCDQutCw0Log0L8=?= =?utf-8?b?0YDQsNCy0LjQu9GM0L3QviDQv9C10YDQtdGF0LLQsNGC0LjRgtGMINC4?= =?utf-8?b?0YHQutC70Y7Rh9C10L3QuNC1Pw==?= In-Reply-To: References: <20130323201400.GA20618@vdsl.uvw.ru> Message-ID: <20130323204040.GB20618@vdsl.uvw.ru> >> вариант No.1 > а) Вам могут кинуть объект, в котором парсить нечего > б) Исключение в перлах версий до 5.16 могли перезатереть "по дороге". > Поэтому только $SIG{__DIE__}, который должен устанавливаться один раз в > самом начале. Всё, что пытается его перезатереть, выкинуть. к сожалению все что пытается его перезатереть выкинуть - не вариант. не выкинуть например Mojo::Template: он использует такой механизм для того чтобы точно показать где в шаблоне что неправильно. не выкинуть так же XML::LibXML, не выкинуть еще добрую сотню хороших библиотек. есть у меня мысль попробовать организовать "липкость" на %SIG и с его помощью сделать стек __DIE__, но поскольку он итак липкий, то придется чета хачить. может есть еще мысли? From sergey.aleynikov на gmail.com Sat Mar 23 13:59:42 2013 From: sergey.aleynikov на gmail.com (Sergey Aleynikov) Date: Sun, 24 Mar 2013 00:59:42 +0400 Subject: [Moscow.pm] =?koi8-r?b?6SDX08Ut1MHLySwgy8HLINDSwdfJzNjOzyDQxdLF?= =?koi8-r?b?yNfB1MnU2CDJ08vMwN7FzsnFPw==?= In-Reply-To: <20130323204040.GB20618@vdsl.uvw.ru> References: <20130323201400.GA20618@vdsl.uvw.ru> <20130323204040.GB20618@vdsl.uvw.ru> Message-ID: Добрый день, > не выкинуть например Mojo::Template: он использует такой механизм для > того чтобы точно показать где в шаблоне что неправильно. > не выкинуть так же XML::LibXML, не выкинуть еще добрую сотню хороших > библиотек. Очень беглый взгляд на Mojo::Template - обернуть вызовы render в local $SIG{__DIE__}. В XML::LibXML - не нашёл. > есть у меня мысль попробовать организовать "липкость" на %SIG и с его > помощью сделать стек __DIE__, но поскольку он итак липкий, то придется > чета хачить. Есть такой интересный модуль Signals::XSIG, но сам я с ним не работал. Best regards, Sergey Aleynikov From andrei.protasovitski на gmail.com Sat Mar 23 15:42:36 2013 From: andrei.protasovitski на gmail.com (Andrei) Date: Sat, 23 Mar 2013 23:42:36 +0100 Subject: [Moscow.pm] =?utf-8?b?0Jgg0LLRgdC1LdGC0LDQutC4LCDQutCw0Log0L8=?= =?utf-8?b?0YDQsNCy0LjQu9GM0L3QviDQv9C10YDQtdGF0LLQsNGC0LjRgtGMINC4?= =?utf-8?b?0YHQutC70Y7Rh9C10L3QuNC1Pw==?= In-Reply-To: <20130323201400.GA20618@vdsl.uvw.ru> References: <20130323201400.GA20618@vdsl.uvw.ru> Message-ID: Вариант 1 ещё и неверный. eval { # code 1; # return true } or do { my $error = $@ || "Zombie error"; # parse $error } Существуют ещё всякие TryCatch, Try::Tiny и т.п. 23 марта 2013 г., 21:14 пользователь Ivan Petrov написал: > задача: > > - перехватить исключение > > подзадачи: > > - передать исключение на более верхний уровень в измененном виде > - точно определить место где произошло исключение которое мы > перехватили > > > решение второй подзадачи приводит нас к двум вариантам. > > вариант ?1 > ~~~~~~~~~~ > > eval { > ... код с исключением > }; > > if ($@) { > тут выпарсиваем место исключения из $@; > } > > этот вариант очевидно ущербный в силу парсинга: в современных perl'ах, > а так же в всяких расширениях получается что не всегда можно точно > распарсить. > > > вариант ?2 > ~~~~~~~~~~ > > local $SIG{__DIE__} = sub { > тут по значению, возвращенному функцией caller определяем место > исключения > ... > die $_[0]; > }; > тут код выбрасывающий исключение > > но второй вариант ущербен в связи с тем обстоятельством что невозможен > иерархический перехват. > > то есть если код какого-либо модуля тоже хватает $SIG{__DIE__}, то мы > не можем определить место падения иначе как парся $@. > > вот пример: > > sub foo1 { > local $SIG{__DIE__} = sub { > print "die 1\n"; > die $_[0]; > }; > die "привет 1"; > } > > > sub foo2 { > local $SIG{__DIE__} = sub { > print "die 2\n"; > die $_[0]; > }; > foo1; > } > > foo2; > > данная программа выводит строку 'die 1', а 'die 2', разумеется не > будет выведен никогда. если предположить что foo1 у нас в стороннем > модуле, то задача не решена. > > > есть еще какие-то мысли как перехватить исключение с точным > определением места исключения? > > > а общая задача банальная: > > 1. имеется некое большое приложение. > 2. в этом приложении на самом верхнем уровне мы перехватываем > исключения и отправляем email о том что оно произошло > 3. хотим дополнительно в письме отправить stacktrace, соответственно > код такой: > > $SIG{__DIE__} = sub { > собираем stacktrce и определяем место где упало > die $_[0]; > }; > > eval { main }; > if ($@) { > отправляем email со stacktrace сохраненным в SIG{__DIE__}. > } > > такой подход работает, все красиво, но есть куча внешних модулей (как > оказывается) которые так же ловят SIG{__DIE__} > > у кого какие мысли? > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Andrei Protasovitski < andrei[dot]protasovitski[at]gmail[dot]com > Diemen, Netherlands ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From dzirtik на gmail.com Tue Mar 26 02:54:41 2013 From: dzirtik на gmail.com (=?KOI8-R?B?8MHXxcwg/cXSwsnOyc4=?=) Date: Tue, 26 Mar 2013 13:54:41 +0400 Subject: [Moscow.pm] =?koi8-r?b?99PU0sXewSBNb3Njb3cucG0=?= Message-ID: Рады сообщить, что *4 апреля, в четверг, с 19.00 до 22.00* пройдет встреча Perl-программистов под кодовым названием Moscow.pm. В рамках мероприятия у вас есть эксклюзивная возможность послушать доклады лучших специалистов, поделиться опытом друг с другом. В программе вас ждут доклады: *1. Динамический код: модифицируем таблицу символов во время выполнения.* * * *Елена Шишкина, программист проекта Деньги, компания Mail.Ru Group.* Tаблица символов -- это только небольшой шаг в мир внутреннего устройства Perl, но и он открывает программисту огромные возможности: -- Runtime-кодогенерация. -- Генерация по запросу. -- Изменение кода сторонних модулей на лету и многое другое. *2. Play Perl -- распределенная социальная игра для Perl-разработчиков.* * * *Вячеслав Матюхин, разработчик, поиск по блогам, компания Яндекс*, расскажет о том: -- Как настоящие соцсети будущего будут поощрять действие, а не потребление. -- Как геймификация изменит мир. -- Как Play Perl спасет сообщество perl-разработчиков от застоя и сделает нас всех более продуктивными. *3. Не верь никому или разработка эффективных приложений (Как писать по настоящему быстрый код).* * * *Владимир Перепелица, Руководитель направления проекта Почта, компания Mail.Ru Group.* -- Знай свою среду. Почему нужно изучать язык, на котором пишешь. -- Магии нет. Есть непонимание процессов. -- Не верь предрассудкам. Они сложились при других обстоятельствах. -- Доверяй, но проверяй. Прежде, чем использовать решение, проверь. -- Не используй не изучив. Не используй не понимая. -- Код можно менять. Как делать это с умом. -- Можно ли доверять синтетике? Синтетические тесты и реальная нагрузка. -- Немного примеров. Плохих и хороших. *Место и время:* 4 апреля, с 19.00 до 22.00, офис компании Mail.Ru Group на 5 этаже БЦ <<Авион>>. Трансляцию мероприятия вы сможете посмотреть на странице: http://corp.mail.ru/Moscow.pm Пожалуйста, отметьтесь http://moscowpm.timepad.ru/event/61635/ , если вы хотите посетить эту встречу, чтобы мы смогли ее лучше организовать -- С Уважением, Щербинин Павел ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From akovbovich на gmail.com Tue Mar 26 02:56:46 2013 From: akovbovich на gmail.com (=?UTF-8?B?0JDQvdC00YDQtdC5INCfLiDQmtC+0LLQsdC+0LLQuNGH?=) Date: Tue, 26 Mar 2013 13:56:46 +0400 Subject: [Moscow.pm] =?utf-8?b?0JLRgdGC0YDQtdGH0LAgTW9zY293LnBt?= In-Reply-To: References: Message-ID: офигеть, крутые темы 26 марта 2013 г., 13:54 пользователь Павел Щербинин написал: > Рады сообщить, что 4 апреля, в четверг, с 19.00 до 22.00 пройдет встреча > Perl-программистов под кодовым названием Moscow.pm. > > В рамках мероприятия у вас есть эксклюзивная возможность послушать доклады > лучших специалистов, поделиться опытом друг с другом. > > В программе вас ждут доклады: > > 1. Динамический код: модифицируем таблицу символов во время выполнения. > > Елена Шишкина, программист проекта Деньги, компания Mail.Ru Group. > > Tаблица символов ? это только небольшой шаг в мир внутреннего устройства > Perl, но и он открывает программисту огромные возможности: > > ? Runtime-кодогенерация. > > ? Генерация по запросу. > > ? Изменение кода сторонних модулей на лету и многое другое. > > > > 2. Play Perl ? распределенная социальная игра для Perl-разработчиков. > > Вячеслав Матюхин, разработчик, поиск по блогам, компания Яндекс, расскажет о > том: > ? Как настоящие соцсети будущего будут поощрять действие, а не потребление. > ? Как геймификация изменит мир. > ? Как Play Perl спасет сообщество perl-разработчиков от застоя и сделает нас > всех более продуктивными. > > 3. Не верь никому или разработка эффективных приложений (Как писать по > настоящему быстрый код). > > Владимир Перепелица, Руководитель направления проекта Почта, компания > Mail.Ru Group. > > ? Знай свою среду. Почему нужно изучать язык, на котором пишешь. > ? Магии нет. Есть непонимание процессов. > ? Не верь предрассудкам. Они сложились при других обстоятельствах. > ? Доверяй, но проверяй. Прежде, чем использовать решение, проверь. > ? Не используй не изучив. Не используй не понимая. > ? Код можно менять. Как делать это с умом. > ? Можно ли доверять синтетике? Синтетические тесты и реальная нагрузка. > ? Немного примеров. Плохих и хороших. > > Место и время: 4 апреля, с 19.00 до 22.00, офис компании Mail.Ru Group на 5 > этаже БЦ ?Авион?. > > Трансляцию мероприятия вы сможете посмотреть на странице: > http://corp.mail.ru/Moscow.pm > > Пожалуйста, отметьтесь http://moscowpm.timepad.ru/event/61635/ , если вы > хотите посетить эту встречу, чтобы мы смогли ее лучше организовать > > -- > С Уважением, > Щербинин Павел > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > From foxcool333 на gmail.com Tue Mar 26 03:06:05 2013 From: foxcool333 на gmail.com (Foxcool) Date: Tue, 26 Mar 2013 16:06:05 +0600 Subject: [Moscow.pm] =?utf-8?b?0JLRgdGC0YDQtdGH0LAgTW9zY293LnBt?= In-Reply-To: References: Message-ID: <5151730D.7000802@gmail.com> Вт. 26 марта 2013 15:56:46, Андрей П. Ковбович писал: > офигеть, крутые темы > > 26 марта 2013 г., 13:54 пользователь Павел Щербинин написал: >> Рады сообщить, что 4 апреля, в четверг, с 19.00 до 22.00 пройдет встреча >> Perl-программистов под кодовым названием Moscow.pm. >> >> В рамках мероприятия у вас есть эксклюзивная возможность послушать доклады >> лучших специалистов, поделиться опытом друг с другом. >> >> В программе вас ждут доклады: >> >> 1. Динамический код: модифицируем таблицу символов во время выполнения. >> >> Елена Шишкина, программист проекта Деньги, компания Mail.Ru Group. >> >> Tаблица символов ? это только небольшой шаг в мир внутреннего устройства >> Perl, но и он открывает программисту огромные возможности: >> >> ? Runtime-кодогенерация. >> >> ? Генерация по запросу. >> >> ? Изменение кода сторонних модулей на лету и многое другое. >> >> >> >> 2. Play Perl ? распределенная социальная игра для Perl-разработчиков. >> >> Вячеслав Матюхин, разработчик, поиск по блогам, компания Яндекс, расскажет о >> том: >> ? Как настоящие соцсети будущего будут поощрять действие, а не потребление. >> ? Как геймификация изменит мир. >> ? Как Play Perl спасет сообщество perl-разработчиков от застоя и сделает нас >> всех более продуктивными. >> >> 3. Не верь никому или разработка эффективных приложений (Как писать по >> настоящему быстрый код). >> >> Владимир Перепелица, Руководитель направления проекта Почта, компания >> Mail.Ru Group. >> >> ? Знай свою среду. Почему нужно изучать язык, на котором пишешь. >> ? Магии нет. Есть непонимание процессов. >> ? Не верь предрассудкам. Они сложились при других обстоятельствах. >> ? Доверяй, но проверяй. Прежде, чем использовать решение, проверь. >> ? Не используй не изучив. Не используй не понимая. >> ? Код можно менять. Как делать это с умом. >> ? Можно ли доверять синтетике? Синтетические тесты и реальная нагрузка. >> ? Немного примеров. Плохих и хороших. >> >> Место и время: 4 апреля, с 19.00 до 22.00, офис компании Mail.Ru Group на 5 >> этаже БЦ ?Авион?. >> >> Трансляцию мероприятия вы сможете посмотреть на странице: >> http://corp.mail.ru/Moscow.pm >> >> Пожалуйста, отметьтесь http://moscowpm.timepad.ru/event/61635/ , если вы >> хотите посетить эту встречу, чтобы мы смогли ее лучше организовать >> >> -- >> С Уважением, >> Щербинин Павел >> >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> Действительно годно звучит. Запишите видео, пожалуйста для жителей других городов. (: -- http://foxcool.ru foxcool на jabber.ru From ivan на serezhkin.com Tue Mar 26 03:34:03 2013 From: ivan на serezhkin.com (Vany Serezhkin) Date: Tue, 26 Mar 2013 14:34:03 +0400 Subject: [Moscow.pm] =?utf-8?b?0JLRgdGC0YDQtdGH0LAgTW9zY293LnBt?= In-Reply-To: <5151730D.7000802@gmail.com> References: <5151730D.7000802@gmail.com> Message-ID: <5151799B.40604@serezhkin.com> > Действительно годно звучит. Запишите видео, пожалуйста для жителей > других городов. (: > Ок. -- WBR, Vany From dzirtik на gmail.com Tue Mar 26 03:19:18 2013 From: dzirtik на gmail.com (=?KOI8-R?B?8MHXxcwg/cXSwsnOyc4=?=) Date: Tue, 26 Mar 2013 14:19:18 +0400 Subject: [Moscow.pm] =?koi8-r?b?99PU0sXewSBNb3Njb3cucG0=?= In-Reply-To: <5151730D.7000802@gmail.com> References: <5151730D.7000802@gmail.com> Message-ID: Видео обязательно будет и даже прямая трансляция на http://corp.mail.ru/Moscow.pm 26 марта 2013 г., 14:06 пользователь Foxcool написал: > Вт. 26 марта 2013 15:56:46, Андрей П. Ковбович писал: > > офигеть, крутые темы >> >> 26 марта 2013 г., 13:54 пользователь Павел Щербинин >> написал: >> >>> Рады сообщить, что 4 апреля, в четверг, с 19.00 до 22.00 пройдет встреча >>> Perl-программистов под кодовым названием Moscow.pm. >>> >>> В рамках мероприятия у вас есть эксклюзивная возможность послушать >>> доклады >>> лучших специалистов, поделиться опытом друг с другом. >>> >>> В программе вас ждут доклады: >>> >>> 1. Динамический код: модифицируем таблицу символов во время выполнения. >>> >>> Елена Шишкина, программист проекта Деньги, компания Mail.Ru Group. >>> >>> Tаблица символов -- это только небольшой шаг в мир внутреннего устройства >>> Perl, но и он открывает программисту огромные возможности: >>> >>> -- Runtime-кодогенерация. >>> >>> -- Генерация по запросу. >>> >>> -- Изменение кода сторонних модулей на лету и многое другое. >>> >>> >>> >>> 2. Play Perl -- распределенная социальная игра для Perl-разработчиков. >>> >>> Вячеслав Матюхин, разработчик, поиск по блогам, компания Яндекс, >>> расскажет о >>> том: >>> -- Как настоящие соцсети будущего будут поощрять действие, а не >>> потребление. >>> -- Как геймификация изменит мир. >>> -- Как Play Perl спасет сообщество perl-разработчиков от застоя и сделает >>> нас >>> всех более продуктивными. >>> >>> 3. Не верь никому или разработка эффективных приложений (Как писать по >>> настоящему быстрый код). >>> >>> Владимир Перепелица, Руководитель направления проекта Почта, компания >>> Mail.Ru Group. >>> >>> -- Знай свою среду. Почему нужно изучать язык, на котором пишешь. >>> -- Магии нет. Есть непонимание процессов. >>> -- Не верь предрассудкам. Они сложились при других обстоятельствах. >>> -- Доверяй, но проверяй. Прежде, чем использовать решение, проверь. >>> -- Не используй не изучив. Не используй не понимая. >>> -- Код можно менять. Как делать это с умом. >>> -- Можно ли доверять синтетике? Синтетические тесты и реальная нагрузка. >>> -- Немного примеров. Плохих и хороших. >>> >>> Место и время: 4 апреля, с 19.00 до 22.00, офис компании Mail.Ru Group >>> на 5 >>> этаже БЦ <<Авион>>. >>> >>> Трансляцию мероприятия вы сможете посмотреть на странице: >>> http://corp.mail.ru/Moscow.pm >>> >>> Пожалуйста, отметьтесь http://moscowpm.timepad.ru/**event/61635/, если вы >>> хотите посетить эту встречу, чтобы мы смогли ее лучше организовать >>> >>> -- >>> С Уважением, >>> Щербинин Павел >>> >>> -- >>> Moscow.pm mailing list >>> moscow-pm на pm.org | http://moscow.pm.org >>> >>> > Действительно годно звучит. Запишите видео, пожалуйста для жителей других > городов. (: > > -- > http://foxcool.ru > foxcool на jabber.ru > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- С Уважением, Щербинин Павел ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From postmaster на softsearch.ru Tue Mar 26 10:16:58 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Tue, 26 Mar 2013 21:16:58 +0400 Subject: [Moscow.pm] =?koi8-r?b?99PU0sXewSBNb3Njb3cucG0=?= In-Reply-To: References: Message-ID: <985819245.20130326211658@softsearch.ru> Здравствуйте, Павел. > Вячеслав Матюхин, разработчик, поиск по блогам, компания Яндекс, > расскажет о том: > ≈ Как настоящие соцсети будущего будут поощрять действие, а не > потребление. Если человек так отлично знает будущее, то почему ППБ пользуются 3 калеки, да и те всё реже заходят? http://www.liveinternet.ru/stat/ru/searches.html?id=16;period=month По внутренней статистике та же картина, хотя и менее печальная: http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=46 . И это при том, что ссылка на сервис стоит на морде яндекса, откуда видимо и идёт основной трафик. Смотрим соцсети яндекса одну: http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=115 и вторую: http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=116 . Обе в будущее придут (если дойдут) сильно похудев по трафику. Не ясно, кого они там будут поощрять. При этом у Яндекса есть редкие сервисы, которые растут. Это основной поиск, видео и карты. Остальные стагнируют, иногда оживая. Например, после выпуска альбома Земфиры, скакнула посещаемость Музыки. Через месяц она вернётся скорее всего к прежним значениям. Почти всё остальное у яндекса деградирует по посещаемости. Я не знаю, почему почти все поголовно молятся на яндекс и ждут от его сотрудников каких-то откровений. Взгляните на факты. Эта компания уже много лет не может сделать новый удачный проект и тянет на старых успешных проектах все остальные. Что, можно ждать от её сотрудников, особенно разрабатывающих много лет умирающий продукт, в котором уже давно ничего менялось? Много лет назад на том же РИФ-е было интересно. Там люди делились интересным. Сейчас это "выставка" "лидеров" Рунета и дурилка для "новоиспечённых" "стартаперов". Нет ничего проще, чем позвать кучу народа и устами небритого яндексойда с хвостиком пустить их по ложному пути развития, дабы не дай Бог они не выстрелили, как какой-то там Дуров или Попков в своё время, и чтобы потом не пришлось с ними конкурировать за трафик, рекламодателя и деньги инвесторов. Так и тут. Приходит какой-то человек из умирающего сервиса, который завтра закроют, и рассказывает, как космические корабли бороздят... P.S. Знаю, что многие со мной не согласятся. Но попробуйте посмотреть на факты без эмоций, без оглядки на возможные дружеские отношения с сотрудниками яндекса и вероятного будущего работодателя. Станет очевидно, что Поиск не сможет вечно кормить весь остальной яндекс. И что есть PR компании вышедшей на биржу и отличная от PR-а реальность. -- С уважением, Михаил mailto:postmaster на softsearch.ru From me на berekuk.ru Tue Mar 26 10:46:00 2013 From: me на berekuk.ru (=?koi8-r?B?7cHUwMjJziD30d7F08zB1w==?=) Date: Tue, 26 Mar 2013 21:46:00 +0400 Subject: [Moscow.pm] =?koi8-r?b?99PU0sXewSBNb3Njb3cucG0=?= In-Reply-To: <985819245.20130326211658@softsearch.ru> References: <985819245.20130326211658@softsearch.ru> Message-ID: <2434351364319960@web17h.yandex.ru> Михаил, если вы хотите поговорить про Яндекс, заведите отдельный тред, или, лучше, напишите в свой личный блог. На встрече я собираюсь выражать свое личное мнение, с видением компании не связанное. 26.03.2013, 21:17, "Михаил Монашёв" : > Здравствуйте, Павел. > >>  Вячеслав  Матюхин,  разработчик,  поиск  по блогам, компания Яндекс, >>  расскажет о том: >>  ≈  Как  настоящие  соцсети  будущего  будут  поощрять действие, а не >>  потребление. > > Если  человек  так  отлично  знает будущее, то почему ППБ пользуются 3 > калеки,        да       и       те       всё       реже       заходят? > http://www.liveinternet.ru/stat/ru/searches.html?id=16;period=month > > По  внутренней  статистике  та  же  картина,  хотя  и менее печальная: > http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=46 . И это при > том, что ссылка на сервис стоит на морде яндекса, откуда видимо и идёт > основной трафик. > > Смотрим соцсети яндекса одну: > http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=115  и вторую: > http://stat.yandex.ru/stats.xml?ReportID=-225&ProjectID=116  .  Обе  в > будущее  придут (если дойдут) сильно похудев по трафику. Не ясно, кого > они там будут поощрять. > > При  этом  у Яндекса есть редкие сервисы, которые растут. Это основной > поиск,  видео  и карты. Остальные стагнируют, иногда оживая. Например, > после  выпуска  альбома  Земфиры,  скакнула посещаемость Музыки. Через > месяц  она  вернётся  скорее  всего  к  прежним  значениям.  Почти всё > остальное у яндекса деградирует по посещаемости. > > Я  не знаю, почему почти все поголовно молятся на яндекс и ждут от его > сотрудников  каких-то откровений. Взгляните на факты. Эта компания уже > много  лет  не  может  сделать  новый удачный проект и тянет на старых > успешных  проектах  все остальные. Что, можно ждать от её сотрудников, > особенно  разрабатывающих  много  лет умирающий продукт, в котором уже > давно ничего менялось? > > Много  лет  назад  на  том  же РИФ-е было интересно. Там люди делились > интересным.  Сейчас  это  "выставка"  "лидеров"  Рунета  и дурилка для > "новоиспечённых"  "стартаперов".  Нет  ничего  проще, чем позвать кучу > народа и устами небритого яндексойда с хвостиком пустить их по ложному > пути  развития,  дабы  не  дай Бог они не выстрелили, как какой-то там > Дуров  или  Попков  в  своё  время,  и  чтобы потом не пришлось с ними > конкурировать за трафик, рекламодателя и деньги инвесторов. Так и тут. > Приходит  какой-то  человек  из  умирающего  сервиса,  который  завтра > закроют, и рассказывает, как космические корабли бороздят... > > P.S. > Знаю,  что  многие  со мной не согласятся. Но попробуйте посмотреть на > факты  без  эмоций,  без  оглядки  на  возможные дружеские отношения с > сотрудниками   яндекса  и  вероятного  будущего  работодателя.  Станет > очевидно,  что  Поиск не сможет вечно кормить весь остальной яндекс. И > что есть PR компании вышедшей на биржу и отличная от PR-а реальность. > > -- > С уважением, >  Михаил                          mailto:postmaster на softsearch.ru > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org From i.petro.77.00 на gmail.com Fri Mar 29 01:14:05 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Fri, 29 Mar 2013 12:14:05 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0L7QtNC40LDQs9C90L7RgdGC0Lg=?= =?utf-8?b?0YDQvtCy0LDRgtGMIE9PTT8=?= Message-ID: <20130329081404.GB18629@vdsl.uvw.ru> имеется небольшой вебсервер, который специально расположен в контейнере 1G RAM. вебсервер запущен под apache+mod_perl+mojolicious. в среднем потребление памяти процессами апача - 100Мб. повесили монитор даже на это. на графике довольно прямая линия в районе 100Мб. процессов apache жестко ограничено - 6 штук. и получается и запас по памяти есть итп. далее. где-то один раз в один день OOM прибивает процесс apache с описанием что тот дорос до 500Мб+. то есть где-то бага. происходит очень редко. но хочется разобраться. какое решение можно применить чтобы хотя-бы роут вычислить? я пробовал менять $0 на то чтобы видеть какой роут выполняется данным воркером апача, думал в OOM лог попадет. но тут у меня ничего не получилось :( есть еще варианты? From sergle.ua на gmail.com Fri Mar 29 03:17:53 2013 From: sergle.ua на gmail.com (Sergey Leschenko) Date: Fri, 29 Mar 2013 12:17:53 +0200 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0L7QtNC40LDQs9C90L7RgdGC0Lg=?= =?utf-8?b?0YDQvtCy0LDRgtGMIE9PTT8=?= In-Reply-To: <20130329081404.GB18629@vdsl.uvw.ru> References: <20130329081404.GB18629@vdsl.uvw.ru> Message-ID: Написать свой mod_perl PerlPostReadRequestHandler с логированием - найти какой запрос приводит к OOM 2013/3/29 Ivan Petrov > имеется небольшой вебсервер, который специально расположен в > контейнере 1G RAM. > вебсервер запущен под apache+mod_perl+mojolicious. > в среднем потребление памяти процессами апача - 100Мб. повесили > монитор даже на это. на графике довольно прямая линия в районе 100Мб. > процессов apache жестко ограничено - 6 штук. > и получается и запас по памяти есть итп. > > далее. > где-то один раз в один день OOM прибивает процесс apache с описанием > что тот дорос до 500Мб+. то есть где-то бага. > > происходит очень редко. но хочется разобраться. > > какое решение можно применить чтобы хотя-бы роут вычислить? > > я пробовал менять $0 на то чтобы видеть какой роут выполняется данным > воркером апача, думал в OOM лог попадет. но тут у меня ничего не > получилось :( > > есть еще варианты? > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Sergey ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ruz на bestpractical.com Fri Mar 29 06:23:43 2013 From: ruz на bestpractical.com (Ruslan Zakirov) Date: Fri, 29 Mar 2013 17:23:43 +0400 Subject: [Moscow.pm] =?utf-8?b?0LrQsNC6INC/0L7QtNC40LDQs9C90L7RgdGC0Lg=?= =?utf-8?b?0YDQvtCy0LDRgtGMIE9PTT8=?= In-Reply-To: <20130329081404.GB18629@vdsl.uvw.ru> References: <20130329081404.GB18629@vdsl.uvw.ru> Message-ID: Привет, В Encode недавно пификсили небольшую утечку. В DBI были небольшие. Для ОО кода отличное начало: http://search.cpan.org/~adamk/Devel-Leak-Object-1.01/lib/Devel/Leak/Object.pm Он простой. После нахождения проблем, я прям его правлю чтобы больше инфы получить. Как уже предложили выделить определенный запрос. Далее httpd -X для подтверждения. 2013/3/29 Ivan Petrov : > имеется небольшой вебсервер, который специально расположен в > контейнере 1G RAM. > вебсервер запущен под apache+mod_perl+mojolicious. > в среднем потребление памяти процессами апача - 100Мб. повесили > монитор даже на это. на графике довольно прямая линия в районе 100Мб. > процессов apache жестко ограничено - 6 штук. > и получается и запас по памяти есть итп. > > далее. > где-то один раз в один день OOM прибивает процесс apache с описанием > что тот дорос до 500Мб+. то есть где-то бага. > > происходит очень редко. но хочется разобраться. > > какое решение можно применить чтобы хотя-бы роут вычислить? > > я пробовал менять $0 на то чтобы видеть какой роут выполняется данным > воркером апача, думал в OOM лог попадет. но тут у меня ничего не > получилось :( > > есть еще варианты? > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Best regards, Ruslan. From sergey.aleynikov на gmail.com Fri Mar 29 08:29:59 2013 From: sergey.aleynikov на gmail.com (Sergey Aleynikov) Date: Fri, 29 Mar 2013 19:29:59 +0400 Subject: [Moscow.pm] =?koi8-r?b?y8HLINDPxMnBx87P09TJ0s/XwdTYIE9PTT8=?= In-Reply-To: <20130329081404.GB18629@vdsl.uvw.ru> References: <20130329081404.GB18629@vdsl.uvw.ru> Message-ID: Добрый день, Если пришёл OOM killer - то поздно пить боржоми, в userspace управление процессу не вернётся) Поэтому первым делом надо заставить ядро корректно говорить процессу "хватит жрат" - к примеру, через "limit vmemorysize 150M" в стартовом скрипте апача. Теперь, если он будет расти, то malloc/sbrk вернутся с ошибкой. Но в перле с системным аллокатором это будет untrappable die. Нужен перл, собранный с -Dusemymalloc, чтобы ошибка нехватки памяти попадала в хэндлер __DIE__. Плюс задать какой-то величины буфер в $^M. Тогда можно будет смотреть и стек вызовов, и писать какую-то отладку, но, возможно, сначала будет проще попробовать вариант с PerlPostReadRequestHandler) Best regards, Sergey Aleynikov From postmaster на softsearch.ru Fri Mar 29 15:51:19 2013 From: postmaster на softsearch.ru (=?koi8-r?B?7cnIwcnMIO3PzsHbo9c=?=) Date: Sat, 30 Mar 2013 02:51:19 +0400 Subject: [Moscow.pm] =?koi8-r?b?bW9zY293LnBtLm9yZyDTzM/NwczTzw==?= In-Reply-To: References: <20130323201400.GA20618@vdsl.uvw.ru> Message-ID: <1939960388.20130330025119@softsearch.ru> Здравствуйте. Уже несколько дней не работает http://moscow.pm.org/ -- С уважением, Михаил mailto:postmaster на softsearch.ru From i.petro.77.00 на gmail.com Sat Mar 30 04:59:00 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Sat, 30 Mar 2013 15:59:00 +0400 Subject: [Moscow.pm] =?utf-8?b?bW9zY293LnBtLm9yZyDRgdC70L7QvNCw0LvRgdC+?= In-Reply-To: <1939960388.20130330025119@softsearch.ru> References: <20130323201400.GA20618@vdsl.uvw.ru> <1939960388.20130330025119@softsearch.ru> Message-ID: <20130330115900.GF18629@vdsl.uvw.ru> > Уже несколько дней не работает http://moscow.pm.org/ не смогли перехватить exception? From i.petro.77.00 на gmail.com Sat Mar 30 15:43:15 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Sun, 31 Mar 2013 02:43:15 +0400 Subject: [Moscow.pm] readline Message-ID: <20130330224315.GG18629@vdsl.uvw.ru> есть приложение которое работает примерно в таком цикле while(1) { pipe my $r, my $w; if (my $pid = fork) { close $w; while(<$r>) { ... } close $r; waitpid($pid, 0); next; } close $r; open STDOUT, '>&', $w; open STDERR, '>&', $w; close $w; # тут exec на дочернее приложение } каждый раз когда дочка перезапускается видим сообщение в логе. периодически нахожу это приложение в следующем состоянии: запущено 2 или даже 3 дочерних приложения. то есть получается из while(<>) оно вышло и waitpid отработало, но дочка осталась жива и продолжает себе работать. я тут поштудировал perldoc на waitpid и на readline но не могу понять в чем проблема может быть? PS: задача приложения - держать счетчики по выводимому логу и рестартить дочку если та по какой-то причине мрет. From dmitry на karasik.eu.org Sat Mar 30 17:02:52 2013 From: dmitry на karasik.eu.org (Dmitry Karasik) Date: Sun, 31 Mar 2013 01:02:52 +0100 Subject: [Moscow.pm] readline In-Reply-To: <20130330224315.GG18629@vdsl.uvw.ru> References: <20130330224315.GG18629@vdsl.uvw.ru> Message-ID: <20130331000252.GA50207@nataraj.karasik.eu.org> выглядит чисто ... либо опущены какие-то существенные детали, либо дочернее приложение делает еще один форк, больше вариантов не вижу /dk On Sun, Mar 31, 2013 at 02:43:15AM +0400, Ivan Petrov wrote: > есть приложение которое работает примерно в таком цикле > > while(1) { > pipe my $r, my $w; > > if (my $pid = fork) { > close $w; > > while(<$r>) { > ... > } > close $r; > waitpid($pid, 0); > next; > } > > close $r; > open STDOUT, '>&', $w; > open STDERR, '>&', $w; > close $w; > # тут exec на дочернее приложение > } > > каждый раз когда дочка перезапускается видим сообщение в логе. > > периодически нахожу это приложение в следующем состоянии: > запущено 2 или даже 3 дочерних приложения. > > то есть получается из while(<>) оно вышло и waitpid отработало, но > дочка осталась жива и продолжает себе работать. > я тут поштудировал perldoc на waitpid и на readline но не могу понять > в чем проблема может быть? > > PS: задача приложения - держать счетчики по выводимому логу и > рестартить дочку если та по какой-то причине мрет. > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org -- Sincerely, Dmitry Karasik From i.petro.77.00 на gmail.com Sun Mar 31 00:03:49 2013 From: i.petro.77.00 на gmail.com (Ivan Petrov) Date: Sun, 31 Mar 2013 11:03:49 +0400 Subject: [Moscow.pm] readline In-Reply-To: <20130331000252.GA50207@nataraj.karasik.eu.org> References: <20130330224315.GG18629@vdsl.uvw.ru> <20130331000252.GA50207@nataraj.karasik.eu.org> Message-ID: <20130331070349.GH18629@vdsl.uvw.ru> > выглядит чисто ... либо опущены какие-то существенные детали, > либо дочернее приложение делает еще один форк, больше вариантов не вижу дочернее приложение - написано на AnyEvent делает множество разных http запросов. единственная деталь, которая возможно существенна: все это происходит в контейнере OpenVZ. From andy на shitov.ru Sun Mar 31 14:25:07 2013 From: andy на shitov.ru (Andrew Shitov) Date: Sun, 31 Mar 2013 23:25:07 +0200 Subject: [Moscow.pm] =?utf-8?b?WUFQQzo6RXVyb3BlIDIwMTMg0LIg0JrQuNC10LI=?= =?utf-8?b?0LU=?= In-Reply-To: References: Message-ID: Опубликованы требования к докладам: http://act.yapc.eu/ye2013/news/1008. Там же немного показано помещение изнутри. 2012/8/20 Andrew Shitov > Сегодня на конференции YAPC::Europe, проходящей в этом году во > Франкфурте, было объявлено место проведения следующей конференции. > YAPC::Europe 2013 состоится в Киеве. Официальная новость на сайте YAPC > Europe Foundation: http://www.yapceurope.org/news.html. > > В первый раз мы подавали заявку на проведение YAPC::Europe в Киеве в > 2010 году, но тогда победила Пиза. В этот раз безоговорочно победил > Киев. Даты проведения будут названы позже, ориентировочно это середина > августа. > > Сайт будет открыт позже в конце этого года, регистрация тоже. > Планируйте приехать в августе в Киеве. Это будет самая восточная > европейская столица, где когда-либо проводились YAPC::Europe. В > прошлом году самой восточной стала Рига, в следующем ? Киев. Чтобы > приехать в Киев, не нужны ни виза, ни заграничный паспорт. > > Поздравляю всех! :-) > > -- > Andrew Shitov > ______________________________________________________________________ > andy на shitov.ru | http://shitov.ru > -- Andrew Shitov ______________________________________________________________________ andy на shitov.ru | http://shitov.ru ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From 0body0 на rambler.ru Sun Mar 31 23:30:50 2013 From: 0body0 на rambler.ru (=?UTF-8?B?0JPRgNC40YjQsNC10LIg0JDQvdCw0YLQvtC70LjQuQ==?=) Date: Mon, 01 Apr 2013 10:30:50 +0400 Subject: [Moscow.pm] readline In-Reply-To: <20130330224315.GG18629@vdsl.uvw.ru> References: <20130330224315.GG18629@vdsl.uvw.ru> Message-ID: <5159299A.7040607@rambler.ru> Есть половина ответа: надо проверять чего возвращает waitpid, иногда он ловит не тот пид, или просто вываливается по сигналу. Был такой опыт... А как вываливается из while(), по коду не видно... 31.03.2013 2:43, Ivan Petrov пишет: > есть приложение которое работает примерно в таком цикле > > while(1) { > pipe my $r, my $w; > > if (my $pid = fork) { > close $w; > > while(<$r>) { > ... > } > close $r; > waitpid($pid, 0); > next; > } > > close $r; > open STDOUT, '>&', $w; > open STDERR, '>&', $w; > close $w; > # тут exec на дочернее приложение > } > > каждый раз когда дочка перезапускается видим сообщение в логе. > > периодически нахожу это приложение в следующем состоянии: > запущено 2 или даже 3 дочерних приложения. > > то есть получается из while(<>) оно вышло и waitpid отработало, но > дочка осталась жива и продолжает себе работать. > я тут поштудировал perldoc на waitpid и на readline но не могу понять > в чем проблема может быть? > > PS: задача приложения - держать счетчики по выводимому логу и > рестартить дочку если та по какой-то причине мрет. > -- С уважением Анатолий.