@Fsharp_chat

Страница 132 из 772
Evgeniy
16.05.2017
06:39:27
Pawel Пожалуйте.

Pawel
16.05.2017
06:39:53
Спасибо:) Зддравствуйте!

Evgeniy
16.05.2017
09:56:37
Видали? В Try Roslyn появился F#.

https://tryroslyn.azurewebsites.net

Google
Evgeniy
16.05.2017
09:57:20
Можно онлайн смотреть IL и декомпилированный C#.

Most
16.05.2017
09:57:40
давно был вроде)

если не ошибаюсь то с самого начала

Evgeniy
16.05.2017
09:58:11
Не было.

Most
16.05.2017
10:00:08
значит ошибаюсь) интересно, можно ли верить бенчмаркам на benchmarkgame неткоровским между C# и F# или там очень прохладное сравнение)

Igor
16.05.2017
10:00:38
Most
16.05.2017
10:01:04
http://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=csharpcore&lang2=fsharpcore

Evgeniy
16.05.2017
10:02:12
Я обычно смотрел JS, чтобы примерно понять, во что компилируется код. fable.io/repl

Pawel
16.05.2017
10:04:00
А зачем Roslyn? Есть же FCS, он проще

Evgeniy
16.05.2017
10:04:02
@mostdope Код бенчмарков надо смотреть, как обычно. :)

Pawel Я про сайтик.

@sergey_tihon С первой контрибуцией в F#. :)

Dmitry
16.05.2017
10:21:00
значит ошибаюсь) интересно, можно ли верить бенчмаркам на benchmarkgame неткоровским между C# и F# или там очень прохладное сравнение)
я как-то одну штуку (перебор, числосчитание) на F# делал и параллельно на Go (думал, Go учить). Разница - порядок (Го быстрее). Задумался. Переписал для интереса на C# - медленнее чем в Go, но в разы быстрее F#. Переписал F# реализацию с идеоматического кода, на аналогичный C# - стало равно по скорости C#. Деталей уже не помню (больше полугода прошло, и не сильно важно было) но впечатление осталось.

Google
Friedrich
16.05.2017
10:23:20
Всегда стоит смотреть результаты профилирования и, если уж взялся оптимизировать — оптимизируй. Многие считают, что "идиоматичный" код — это такой, который генерирует много мусора :) Вот он и тормозит.

Evgeniy
16.05.2017
10:27:05
Да, тут научный подход нужен. Сначала эксперимент, а потом изменения. :)

Смотрите, как норм пацаны делают. https://alexandrnikitin.github.io/blog/high-performance-dotnet-by-example/

Ed
16.05.2017
10:32:22
кто на ФаблеКонф в Бордо едет?

Летучая
16.05.2017
10:40:10
ща бы в Бордо в мск холодно оч

Most
16.05.2017
10:53:39
да, в мск погодке не позавидуешь)

Evgeniy
16.05.2017
10:59:48
@alexzaitzev Pavel Пожалуйте, господа.

Pavel
16.05.2017
11:00:38
Всем привет :)

Pawel
16.05.2017
11:01:15
я как-то одну штуку (перебор, числосчитание) на F# делал и параллельно на Go (думал, Go учить). Разница - порядок (Го быстрее). Задумался. Переписал для интереса на C# - медленнее чем в Go, но в разы быстрее F#. Переписал F# реализацию с идеоматического кода, на аналогичный C# - стало равно по скорости C#. Деталей уже не помню (больше полугода прошло, и не сильно важно было) но впечатление осталось.
Я тоже подобным занимался, но в итоге забил на F# в пользу Go, хотя код на F# в Suave был в разы короче и понятнее (пилю для интереса небольшенький сайтик чтобы на бетфейре делать ставки по одному центу http://gobet.herokuapp.com/) . После мучений с заливкой докер-контенера в хероку, с кривыми вебсокетами в Suave и пр. таки не выдержал, переписал всё на Go. Результаты по потреблению мозгов и проца поражают воображение.

Алексей
16.05.2017
11:10:38
Здравствуйте, товарищи)

Ed
16.05.2017
11:11:06
Здравствуйте, товарищи)
добро пожаловать

Pawel
16.05.2017
11:18:52
поражают в каком смысле?
Открываю 4 вкладки в браузере - бекэнд на F# пожирает 4-х ядерный проц на 100%. Go - на 2 % на пике. F# - стартует сайт раз в 20 медленне. Ну и докер-образ c приложением на F# для хероку весит аж ~350 МБ, а на гошке весь репозиторий ~7МБ.

Igor
16.05.2017
11:23:43
Most
16.05.2017
11:24:30
как-то очень подозрительно

Pawel
16.05.2017
11:27:32
Проблемы у suave существуют, поэтому сделали giraffe
да, asp net core надо тоже попробовать для сравнения, но только не на голом F#, а F# + лицевой проект на C#, в вижуалстудии. Но у меня там много зависимостей, FPArsec например. Его вроде ещё не сделали под net core

Google
Friedrich
16.05.2017
11:29:12
Это из-за того что там полноценная убунта, надо ставить альпину
Сам ты вряд ли поставишь. Надо под неё неткор пересобирать, потому что там менеджер памяти другой и воще всё другое. Пускай MS развлекается :)

Friedrich
16.05.2017
11:30:09
Ок, про Mono согласен, это можно попробовать, если хочется.

Pawel
16.05.2017
11:30:15
Ну стартует и весит образ, это уже никто не считает. А вот 100% CPU это странно - явно надо профилировать код. (в .net вроде нет разогрева и там сразу jit)
да задалбывает каждый раз такой жыр перезаливать. Да и сам докер тормозит адски. То ли дело в гошке микрокоммиты пушить и сразу же получать результат

Friedrich
16.05.2017
11:31:15
да задалбывает каждый раз такой жыр перезаливать. Да и сам докер тормозит адски. То ли дело в гошке микрокоммиты пушить и сразу же получать результат
Я ни разу не заливал докер-образы никуда (так что простите и поправьте, если я неправ), но разве там не должна включаться хвалёная слоистая файловая система? И ты, типа, заливаешь только те куски, которые у тебя от базового образа отличаются?

Pawel
16.05.2017
11:31:26
А мне норм на f#
Я без VS не могу жыть. как-то ломает меня писать в ionide :)

Igor
16.05.2017
11:31:40
да задалбывает каждый раз такой жыр перезаливать. Да и сам докер тормозит адски. То ли дело в гошке микрокоммиты пушить и сразу же получать результат
Сделай базовый образ с предустановленным .net и зависимостями. У меня пересборка после этого занимала секунды.

Friedrich
16.05.2017
11:32:14
Я без VS не могу жыть. как-то ломает меня писать в ionide :)
А я, наоборот, попробовал и мне очень понравилось — даже обычные F#-проекты изредка редактируют в ionide вместо студии. Ну, тут на вкус и цвет товарищей нет, видимо. У каждого свои предпочтения.

Friedrich
16.05.2017
11:32:46
я имею в виду оправлять докер-образ в хероку
А его туда нужно именно полностью отправлять, со всеми слоями? Ок, тогда это и правда проблема, если никак нельзя по-другому решить.

Roman
16.05.2017
11:33:05
да задалбывает каждый раз такой жыр перезаливать. Да и сам докер тормозит адски. То ли дело в гошке микрокоммиты пушить и сразу же получать результат
Я понимаю вашу любовь к Го, есть даже специальный чатик где все говорят про го) Мы тут в основном обсуждаем F#. Так что стоит обсуждать на проблемы в F# c точки зрения решения их, а не агитации Го)

Pawel
16.05.2017
11:33:45
Friedrich
16.05.2017
11:34:06
Надеюсь, с распространением Core эта проблема решится сама собой.

Roman
16.05.2017
11:35:39
Кстати у меня не получилось поставить новую версию sorbet на ubuntu 17 04 есть тут кто с таким опытом?

Igor
16.05.2017
11:36:33
обычно это решается поддержкой языка программирования в heroku. Но .net наш в пролёте
В чем прикол heroku? Там же цены конские (на уровне azure если не больше). А бесплатное вообще ни о чем.

Google
Roman
16.05.2017
11:37:48
В гуглкалуд есть бесплатные тарифы?

Igor
16.05.2017
11:39:08
бесплатное вполне годится для начала :)
OK, теперь понятно зачем вам GO. Сижу уже пол года на VPS 4gb/4core/50gb ssd за 6eur - и вообще никаких проблем с docker/coreclr.

Friedrich
16.05.2017
11:39:37
Ну, потребление ресурсов важно даже для больших проектов.

Pawel
16.05.2017
11:39:51
В гуглкалуд есть бесплатные тарифы?
на сколько я знаю там кратковременный триал как в azure

Roman
16.05.2017
11:40:18
Igor
16.05.2017
11:40:25
А где ты такую VPS откопал, а? Колись!
scaleway вестимо (6 eur в месяц (там написано 100GB, но реально user space только 50))

Friedrich
16.05.2017
11:41:30
А чего они такие дешёвые? Воруют там чтоли? ?

Admin
ERROR: S client not available

Friedrich
16.05.2017
11:41:54
Ок, это интересно, спасибо.

Nikolay
16.05.2017
11:42:20
А тут случаем Oracle DBA нет никого?

Friedrich
16.05.2017
11:42:57
Смотря по какому вопросу. Я раньше много работал с ораклем, но сейчас уже не факт что что-то подскажу.

Nikolay
16.05.2017
11:43:44
По бэкапу tablespace'а, его перемещению и его импорту на чистую БД)

Friedrich
16.05.2017
11:43:58
У, не, я это только по инструкциям делал.

Nikolay
16.05.2017
11:44:17
В MSSQL блин всё для человеков сделано

В оракле хрен вам

Roman
16.05.2017
11:52:17
Nikolay
16.05.2017
11:52:53
PL/F#?
Не, вопрос немного про другое

Скорее к DBA относится

Pawel
16.05.2017
11:55:09
Ну стартует и весит образ, это уже никто не считает. А вот 100% CPU это странно - явно надо профилировать код. (в .net вроде нет разогрева и там сразу jit)
по поводу "А вот 100% CPU это странно - явно надо профилировать код. (в .net вроде нет разогрева и там сразу jit)" - это проблема реализации архитектуры .net, в которой надо поллить некоторый внешний источник (в моём случае live-результаты футбольных матчей) и пушить клиенту уведомления через вебсокет. На каждую сессию стартуется несколько потоков, так что ничего удивительного в таких результатах нет.

Google
Pavel
16.05.2017
11:55:56
Nikolay
16.05.2017
11:56:14
А зачем бекапить тейблспейс?....
А зачем бэкапить все тейблспейсы?

Мне нужен только один тейблспейс, другие данные не интересуют

Pavel
16.05.2017
11:56:41
Потому что тейблспейс - вторичная структура. Бекапить надо таблицы...

Nikolay
16.05.2017
11:56:56
Нет

Мне нужны View, Tables, Triggers, Sequence

Functions, Procedures

Pavel
16.05.2017
11:57:36
Ну и их.. у тебя таблица может быть разбита на несколько тейблспейсов...

Pavel
16.05.2017
11:59:04
если бекапить только один, то (в общем случе) будет неконсистентно. Поэтому бекапить надо объекты БД. Это таблицы, вьюшки и т.д. В целом, наверное, всё же хочется забекапить схему.

Pavel
16.05.2017
12:01:40
Я понимаю, что оно может течь и всё такое, это хоть и сложно, но фиксится, но блин... тут даже с полингом - я не вижу куда потоки уходят, и почему это может 100% cpu жрать

Pavel
16.05.2017
12:01:53
Судя по всему, это относится к холодному бекапу...

Igor
16.05.2017
12:01:54
А нафига на каждую сессию несколько потоков? Ввод-вывод в дотнете асинхронный, по идее, через IO Completion Ports, то есть даже тут не будут потоки "тратиться".
Кстати да, у нас же не как в GO с go-рутинами, которые можно сотни тысяч создавать и не заботится - они там как-то сами разруливаются. У нас надо подумать или использовать готовый фрейморк типа signal.

Pavel
16.05.2017
12:02:20
Типа Hopac - и можно миллионами создавать

в Hopac есть Stream примитивы, подобные есть в Rx, на них такие штуки же очень удобно пишутся, хоть "холодные", хоть "горячие"

Igor
16.05.2017
12:03:48
Типа Hopac - и можно миллионами создавать
Говорят еще orleans и его можно через прослойку с F# юзать (ну и акторы в akka.net)

Pawel
16.05.2017
12:04:33
Nikolay
16.05.2017
12:05:15

Страница 132 из 772