DotNET

Про производительность .NET, React, Regex

Производительность Performance  /  dotNET  /  React

С удовольствием прочитал статью High-performance .NET by example: Filtering bot traffic. Кстати, к ботам статья почти не имеет отношения, а вот к улучшению производительности — очень даже. В частности, есть примеры использования BenchmarkDotNet, PerfView, Intel VTune Amplifier, ILSpy, WinDbg и unsafe-кода.

Проблемы с connection pool и уровнями изоляции транзакций

Базы данных  /  Внезапно dotNET  /  MSSQL

Продолжаю тему, начатую ранее про дырявые абстракции и TransactionScope. Сегодня ещё одна короткая заметка из категории “Внезапно” и снова про уровни изоляции.

Знаете ли вы, какой будет уровень изоляции, когда вы откроете соединение (для определённости — SqlConnection)? Вопрос с подвохом. Правильный ответ, как обычно — It depends.

Релизы Visual Studio 2017 и .NET Core

IDE  /  dotNET Microsoft  /  Visual Studio  /  dotNET

Вы наверняка в курсе про релиз Visual Studio 2017. Если хочется читать на русском — на Хабре есть более короткая статья Visual Studio 2017 и новые возможности инструментов от Microsoft.

Давайте сначала расскажу про позитивные вещи, про негатив потом.

.NET Core и Visual Studio

dotNET dotNET  /  Microsoft  /  Visual Studio

Сегодня про опыт (мой и моих коллег) и впечатления о .NET Core.

На всякий (почти невероятный) случай кратко о том, что это такое. Microsoft сделал фреймворк для кросcплатформенной разработки. Построил его на немного других принципах — сделал более гранулированным (говоря попросту — нарезали большие DLL-ки помельче), кое-что ещё поменяли.

В итоге имеем возможность писать более быстрые (в том числе, потому что не тянем лишнего) и компактные кроссплатформенные приложения. Проверяли под Windows и Linux — вполне работает. Маководов не было рядом :)

Интересное в ноябре

Новости  /  dotNET News  /  dotNET

Немного странное название для декабрьской статьи, однако, ссылки я собирал давно :) Сегодня ссылки и краткое описание следующих статей:

  • .NET Portability Analyzer
  • Как дизайнить слова
  • AWS Snowmobile
  • TANK — быстрый распределённый лог

Внимание! TransactionScope по умолчанию включает Serializable.

Базы данных  /  Внезапно dotNET  /  CSharp

Сегодня о TransactionScope, уровне изоляции транзакций Serializable и дырявых абстракциях.

Вообще говоря, я раньше много раз сталкивался с распределёнными транзакциями. В какой-то момент я окончательно сформировал своё мнение по этой теме. Получилось что-то вроде: “хватит, я не буду их использовать вообще, разве что в ход со стороны оппонента пойдут огнестрельное оружие и прочие нечестные аргументы”.

По этой причине моё знакомство с TransactionScope свелось к его использованию в интеграционных тестах (без распределённой составляющей, просто для удобного отката транзакций) и редким спорам с коллегами. Но сегодня, внезапно…