@rubylang

Страница 13 из 1684
Eugene
10.05.2016
21:43:55
ну вк например не даёт больше 50 запросов в секунду

yopp
10.05.2016
21:43:59
за счёт заведения

Eugene
10.05.2016
21:44:05
а это асинхронность

не туда

Google
yopp
10.05.2016
21:44:26
и давай, хуйни SAX парсер в несколько потоков и потом мы с тобой поговорим ;)

Mikhail
10.05.2016
21:44:44
парни вы че матерный хуй потерли) давайте без него

нокогиря норма

Для типичных задач норм. Для прода быстрого смотрел, есть вроде на эликсире решения

или на ноде

yopp
10.05.2016
21:45:35
шта

Mikhail
10.05.2016
21:45:42
хотя питонодрочеры говорят что у них лучшие парс

yopp
10.05.2016
21:46:28
этот Михаил сломался, несите нового.

Mikhail
10.05.2016
21:46:51
да пох ваще

?

Eugene
10.05.2016
21:47:14
ну мы изолированы рубями

не забывай

yopp
10.05.2016
21:47:39
мы изолированны исключительно нашим разумом

Google
yopp
10.05.2016
21:47:57
но сравнивать нокогири с парсерами в других языках, это чота говно

Mikhail
10.05.2016
21:48:32
если с говняной вершины наблюдать за происходящем, гавнецом всегда пахнуть будет)

Как никрути

yopp
10.05.2016
21:48:56
нокогири это плохой фонтенд к libxml2

эти вообще всё сказано

1) биндинг к нативной либе 2) плохой

а хороших биндингов в руби не бывает

так что нокогири это игрушка, с реальными задачами оно справляется плохо и постоянно ломается в самаых неожиданных местах. отладка сводится в ковырянии в кишках через gdb

а это уже приговор

Eugene
10.05.2016
21:51:50
т.е. вместо nokogiri лучше использовать oga?

yopp
10.05.2016
21:52:20
да

рекомендую твиттер йорика

https://twitter.com/yorickpeterse

там если назад отмотать будет отличный момент состоящий приемущественно из fuck, когда йорик писал первую версию oga

чтоб понять насколько это неблагодарная задача писать html парсер

Vlad
10.05.2016
21:56:28
Ой, ну классическая проблема по отстрелу яиц себе

Обычно встречается во всяких задача

Типа "украсть товары с магазина"

И чувак давай regexp херачить

По возможности, избегайте

Google
Vlad
10.05.2016
21:58:24
Нлкогири норм норм если его для xml использовать

yopp
10.05.2016
21:58:48
да не норм оно

яж говорю, многопоточный SAX парсер и всё, пизда вашей нокогири

Vlad
10.05.2016
21:59:22
Пример работы со сложным xml (saml) в геме ruby-saml

yopp
10.05.2016
21:59:43
оно в тепличных условиях будет сносно работать, но в продакшене на нагрузке будет падать набок в самых неожиданных местах

плюс собрать нокогири тоже квест

Vlad
10.05.2016
21:59:56
Многопоточный, ну это лучше в джаву смотреть

yopp
10.05.2016
22:00:13
какая жаба, вы о чём

простая задача: у нас здоровый файл, мы хотим по мере чтения пропихивать его в базу

смысла делать в один поток нет, можно пихать в несколько

есть даже SAX для этого

теперь добавим туда треды и получим ой

yopp
10.05.2016
22:01:38
ладно если бы ой был детерменированный

а тут ой совершенно случайный и зависит от удачи

повезло: всё работает отлично, только течёт

не повезло, оно в полнолуние, когда девственница бреет лобок в сан-фанциско, падает на бок

причём не просто один раз, а берёт и падает пока она лобок не добреет

а потом снова всё хорошо

Vlad
10.05.2016
22:03:31
Печаль, это все руби течет

yopp
10.05.2016
22:03:56
это не руби течёт, это биндинг к libxml2 течёт

Google
yopp
10.05.2016
22:04:06
с биндингами есть огромная проблема

им похуй на сборщик мусора, по очевидным причинам

Vlad
10.05.2016
22:05:21
Ну короче, для это jvm естб

Для всех этих xml и уж тем более sax

Ты инженер или рубироид

?

yopp
10.05.2016
22:07:39
я евангелист продуктивных методик оптимальных систем генерации идеального кода в условиях жестоко ограниченных ресурсов

*жестко

но можно и жестоко

Admin
ERROR: S client not available

yopp
10.05.2016
22:09:13
но вообще я теперь инженер в завязке

хотя это тоже спорное утверждение. ВСЁ ОЧЕНЬ СЛОЖНО

Eugene
10.05.2016
22:20:49
боитесь ли Вы переходить по сокращенным ссылкам гугла, вк ? или же сделать более краткую ссылочку на гист в шапке чата?

yopp
10.05.2016
22:22:30
зачем?

Eugene
10.05.2016
22:26:07
не знаю, по мне так кратенькая ссылочка красивее смотрится

yopp
10.05.2016
22:26:19
экономия на спичках

так сразу видно куда ведёт и чего ожидать

Vlad
11.05.2016
08:28:56
насчёт xml и руби - https://github.com/onelogin/ruby-saml/blob/master/lib/xml_security.rb#L243

yopp
11.05.2016
09:09:58
какой мерзкий и отвратительный код

unless digests_match?(hash, digest_value) @errors << "Digest mismatch" return append_error("Digest mismatch", soft) end

Google
yopp
11.05.2016
09:10:23
ужас

а за такое надо открывать руки: document = Nokogiri.parse(self.to_s) do |options| options = XMLSecurity::BaseDocument::NOKOGIRI_OPTIONS end

что скорее всего бага

Vlad
11.05.2016
09:33:28
ну тут логика такая - проверяется xml файл по алгоритму, там мего спецификация есть.

поясни, про 2-й пример, что там отрывать?

yopp
11.05.2016
10:01:26
это крайне фиговый способ конфигурации, когда ты меняешь значение локальной переменной внутри контекста

во-первых, если там вместо options бдует otpions ты об этом даже не узнаешь

во-вторых, тебя ожидает уйма смешных эффектов если в родительском контексте есть options

в 1.9 поправили багу с правильным затенением локальных переменных, но один фиг

например дублирование функциональностии явное: return append_error и @errors << ...

Vlad
11.05.2016
10:07:55
ну да, не очень изящно, это append_erorr имеет важный параметр soft

ошибки либо накапливаются, либо сразу возвращается с первой попавшейся ошибкой

и сделано конечно грубо

вот в этом коде https://github.com/sportngin/saml_idp/blob/master/lib/saml_idp/saml_response.rb

private как то криво используется

видимо забыли что монжо просто private

и все методы будут скрыты

но это опен сорс, и он работчий :) https://github.com/sportngin

@dd_bb скинь твой гитхаб полюбоваться на код

yopp
11.05.2016
10:24:10
https://github.com/y8 наслаждайся

Eugene
12.05.2016
14:01:07
http://aaronlasseigne.com/2016/05/11/dont-forget-about-infinite-enumerators/?utm_source=rubyweekly&utm_medium=email

Страница 13 из 1684