@dlangru

Страница 481 из 719
Oleg
26.03.2018
12:15:45
единственное что в винде я не могу понять это на кой хер столько разных версий .NET framework'ов без обратных совместимостей

и ок... ладно... почему бы их сразу вместе с виндой не включить в дефолтную поставку?))

Pavel
26.03.2018
12:16:41
У меня как раз проект не запустился на .NET 4.7.1, VS орал и сыпал ошибками, но прекрасно запустился на 4.7.0 ))

Oleg
26.03.2018
12:16:59
вот вот вот

Google
Evgeny
26.03.2018
12:17:02
Вы что, на Windows глюков не бывает.

Dmitry
26.03.2018
12:17:24
Ага. Windows в этом плане ничем не отличается, но Дмитрий тут нам втирает, что на Windows так не бывает. Ха-ха-ха.
У меня с виндой никогда не было таких странных глюков если не считать Win8

Evgeny
26.03.2018
12:17:50
У меня с виндой никогда не было таких странных глюков если не считать Win8
Ну значит тебе очень сильно повезло, ну прямо вообще мегаповезло.

Dark
26.03.2018
12:18:02
Evgeny
26.03.2018
12:18:10
Ну или ты таки немножечко нас обманываешь :)

А у меня с линуксом не было глюков. Аргумент?
Аргумент. У меня центося болтается на серваках вообще без гуя, там в принципе не может быть ТАКИХ глюков ?

Dmitry
26.03.2018
12:19:40
Без гуи да. Тут не спорю

Без гуи там нечему глючить

Как только начинается гуи начинаются глюки

Evgeny
26.03.2018
12:20:17
Я каждый день работаю с утра до вечера на центоси. Я вот прямо сейчас сижу в ней и пишу в группу.

Maxim
26.03.2018
12:20:43
Как пользователь Kubuntu в качестве домашней ос с девятилетним стажем и пользователь Win7 в качестве рабочей ос, могу сказать, что по стабильности они практически сравнялись

Evgeny
26.03.2018
12:20:51
Были вот такие тормоза когда запускал компиляцию проектика. Потом сделал 16Гб оперативы и забыл о тормозах.

Dark
26.03.2018
12:21:09
А я пишу с арча и i3wm. Глюков не вижу

Google
Evgeny
26.03.2018
12:21:27
Виснут отдельные приложения, сама система не глюкавая

Maxim
26.03.2018
12:21:42
в Kubuntu только два перманентных бага, которые, кажется, останутся на всю жизнь: слетающий Plymouth, когда юзаешь родные дрова NVidia, и фризы при копировании на USB)

Evgeny
26.03.2018
12:21:54
Косяки с гуями могут быть от кривых видеодров, с которыми в центоси не ахти.

Maxim
26.03.2018
12:22:28
при этом обновляюсь я из backports, наверняка, если бы сидел исключительно на кошерном LTS, было бы стабильнее, чем последние версии виндов

Dmitry
26.03.2018
12:22:34
Один раз падала из за acpi. Это глюки явно не уровня приложений

Evgeny
26.03.2018
12:22:54
В целом десятая виндузятина мне нравится, если не считать ее неудержимую страсть принудительно обновлятся, когда ей вздумается.

Один раз падала из за acpi. Это глюки явно не уровня приложений
Ну всякое бывает. Безглючного ничего нет. Просто с Windows тоже самое. Глючит и падает по разным причинам, а может и работать годами.

В линупсе root - истинный админ, в Windows даже будучи админом можно не суметь даже файл стереть. Меня это чудовищно бесило. Сука, я тут самый главный на этом компьютере, а вот хуй, у вас нет прав, бла-бла-бла. У админа нет прав :lol:

Dark
26.03.2018
12:25:57
Ну так в линуксе тоже нельзя стереть файл, открытый в программе, не?

Dark
26.03.2018
12:27:32
ну попробуй sudo rm -rf / :D
А точно) Но вот размонтировать использующуюся фс нельзя

Pavel
26.03.2018
12:28:07
Если root может все, то может ли он создать такой файл который сам не сможет удалить?

Evgeny
26.03.2018
12:28:29
А точно) Но вот размонтировать использующуюся фс нельзя
Не уверен, что вот ну вообще низзя. Скорее всего таки как-то можно.

Dark
26.03.2018
12:29:14
Не уверен, что вот ну вообще низзя. Скорее всего таки как-то можно.
Низя-низя. Особенно если к ней что-то примонтированно

Только umount -R можно

Evgeny
26.03.2018
12:30:14
Dark
26.03.2018
12:46:16
SELinux'ы всякие

Google
Denis
26.03.2018
13:03:02
Кстати, десктопы с ECC уже завезли?

Oleg
26.03.2018
13:08:19
Кстати, десктопы с ECC уже завезли?
хз https://ru.aliexpress.com/item/x58-ecc-ram-LGA-1366-DDR3/32834139773.html

Dmitry
26.03.2018
13:26:24
Продолжил я с докером разбираться. Все же куча народу считает что это дикий костыль. Вся эта изоляция оказалась лишь новой точкой отказа в которой и дыры находят критические и тд. Вот пару интересных комментов: У фанатов докера пока не наступило отрезвление технологией, вполне нормальное состояние, когда ее пихают везде — докер сейчас там-же, где были биткоины когда за штуку баксов перевалили, остынут, останется в тестировании, в куче микросервисов, но продакшен базы в докер пихать перестанут -- Да, "продакшен-база" в докере — это отлично. Недавно видел такое — база почти в 100 гигабайт с mysql в продакшене — и my.cnf вообще никак не настроен — как шёл в пакете дефолтный, так в продакшен и ушел. И этого "гуру" девопса очень сильно интересовал вопрос "а как же это бекапить и как ему реплику настроить, если при рестарте контейнера меняется IP?". На вопрос этому "гуре" — "Собственно, зачем было использовать абсолютно не нужную тут прослойку из docker?" я был зачем-то забанен с примерным reason "Я лучше знаю как мне делать, поналезли тут всякие г-ноадмины-советчики". Докер — это отличная возможность переложить проблемы поддержания актуальных версий системных библиотек (того же самого libssl) с поставщиков ОС и сисадминов на никого.

Evgeny
26.03.2018
13:28:37
100ГБ база данных в докере - это сурово :)

Dmitry
26.03.2018
13:29:31
У нас вот в конторе тоже БД в докере. Я хз зачем. Объяснений так и не понял. Видимо логики никакой нет здравой

Evgeny
26.03.2018
13:29:51
в докер еще есть некий смысл, если потом этот контейнер будет рассыпан по сотне серверов

Dmitry
26.03.2018
13:36:05
У нас частично PCI-DSS оправдывают типа чтобы виртуальные изолированные машины не плодить, это единственный более или мене актуальный аргумент

А так как по мне Докер нужен для того чтобы говнокод запускать. Нормальное приложение не должно пол системы засирать и ломать, чего так боятся фанаты докера.

Oleg
26.03.2018
14:34:18
раньше считал, что докер это нечто, что использует ядро основной системы, просто разграничивая доступ (из контейнера наружу не обратиться)

Oleg
26.03.2018
14:34:31
но тут недавно совсем узнал, что докер можно под win

там оно как работает?

Pavel
26.03.2018
14:35:03
так же, просто в win припилили сбоку ядро линукса

Они там начали интегрироваться более плотно

Oleg
26.03.2018
14:35:27
ну типа полноценная виртуализация?

Pavel
26.03.2018
14:36:06
Не знаю точно, но никакой магии там нет. Как-то они запускают линукс параллельно основному ядру и уже на основе него строят сервисы и докеры

Может и да, какая-то изолированная среда

Oleg
26.03.2018
14:36:44
да понятное дело, что магии нет, получается что просто под win будет чуть больше ресурсов отжираться

Google
Pavel
26.03.2018
14:37:06
да вероятно

Но это как правило нужно чтобы разработчику у себя локально поднять проект, врядли кто-то будет крутить докер под виндой в хайлоаде

Pavel
26.03.2018
14:40:47
лоло я сейчас посмотрел и оказывается debian dlang.ru походу как-то запущен в винде ))

root@debian:~# dmidecode | egrep -i 'manufacturer|product' Manufacturer: Microsoft Corporation Product Name: Virtual Machine

https://unix.stackexchange.com/questions/89714/easy-way-to-determine-virtualization-technology

Так, вопрос на миллион, насколько хорош подход, когда в сетевом демоне разные асинхронные таски или треды общаются между собой с помощью посылки сообщений, а не просто вызовами каких-то методов у объектов?

Igor
26.03.2018
14:59:48
Внутри треда дешевле общаться вызовом. Сообще

Сообщения между тредами тоже не магия

Очередь плюс condvar

Admin
ERROR: S client not available

Igor
26.03.2018
15:02:52
То есть внутри треда я бы делал прямые вызовы или отправку нотифаев через eventloop

Pavel
26.03.2018
15:03:16
Внутри треда дешевле общаться вызовом. Сообще
Поскольку у меня вайбовские таски то теоретически я держу возможность их перемещения по тредам, значит разные таски считаем разными тредами.

Igor
26.03.2018
15:05:23
Тогда нужно смотреть какие он даёт средства. Не могусказать

Pavel
26.03.2018
15:05:35
И возвращаясь опять к моей модели - есть главный task Application и есть порожденные таски Worker. Если надо из воркера вызывать метод Application.smth() то надо будет класс Application пробрасывать в worker как зависимость, решать проблемы shared, копирования Application в TLS и т.д. как-то очень замудрено выходит. А вот просто послать из треда в главный сообщение через send!(blabla) выглядит хорошо

А в Application уже будет бесконечный цикл получения сообщений. Получили "smth" -> пошли вызвали this.smth() и результат отправили куда-нибудь в ответную очередь. Никаких shared, все прозрачно.

Stanislav
26.03.2018
15:13:51
а из вайба то сам евентлуп будет где крутится?

Pavel
26.03.2018
15:20:56
Хороший вопрос, я туда не копал но он магически крутится везде ) Мне кажется если запускать таску через runWorkerTask() то там она тоже будет работать со своим евент лупом.

емнип там один евент луп на каждый тред запускается

Stanislav
26.03.2018
15:23:22
хм, а мне почему то думается евентлуп крутится там где запустил через runEventLoop (или runApplication), а runWorkerTask просто в отдельном треде запускает таску

Google
Pavel
26.03.2018
15:30:01
Главное что прямой вызов метода из чужеродного объекта сразу дает кучу проблем с TLS и шаредами

Igor
26.03.2018
15:32:52
да, именно

Stanislav
26.03.2018
15:39:06
лучше скажите что делать, если стыдно? auto r_ipv6 = address.split( ":" ); if( r_ipv6.length == 8 ) { if( r_ipv6.map!( a => to!ushort( a, 16 ) ).array()[ 0..6 ] == [ 0,0,0,0,0,0xFFFF ] ) { this.stack = Stack.IPV4; this.ipv6_address[ 0 .. 2 ] = r_ipv6.map!( a => to!ushort( a, 16 ).swapEndian!ushort ).array()[ 6 .. 8 ]; } else { this.stack = Stack.IPV6; this.ipv6_address = r_ipv6.map!( a => to!ushort( a, 16 ) ).array(); } return; } чувствую я где-то не туда свернул )

это чтобы определить по ipv6 адресу что это ipv4 и привести его к ipv4 виду

я даже в шоке что оно вообще работает.. че подскажете?)

IPV6_V6ONLY If set to 1, AF_INET6 wildcard listening socket will accept IPv6 traffic only. If set to 0, it will accept IPv4 traffic as well, as if it was from IPv4 mapped address like ::ffff:10.1.1.1. Note that if you set it this to 0, IPv4 access control gets much more complicated. блин, может issue накать в вайб-коре. а то реально не оч понятно как с этим работать

Stanislav
26.03.2018
16:21:51
ну смотри, у тебя есть пачка ipv4 и ipv6 адресов. тебе надо коннекты с них принимать. задаются они где-то в конфиге. тебе прилетел коннект - тебе надо проверить, он из списка пиров твоего или нет. тупо переделать все в mapped формат я не могу - во первых эти ipv4 адреса мне нужны будут еще (не переделывать же их потом обратно в ipv4 формат), а во вторых это наглядней когда они в ipv4 виде. надо еще покопать исходники vibe-core

сам vibe-core пытается 2 слушающих сокета создать, на v4 и v6, но почему то на макоси если уже создан v6 - то он просто его юзает и не дает v4 создать

Evgeny
26.03.2018
16:48:24
Хороший вопрос, я туда не копал но он магически крутится везде ) Мне кажется если запускать таску через runWorkerTask() то там она тоже будет работать со своим евент лупом.
вайб по умолчанию стартует несколько рабочих потоков в зависимости от количества процессоров/ядер. Простой runTask гарантирует, что таск будет работать в том же потоке в котором был выполнен этот самый runTask. runWorkerTask стартует таск в одном из рабочих потоков. В каком именно неопределено.

Pavel
26.03.2018
16:54:54
где то я даже помню текст что работать между тредами через посылку сообщений это более рекомендуемый путь чем через shared и всякие мьютексы

прямо в dlang tutorial

Stanislav
26.03.2018
16:55:33
в книге александреску тоже

особенно учитывая сложности реализации лок-фри алгоритмов

блин, конеш вайб-коре удивляет. он плюет на socket options которые ты передаешь)

Pavel
26.03.2018
16:57:41
?

так там и буфер для получения данных выделяется всегда фиксированный 4кб. Даже если ты собрался видео в хайрезе перекачивать.

Stanislav
26.03.2018
17:00:38
я думал щас в енум значит добавлю просто этот флаг ipv6_v6only ага, конечно

Stanislav
26.03.2018
17:18:09
да, можно выключить это поведение. но по хорошему надо перед тем как биндить сокет передать ему явно эту опцию. в принципе уже поправил в eventcore, теперь создается только v6only сокет (посмотрел через netstat) но почему то теперь на том же порту не создается ipv4 сокет

Страница 481 из 719