[Moscow.pm] use Thread vs threads

Victor Efimov victor на vsespb.ru
Вт Фев 2 16:01:59 PST 2016


3 февраля 2016 г., 2:43 пользователь Ivan Petrov
<i.petro.77.00 на gmail.com> написал:
>
>> 1) запускаемый в процессах код по отношению к нашему можно считать как
>> 3rd party code. а сам запуск одного процесса не влияет на логику
>> других.
>> (например - мы пишем Web сервер на perl, и запускаем код "юзеров" как
>> веб приложение, в отдельных процессах).
>> Тогда пусть падают, перезапускаются, мониторятся.
>
>> 2) Мы пишем обычное приложение из нескольких процессов. Ничего из (1)
>> не наблюдается.
>
> случай из жизни:
> стартап. либа работы с Pg хранит в виде json в текстовых полях
> какие-то данные (это еще до версии 9.3 где json появился)
> ну так вот
> тестами код покрыт где-то на 80%
> проект стартовал в 2011-м. в 2016-м сервер упал (пришло письмо)
>
> выяснилось что пользователь поставил запятую в тексте так, что
> JSON-парсер (сторонняя либа) в совокупности с Pg-парсером упали.

Если относится к случаю (2) , то хорошо что он упал. А если бы вы
"продолжили работу" после такой ошибки, то не известно как оно
попортило бы там данные (потестировать тестами, что не попортило бы
данные, ещё сложнее чем этой json ошибки избежать)

>
> пользователь выполнял при этом где-то 200-миллионную по счету
> транзакцию.
>
> ХЗ в общем как у вас ничего не наблюдается.
> подозреваю что вы там ничего серьезного не пишете :)
>

"Мы" не ко мне относилось - это было описание кейза (второго, из двух)

> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org


Подробная информация о списке рассылки Moscow-pm