<div dir="ltr">Image::Magick позволяет считывать EXIF-тег ориентации. А потом, в соответствии с ним, можно развернуть фотку.<div><br></div><div><div>        my $orient = $image->Get('format', '%[EXIF:Orientation]');</div>
<div>        $image = $image->Coalesce;<br></div><div>        if ($orient == 2) {<br></div><div>                $image->Flip();</div><div>        } elsif ($orient == 3) {</div><div>                $image->Rotate(degrees => 180);</div>
<div>        } elsif ($orient == 4) {</div><div>                $image->Rotate(degrees => 180);</div><div>                $image->Flip();</div><div>        } elsif ($orient == 5) {</div><div>                $image->Rotate(degrees => 90);</div>
<div>                $image->Flip();</div><div>        } elsif ($orient == 6) {</div><div>                $image->Rotate(degrees => 90);</div><div>        } elsif ($orient == 7) {</div><div>                $image->Rotate(degrees => -90);</div>
<div>                $image->Flip();</div><div>        } elsif ($orient == 8) {</div><div>                $image->Rotate(degrees => -90);</div><div>        }</div></div><div><br></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">17 апреля 2014 г., 12:23 пользователь Dmitry Eremeev <span dir="ltr"><<a href="mailto:dmitry@eremeev.ru" target="_blank">dmitry@eremeev.ru</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="auto"><div>Коллеги, привет!</div><div><br></div><div>Есть у меня один типа древний фотохостинг, так дети повадились загружать картинки сразу с моб устройств и некоторые фотки повернуты на бок.</div><div><br></div>
<div>Мож кто сталкивался? Средствами cpan можно определить "землю" у фотог?</div><div><br></div><div><br></div><div>Спасибо!</div><div><br></div><div> <br><br>Yours,<div>Dmitry Eremeev</div><div><a href="tel:%2B7%20906%20700-57-71" value="+79067005771" target="_blank">+7 906 700-57-71</a></div>
</div><div><br>17 апр. 2014 г., в 14:09, Andrei Lukovenko <<a href="mailto:aluck@cordeo.ru" target="_blank">aluck@cordeo.ru</a>> написал(а):<br><br></div><blockquote type="cite"><div><div dir="ltr">Привет,<div><br></div>
<div>  Мне нравится эта мысль. :) Вот это <a href="http://search.cpan.org/~dams/Redis-1.972/lib/Redis.pm" target="_blank">http://search.cpan.org/~dams/Redis-1.972/lib/Redis.pm</a> стабильно, или посмотреть куда-то ещё.</div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">16 апреля 2014 г., 18:22 пользователь Akzhan Abdulin <span dir="ltr"><<a href="mailto:akzhan.abdulin@gmail.com" target="_blank">akzhan.abdulin@gmail.com</a>></span> написал:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:arial,sans-serif;font-size:16px">Redis</div><div style="font-family:arial,sans-serif;font-size:16px">

1) сохранится</div><div style="font-family:arial,sans-serif;font-size:16px">2) cluster, rw  slaves и иные варианты</div>
<div style="font-family:arial,sans-serif;font-size:16px">3) это не задача очереди</div><div style="font-family:arial,sans-serif;font-size:16px">4) задание можно не забирать из очереди, а перекладывать в другую, что и гарантирует, что задания не теряются, а меняют, скажем так, статус.</div>


</div><div class="gmail_extra"><br><br><div class="gmail_quote">16 апреля 2014 г., 11:07 пользователь Andrei Lukovenko <span dir="ltr"><<a href="mailto:aluck@cordeo.ru" target="_blank">aluck@cordeo.ru</a>></span> написал:<div>

<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Ну, раз мы заговорили о специальных случаях, и о костылях...<div><br><div>1) Что произойдёт при падении сервера очередей - очередь потеряется?</div>


</div><div>2) Что произойдёт при недоступности сервера очередей (упал NOC)? Как обеспечивается резервирование очереди?</div>
<div>3) Как происходит балансировка нагрузки между обработчиками заданий?</div><div>4) Чем обеспечивается обработка заданий? Что, если обработчик сдох, не дав ответа? А что, если он просто долго обрабатывает?</div><div><br>



</div><div>Расскажите о своей любимой очереди. :)</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">16 апреля 2014 г., 9:54 пользователь Oleg Nurtdinov <span dir="ltr"><<a href="mailto:j@jumper.cc" target="_blank">j@jumper.cc</a>></span> написал:<div>


<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>+1<br><br>Зачем городить костыли, если очередь придумали специально для таких случаев?<br><br><br>Tue, 15 Apr 2014 21:04:56 +0400 от Hoots The Owl <<a href="mailto:iozherelyev@gmail.com" target="_blank">iozherelyev@gmail.com</a>>:<div>



<div><br>
<blockquote style="border-left:1px solid #0857a6;margin:10px;padding:0 0 0 10px">
        <div>
        



    









        
        


        
        
        
        
        

        
        

        
        



<div>
        
        <div>
                
                
                        <div><div dir="ltr">Если лень строить, заюзай очередь какую нибудь :)</div><div><br><br><div>15 апреля 2014 г., 21:02 пользователь Andrei Lukovenko <span dir="ltr"><<a href="https://e.mail.ru/compose/?mailto=mailto%3aaluck@cordeo.ru" target="_blank">aluck@cordeo.ru</a>></span> написал:<br>




<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Решение с сокетом кажется чересчур сложным?</div><div><br><br><div>
15 апреля 2014 г., 20:16 пользователь Павел Щербинин <span dir="ltr"><<a href="https://e.mail.ru/compose/?mailto=mailto%3adzirtik@gmail.com" target="_blank">dzirtik@gmail.com</a>></span> написал:<br>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr">Привет.<div><br></div><div>Есть довольно простая задача, требуется отправит несколько запросов, например инвалидация кеша facebook, по кнопке на странице, но не хочется ждать ответа от удаленного сервера.</div>






<div><br></div><div>Идея решения такая, построить демона на AE который будет слушать соккет, куда мы будем писать, отключатся а демон будет в неблокирующем режиме рассылать запросы.</div><div><br></div><div>Собственно вопросы:</div>






<div>1. Есть ли альтернативные и простые пути этой задачи?</div><div>2. Есть ли альтернативы сокету? (rpc?)<span><font color="#888888"><br clear="all"><div><br></div>-- <br>С Уважением, <div>Щербинин Павел</div>

</font></span></div></div>
<br></div></div><span><font color="#888888">--<br>
Moscow.pm mailing list<br>
<a href="https://e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></font></span></blockquote></div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br>Best regards, Andrei<br><span><a href="tel:%2B7-937-847-60-74" value="+79378476074" target="_blank">+7-937-847-60-74</a></span>
</font></span></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="https://e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br></div>

</div>
                        <div>-- <br>
Moscow.pm mailing list<br>
<a href="https://e.mail.ru/compose?To=moscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br>
</div>
                
                
        </div>

        
</div>


</div>
</blockquote>
<br></div></div></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div></div></div><div><div><br><br clear="all"><div><br></div>-- <br>Best regards, Andrei<br><a href="tel:%2B7-937-847-60-74" value="+79378476074" target="_blank">+7-937-847-60-74</a>
</div></div></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div></div></div><br></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br><br clear="all"><span class="HOEnZb"><font color="#888888"><div><br></div>-- <br>Best regards, Andrei<br><a href="tel:%2B7-937-847-60-74" value="+79378476074" target="_blank">+7-937-847-60-74</a>
</font></span></div><span class="HOEnZb"><font color="#888888">
</font></span></div></blockquote><span class="HOEnZb"><font color="#888888"><blockquote type="cite"><div><span>-- </span><br><span>Moscow.pm mailing list</span><br><span><a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a></span><br>
</div></blockquote></font></span></div><br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br></div>