Reading time ~2 minutes I’m taking a short break from Hangfire series, but I will get back to it. This time - Where did my memory go ? Or to be more exact: Why is this using so much memory? The story starts with one IIS application pool using around 6 Gigabytes of memory on one of our test environments. It was several times above the values that we expected it to use, so we decided to investigate. Without much thinking we fired up Visual Studio installed on the test server, and attached to the proce...
Architektura 2969 dni, 5 godzin, 10 minut temu 64 źrodło rozwiń
One of the steps in cookit is calculating similar recipes. This is what you can see on the left on the recipe page like this For the sake of clarity and manageability it’s scheduled as separate Hangfire jobs. Because cookit is running 5 workers, so similarities are calculated for 5 websites concurrently. The process uses cosine similarity, so it allocates a huge list at start and calculates similarities. A very CPU heavy operation. So some time after triggering all recipes recalculation I saw this in...
Kilka lat temu (będzie już niedługo 5!) napisałem dla WSS tekst 'Admin czy nie admin' o narzędziach Sysinternals, dzięki którym można dosyć sprawnie poradzić sobie ze standardowymi problemami związanymi z ograniczonym dostępem do systemu. Linka nie podaję, ponieważ lada moment wss.pl przenosi się i zapewne stare sznurki pourywają się, więc ‘google is your friend’ :). Już wówczas były to potężne narzędzia diagnostyczne dające bardzo wiele informacji o tym co się aktualnie dzieje w systemie. Od tamtej chwi...
SysInternals to pakiet znakomitych narzędzi wychodzących spod ręki Marka Russinovicha oraz Bryce’a Cogswella . Choć w nazwie mają Sys - co sugerowałoby ich przeznaczenie administratorskie, to my, skromni programiści także możemy skorzystać z ich funkcjonalności i użyć ich do swoich celów. Dziś pokażę, jak 3 z nich mogą wspomóc pracę developera-poszukiwacza błędów. Produkcja Jak wszyscy wiemy jest to takie specyficzne środowisko, że nie zawsze mamy dostęp do swoich ulubionych narzędzi (patrz Visual Stu...
Zacznę kontrowersyjnie. Lubię jak aplikacja nie działa, tak jak powinna. To znaczy - niekoniecznie lubię sam fakt niepoprawnego działania, ale dzięki temu mam możliwość odpalenia debugger’a (lub innego użytecznego narzędzia – głównie SysInternals), aby dowiedzieć się dlaczego i spróbować to naprawić. Ostatniego czasu ciekawych wrażeń dostarcza(ło) mi IE8. Pewnego dnia, bez powodu, IE na moim laptopie zaczął raczyć mnie niniejszym błędem jeszcze nawet przed tym jak się dobrze uruchomił: