Automatyzacja tworzenia nowego projektu i repozytorium w .NET Core i GitHub

Dziś krótki wpis o automatyzacji tworzenia nowego projektu. Obecnie pracuje w zespole gdzie dosyć często tworzone są nowe projekty. Do tej pory tworzyliśmy zadania w jirze, które polegały właśnie na stworzeniu projektu i repozytorium itp. Stało się to uciążliwe więc zautomatyzowaliśmy ten proces przy pomocy prostego skryptu. Przed jego uruchomieniem Więcej…

Automatyzacja testów integracyjnych z użyciem dockera

Cześć! Dziś postaram się opowiedzieć trochę o automatyzacji testów integracyjnych przy pomocy dockera.   Według klasycznej piramidy testów, testy integracyjne powinny stanowić 20% wszystkich testów. Piramida ta jednak odnosiła się do aplikacji monolitycznych. W przypadku rozproszonej aplikacji ilość testów integracyjnych powinna się zwiększać. Oczywiście, jak zwykle, to zależy od indywidualnej Więcej…

SQL LIKE – Kiedy Twój serwer płonie cz. 2

Cześć, ten post jest kontynuacją krótkiej serii na temat alternatyw dla zasobożernej klauzuli LIKE w SQL Serwerze. Jeśli nie widziałeś poprzedniej części, zachęcam Cię do zapoznania się z nią. Są tam opisane zagadnienia oraz domena problemu o których będę wspominał w tej części. Część pierwszą możesz znaleźć tutaj. Jeśli rozwiązania istniejące w Więcej…

SQL LIKE – Kiedy Twój serwer płonie cz. 1

Większość projektów, w których brałem udział posiadało funkcjonalność wyszukiwania tekstowego. We wszystkich z nich było to zrealizowane klauzulą `LIKE` w SQL. Często ten element aplikacji stawał się wąskim gardłem i redukował responsywność aplikacji. Kiedy serwery dalej płoną, opiszę tutaj po pokrótce kilka alternatyw dla tego rozwiązania. Oczywiście `LIKE` nie zawsze Więcej…

Migracja 110 mln wierszy z SQL Server do Elasticsearch

Cześć. Dziś postaram się opisać, jak zmigrowałem dosyć sporą ilość danych (110 mln wierszy) z SQL Servera do Elasticsearcha. Zacznijmy od konfiguracji ES. Użyłem do tego Kibany. Tworzymy index: PUT /nazwa-indexu Dla zwiększenia wydajności dodawania nowych dokumentów warto ustawić dwie zmienne: PUT /nazwa-indexu/_settings { “index”: { “refresh_interval”: “-1”, “number_of_replicas”: 0 Więcej…