IIS Request filtering проти ddos-атаки

Лежимо
Замовник, чиї сайти я підтримував раніше, звернувся з тим, що сайт лежить і віддає 500 помилку. У нього стандартний сайт ASP.NET WebForms, не скажу, що дуже навантажений, але бували проблеми з продуктивністю бази даних (MS SQL Server на окремому сервері). Нещодавно сервер БД поміняли і перенесли дані.

Цей сайт не основний бізнес замовника, тому практично не обслуговувався. У нього не налаштоване ніякого моніторингу  і збору метрик і взагалі за ним особливо не стежать.

Дані телеметрії
Які аномалії кинулися в очі:

  1. Процес w3wp використовував понад 50% CPU (зазвичай сильно менше).
  2. Кількість потоків у цьому процес стабільно приростало (сайт не встигав обслужити клієнтів).
  3. Диск на сервері БД використовувався на 100% (Active Time).
  4. Довжина черги звернень до диску з базами проекту була великою (звичайно в районі нуля-одиниць).
  5. Оперативна пам'ять на сервер БД використана повністю.
  6. Профайлер показав, що є один гарячий метод, який ходить в БД.

Читати далі →

.NET Portability Analyzer


.NET Portability Analyzer це зовсім не новий додаток, яке, по причині появи .NET Standard мало б стати цікавим для розробників. Портируемость коду прискорює роботу команд в рази. Якщо вам цікаво дізнатися наскільки переносимо на іншу платформу ваш код, то ви можете використовувати .NET Portability Analyzer, який доступний у вигляді розширення для Visual Studio і у вигляді окремого консольного додатку.

.NET Portability Analyzer актуальне для розробників .NET, .NET Core, UWP, Xamarin і Mono.
Далі пропоную вашій увазі факти і опис процесу використання.

Читати далі →

Шукаємо і аналізуємо помилки в коді Orchard CMS

Orchard — це безкоштовна система управління контентом з відкритим вихідним кодом, що є частиною галереї ASP.NET-проектів з відкритим вихідним кодом некомерційного фонду Outercurve Foundation.
<img src=«habrastorage.org/getpro/habr/post_images/083/625/b69/083625b69b89979350245888d8bc98d0.png» alt=«Picture » 4" />
Для нас, розробників статичного аналізатора PVS-Studio, це ще одна можливість перевірити цікавий проект, розповісти людям (і розробникам в тому числі) про знайдені помилки і, в свою чергу, ще раз протестувати наш аналізатор. Сьогодні мова піде про помилки, знайдених у проекті Orchard CMS.

Читати далі →

Лінь, рефлексія, атрибути, динамічні складання

Невеликий досвід, отриманий завдяки ліні

Роки три тому, я працював на одну фірму. Було нас 4 програміста. Один писав бізнес логіку програми. Описував він її за допомогою інтерфейсів (interface). Логічні зв'язки, залежності і т. д. Наше ж завдання було реалізувати ці інтерфейси і пов'язати з GUI. Основною проблемою в цій системі були постійні зміни структури зв'язків і параметрів. Тобто нам доводилося постійно займатися правкою і рефакторінгом.

Я людина досить ледачий. Тому прийшла думка — невже не можна якось це автоматизувати. І я сів за книжки.

перший Крок

Перша ідея була достатня явна і проста. Інтерфейси міститися в окремих файлах — так чому б не розпарсити їх і створити текстовий файл зі згенерованим класом. Так і було зроблено.

На жаль тих джерел не збереглося, але є аналог, кому цікаво, може подивитися(класи будуються на основі таблиць бази даних)
Читати далі →

ASP.NET Core: Ваше перше додаток на Mac з використанням Visual Studio Code

Представляємо вам останню статтю з циклу з розробки на ASP.NET Core. У даній статті ви дізнаєтеся як можна написати своє перше додаток ASP.NET Core на Mac.



Читати далі →

C#7 — інтерв'ю з Jesse Liberty і Андрієм Акиньшиным



Jesse Liberty відомий як автор численних книг. Крім того, він є автором безлічі курсів на Pluralsight, сертифікованим Xamarin Developer, а також Microsoft і Xamarin MVP. Останнім часом в область його уваги потрапили Xamarin, Angular 2 і ASP.NET Core. Джессі веде подкаст під назвою Yet Another Podcast, в якому спілкується з цікавими особистостями зі світу розробки та ігор.

Нам вдалося поговорити з ним про майбутнє релізі C# 7.0 і про його виступ на DotNext в Москві. Крім того, на цю е тему нам вдалося поставити кілька несподіваних запитань і Андрію Акіньшину, розробнику З нової# IDE Rider JetBrains.

Читати далі →

Митап спільноти MSK.NET у «Лабораторії Касперського»

Як відомо, платформа .NET активно використовується безліччю програмістів по всьому світу. Є у неї чимало шанувальників і в Москві. Зокрема, це співтовариство MSK .NET, яка проводить регулярні зустрічі, де учасники обговорюють нові підходи, хінти і практики розробки для цієї платформи.

Серед учасників спільноти є і наші співробітники — адже в наших проектах .NET також активно використовується. Тому чергову зустріч MSK .NET було вирішено провести у нас, в штаб-квартирі «Лабораторії Касперського».

image
На зустрічі, яка відбудеться 14 листопада в 19:00, разом з експертами ми поговоримо про прийоми оптимізації desktop-додатків і діагностики проблем .NET.


Читати далі →