среда, 30 апреля 2014 г.

Сайгон. Театр кукол на воде.


Намедни с супругой посетили еще один сайгонский аттракцион - Театр кукол на воде (http://www.goldendragonwaterpuppet.com/Programme.asp). К сожалению, фото не будет - телефон очень плохо снимал в полумраке. Поэтому буду красочно все описывать словами :).

понедельник, 28 апреля 2014 г.

When Redis failover fails

Given:
- 2 Redis instances running in replication mode (master and slave). Master node went down, so only slave is running
- 2 Redis Sentinels that are trying to start failover process
- Sentinel's log with error:
-failover-abort-no-good-slave master primary [some_ip] [some_port]

What does it mean? 

That means (obviousely) Sentinel just cannot find appropriate slave to promote it to master. But wait! We have slave node! It is running! What's wrong then? The trick is: our running slave has corrupted data, so it doesn't meet requirements for promotion.
Possible situation: master went down when slave was synchronizing data. The more data you have to synchronize, the higher probability of such situation.

What to do?

Check your slave's redis.log. If it is constantly screaming something like:
[17319] 22 Apr 10:44:29.689 * Connecting to MASTER [address][17319] 22 Apr 10:44:29.689 * MASTER <-> SLAVE sync started[17319] 22 Apr 10:44:29.689 # Error condition on socket for SYNC: Connection refused

that means, the slave was interrupted during synchronization. It cannot be promoted to master, Sentinel cannot help you with it. You have to restart master by your own means (custom script, your own hands, etc).
That's what I got. Probably, there is another solution that comes from Redis. Please share if you know more about it.

How to reproduce.

Given:
- 2 Redis instances. They are configured to run in replication mode (let's name them R1 - currently master, and R2 - slave).
- 2 Redis Sentinels that are monitoring R1
- ~500Mb of data to keep

What happens when we start our system:
1. R1 loads data into memory
2. R2 starts synchronization

Let's say, synchronization was successful. And let's continue our experiments :)

3. R1 goes down. Let's say, redis process was killed by some cruel IT guy :). In-memory data is lost, process id (PID) is lost as well. But R2 got all the data, so Sentinels promote it to master. Everything ok
4. R1 goes up, Sentinels command it to switch to slave.
5. R1 is slave now, it starts synchronization with R2. R1 performs full synchronization (instead of partial one, which should be faster) because it lost in-memory data and process's pid was changed (http://redis.io/topics/replication).
6. Since we have relatively big dataset (~500Mb), it takes some time to transfer from master to slave (let's say, 5mins)
7. Now R2 goes down...
8. R1 cannot complete synchronization. It tries to get data from R2 again and again, but it's hopeless - R2 was killed. NOOOOOOOOOOOOOOOOOOOOOOOOOoooooo..... (looks like tragic moment in Hollywood movie :))
9. Sentinels cannot promote R1 to master because it's trying to complete synchronization... Our system has no more master... Saaad.

Please leave a comment if you have any idea how to overcome this situation.

среда, 9 апреля 2014 г.

Вьетнам. Сайгон. День 9

Сегодня я решил погулять по городу, сначала забравшись в какое-нибудь отдаленное место. Место оказалось не совсем отдаленное - китайский квартал. Добирался я до него на автобусе №1 от центрального парка.
Возможно, в этом квартале я видел китайцев, но они все были очень похожи на вьетнамцев.
Пейзаж - типичный сайгонский, с примесью китайских иероглифов. В общем-то, тут в местах скопления определенной диаспоры начинают появляться надписи на разных языках - корейском, китайском. Соответственно, в местах скопления русских людей в курортных городах полно надписей на русском :).
Отличительная черта китайского квартала - обилие пагод и других храмов. буквально через каждые 2 улицы стояла пагода, а в ней очень обильно курились благовония - из-за дыма многого снаружи было не разглядеть, нужно заходить внутрь.



Рынки тоже есть в изобилии, однако ассортимент на них немного другой - очень много высушенных трав и кореньев. Запах стоит очень мощный. И не поймешь - то ли лекарства, то ли специи, то ли просто высушенные съедобные травы.

Почему моя трудовая книжка такая толстая?


Я вот думаю, а почему я регулярно раз в год меняю работу? Причем с каждым разом работа становится все чудесатее и чудесатее. Как в плане работодателя, так и в плане места работы. Почему бы не сделать просто как все люди, которые оседают на одном месте и остаются ему верны на протяжении многих лет?

Раньше я держался такой идеи, но теперь есть что-то похожее на страх стать пнем. Мне интересно прочувствовать точки нашей планеты: не спеша измерить их ногами; вдохнуть их порой весьма загаженный воздух; хоть жестами, но пообщаться с местными в стороне от туристических троп. Впоследствии это все можно свести воедино - вдруг кому пригодится.

Да, конечно, все это можно делать и будучи привязанным к одному месту обитания. Скажем, раз в год выезжать куда-нибудь. Но вот только сколько таких "раз в год" осталось? Учитывая, что немалый кусок жизни уже просвистел, а впереди стандартное человеческое "семья-дети", осталось их весьма немного. Поэтому я и меняю работу так, чтобы совмещать полезное с тем, что хочется.

Я никоим образом не пропагандирую образ своей жизни - люди разные, а я вот такой вот по голове стукнутый :). Просто примите, что мне интересно именно вот так.

вторник, 8 апреля 2014 г.

Вьетнам. Сайгон. Прошла неделя

Итак, прошла неделя моего пребывания здесь. Крыша потихоньку возвращается на место, организм привык к жаре (после Петербурга то), а шок от происходящего уже как-то поослаб. Даже по дорогам среди мотобайков ходить уже не страшно :).
Что же произошло за последнюю неделю? Да ничего особенного: окончательное трудоустройство, переезд на постоянную (на ближайший год) квартиру, да прочая бюрократия.

среда, 2 апреля 2014 г.

Поиск жилья в Сайгоне/Хошимине

А вот не буду расписывать :Р
У коллеги все четко описано: http://varyous-simbir.blogspot.com/2013/07/blog-post.html

Вьетнамцы и электроника

По наблюдениям, вьетнамцы пользуются далеко не старинной электроникой - айфоны вполне себе популярны, даже у торговки на рынке видел.
Следующий по популярности сегмент - мобильная электроника бюджетного класса, а именно Nokia Asha, Nokia X. Интересно, а вьеты в мобильных приложениях платят? :)

вторник, 1 апреля 2014 г.

Вьетнам. Сайгон. День 3.

День третий, пора посмотреть на вьетнамский продуктово-вещевой рынок. Причем пойдем не на туристический Ben Thanh market, а куда-нибудь поглубже, в 4й район (Hẻm 178 Đoàn Văn Bơ, Quận 4). Рынок Хошимина - это ужас для европейца. На улице +35, а на рынке продают ВСЕ!!! Фрукты, овощи, мясо, рыбу, яйца, молоко - все! Без холодильников, под тентом в адской духотище. В общем, наша санэпидемслужба была бы в шоке :)

Кроме еды продают там, в общем-то, все, кроме секретов Родины (и тут я не уверен :) ): электронику, мебель, технику, животных, украшения. Причем все действие происходит на ооооочень узеньких улочках, где сложно разойтись двум людям, но куда все равно ухитряются забираться мотобайкеры :)

Вьетнам. Сайгон. День 2.

Итак, день №2. 


Пора мчаться рассматривать квартиру с целью съема, а заодно побродить по городу. Естественно, никаких такси :) Только собственные ноги и автобус, если припрет :)

Но первым делом надо организовать связь. Забежав чуток вперед, скажу, что надо было спросить на ресепшн отеля про покупку симки - они бы подсказали. А так пальцем в один из вариантов, найденных Here Maps (да, оффлайн карты знают, где располагаются офисы Mobifone :) ) и топаем в этом направлении. Только по прибытии выясняется, что все здоровенное здание в ремонте и никого там нет :) Незадача, идем далее - агааа, офис Mobifone еще закрыт и не работает. А ехать смотреть квартиру надо уже СЕЙЧАС. На счастье, рядом уже открыт офис Vinaphone, где мне за 136 КДонгов сделали симку с интернетом (1.5Гб 3G, работает шустро) и еще 50 КДонгов на счету для звонков/смс (~1500 донгов/минута и 250/СМСка).

Вьетнам. Сайгон. День 1

Привет всем! В связи с долговременным понаездом в город Хошимин (он же Сайгон), что во Вьетнаме, хочу не профакапить момент и записать все мысли, зарисовки, заметки, которые мне попадутся или придут в голову.

Такое нужно записывать сразу, пока свежи память и эмоции. Иначе потом будет уже лениво вспоминать и записывать. А если будет не лениво, то текст выйдет скучный и бездушный :) Это я по себе знаю, именно поэтому в моем блоге нет ни одной записи про Нью-Йорк - момент упущен, а вспоминать сейчас очень лениво :).

Буду ли выкладывать фотки? По настроению. Сам я не сильно люблю фотографировать, да и из фотоаппаратов у меня только Nokia Lumia 920, поэтому качество будет соответствующее :). Но если что - спрашивайте, не поленюсь - сделаю тематическую фотосессию того региона, в котором сейчас нахожусь :)

Итак, день 1.


Первый день это перелет и перемещение бренной туристической тушки до гостиницы. Перелет (хвала Аэрофлоту) прошел отлично, только на этапе СПб-Москва при посадке было малость страшновато: то ли пилот неопытный, то ли реально что-то приключилось, но при посадке самолет колбасило из стороны в сторону, а когда он коснулся земли, показалось, что его сейчас развернет. Ну да ладно, как говорит мой друг-летчик: "Посадка является успешной, если из самолета все вышли своими ногами".