CI/CD pipeline z użyciem Kubernetesa, AWS, Azure i .NET Core – stawianie klastra na AWS

Cześć! Zapraszam na nową serię wpisów dotyczącej stworzenia pipeline CI/CD z użyciem Kubernetesa, chmury AWS, Azure i .NET Core. Pierwszy wpis poruszy temat stawiania klastra w chmurze AWS. Przegląd architektury Cały pipeline będzie miał następujący przepływ: Wypchnięcie kodu do repozytorium GitHub. Zbudowanie aplikacji w TravisCI. Wypchnięcie obrazu dockerowego do prywatnego Więcej…

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. 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:

Dla zwiększenia wydajności dodawania nowych dokumentów warto ustawić dwie zmienne:

refresh_interval odpowiada za aktualizacje informacji o naszym indexie, natomiast number_of_replicas Więcej…