Franciszek Krasowski: Zastanawialiście się kiedyś nad tym, czym jest PHP-PM? Jak działa? Jak wypada w porównaniu do innych popularnych rozwiązań? Czy jest wystarczająco stabilny? Franciszek Krasowski odpowie na wszystkie te pytania (a także na te, których jeszcze nie zadaliście).
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...The Software House
Niezależnie od tego, czy jesteście developerami, sysadminami, czy też DevOps Engineers – prawie na pewno mieliście doświadczenie z webowymi panelami dostawców usług infrastrukturalnych takich jak AWS, GCP czy też OVH. Z poziomu tych paneli da się “wyklikać” wszystko, czego potrzeba, ale… czy aby na pewno tędy droga? Środowiskiem bardziej naturalnym dla każdego inżyniera jest wszakże edytor tekstu (czy też IDE) oraz różnorakie polecenia wydawane komputerowi w formie skryptów. Czemu by więc z tego nie skorzystać? Jeśli od klikania bez możliwości pomyłki boli Was ręka, zainwestuj w podkładkę pod mysz… ale przede wszystkim wpadnij na prelekcję Piotra, na której to opowie o założeniach podejścia IaC, jego zaletach oraz przedstawi najpopularniejsze narzędzia.
Adrian Chlubek: Dowiemy się, czym jest Swoole, w jakim celu został stworzony i jakie funkcjonalności oferuje – wszystko to na żywych przykładach. Przede wszystkim jednak spróbujemy odpowiedzieć sobie na pytanie: czy używanie Swoole ma sens?
Repozytorium z przykładami: https://github.com/achlubek/swoole_experiments
Dokumentacja Swoole: https://www.swoole.co.uk/docs/
Czym tak naprawdę jest deployment, co może pójść nie tak i w jaki sposób możemy się przed tym zabezpieczyć, korzystając z Kubernetesa i jego ekosystemu. Zaczniemy od tego, jakie są rodzaje deploymentów, po czym wspomnimy dlaczego należy uważac z healthcheckami. Czym jest Circuit Breaker i jak może nam pomóc? Jak wygląda Canary Analysis w praktyce? Odpowiedzi na te wszystkie pytania z pewnością sprawią, że przycisk “Deploy To Production” przestanie być taki straszny.
O tworzeniu rozwiązań mobilnych z punktu widzenia front-end dewelopera. Omówienie istniejących rozwiązań oraz głębsza analiza biblioteki NativeScript wraz z demem.
Demo #1: https://github.com/pawelkondraciuk/nativescript-hello-world-demo-1
Demo #2: https://github.com/pawelkondraciuk/sample-groceries-demo-2
Franciszek Krasowski: Zastanawialiście się kiedyś nad tym, czym jest PHP-PM? Jak działa? Jak wypada w porównaniu do innych popularnych rozwiązań? Czy jest wystarczająco stabilny? Franciszek Krasowski odpowie na wszystkie te pytania (a także na te, których jeszcze nie zadaliście).
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...The Software House
Niezależnie od tego, czy jesteście developerami, sysadminami, czy też DevOps Engineers – prawie na pewno mieliście doświadczenie z webowymi panelami dostawców usług infrastrukturalnych takich jak AWS, GCP czy też OVH. Z poziomu tych paneli da się “wyklikać” wszystko, czego potrzeba, ale… czy aby na pewno tędy droga? Środowiskiem bardziej naturalnym dla każdego inżyniera jest wszakże edytor tekstu (czy też IDE) oraz różnorakie polecenia wydawane komputerowi w formie skryptów. Czemu by więc z tego nie skorzystać? Jeśli od klikania bez możliwości pomyłki boli Was ręka, zainwestuj w podkładkę pod mysz… ale przede wszystkim wpadnij na prelekcję Piotra, na której to opowie o założeniach podejścia IaC, jego zaletach oraz przedstawi najpopularniejsze narzędzia.
Adrian Chlubek: Dowiemy się, czym jest Swoole, w jakim celu został stworzony i jakie funkcjonalności oferuje – wszystko to na żywych przykładach. Przede wszystkim jednak spróbujemy odpowiedzieć sobie na pytanie: czy używanie Swoole ma sens?
Repozytorium z przykładami: https://github.com/achlubek/swoole_experiments
Dokumentacja Swoole: https://www.swoole.co.uk/docs/
Czym tak naprawdę jest deployment, co może pójść nie tak i w jaki sposób możemy się przed tym zabezpieczyć, korzystając z Kubernetesa i jego ekosystemu. Zaczniemy od tego, jakie są rodzaje deploymentów, po czym wspomnimy dlaczego należy uważac z healthcheckami. Czym jest Circuit Breaker i jak może nam pomóc? Jak wygląda Canary Analysis w praktyce? Odpowiedzi na te wszystkie pytania z pewnością sprawią, że przycisk “Deploy To Production” przestanie być taki straszny.
O tworzeniu rozwiązań mobilnych z punktu widzenia front-end dewelopera. Omówienie istniejących rozwiązań oraz głębsza analiza biblioteki NativeScript wraz z demem.
Demo #1: https://github.com/pawelkondraciuk/nativescript-hello-world-demo-1
Demo #2: https://github.com/pawelkondraciuk/sample-groceries-demo-2
Wykład ze styczniowego spotkania grupy UW@IT pt. "Ansible w praktyce".
Ansible jest narzędziem wykorzystywanym do automatyzacji codziennych działań związanych z tworzeniem oraz utrzymaniem infrastruktury IT.
Adrian Chlubek: Czy PHP jest gotowy na websockety? Czy architektura samego języka nie stoi na przeszkodzie? Zobaczymy jakie mamy możliwości pracy z Websocketami, porównamy trzy popularne rozwiązania umożliwiające taką komunikację, a następnie odpowiemy sobie na pytanie – czy to ma sens?
LocalStack to framework udostępniający łatwe w użyciu mocki usług stosu AWS. Podczas prezentacji Maciej skorzystał z serwisu zbudowanego z użyciem serverlessowego Boilerplate autorstwa The Software House oraz skorzystał z takich usług AWS jak API Gateway, DynamoDB, Lambda, StepFunctions czy SQS. Następnie omówił podejście do testowania rozwiązania. Dzięki prezentacji możecie poznać wady i zalety LocalStack. A na koniec Maciej pokazuje przepływ testowy w GitHub Actions, który zwiększy pewność przyszłych zmian.
O mojej skrzynce z narzędziami, w której znajdziemy: #ansible #terraform #packer #docker #vagrant #capistrano.
Video: https://www.youtube.com/watch?v=fPZ7JZJGPTE
Core Web Vitals to metryki przygotowane przez Google w celu pomiaru wydajności aplikacji oraz User Experience. Są one składowymi wyniku “Performance” obliczanego przez narzędzie Lighthouse. W swojej prezentacji Marcin przybliży temat poszczególnych metryk, a następnie na kilku przykładach postaram się zaprezentować problemy wpływające na niższy wynik oraz jak sobie z nimi poradzić. Całość prezentacji opierać się będzie na prostej aplikacji Next.js, której wynik będziemy starać się poprawić, korzystając z kilku ciekawych narzędzi.
Service workers - bądź online, nawet kiedy jesteś offline!The Software House
Tomasz Wylężek: Nazwa Service Workery na pewno niejednemu z nas kojarzy się z Web Workerami, dla których w większości aplikacji nie ma zbyt dużego zastosowania. Czy SW to tak samo mało pożyteczny "Worker", czy może krok milowy w rozwoju przeglądarek? Na prezentacji omówię podstawy Service Workerów i postaram się odpowiedzieć na wyżej zadane pytanie.
Testy wydajnościowe to nie tylko JMeter. Podobnie jak w przypadku testów automatycznych, liczba frameworków do badania wydajności stale rośnie. Poza wprowadzeniem w tematykę testów wydajnościowych, w trakcie prezentacji przyjrzymy się ich implementacji we frameworku k6. Opowiemy również dlaczego w The Software House postawiliśmy na jego wybór i jak dzięki prostym skryptom testowym zoptymalizowaliśmy kilka naszych projektów.
Trudne jest zarządzanie własną infrastrukturą. Trochę prościej jest użyć chmury, jednak wciąż czeka nas sporo konfiguracji. A co, gdyby wszystkie potrzebne usługi skonfigurowały się “same”, a nam pozostało tylko doglądanie całości? AWS Elastic Beanstalk umożliwia zautomatyzowane skonfigurowanie środowiska w chmurze AWS pod konkretne aplikacje. Można dzięki niemu wygodnie uruchomić Dockerowe kontenery i właśnie tym zajmiemy się na prezentacji. Opowiemy pokrótce jak działa Beanstalk i przeprowadzimy deployment przykładowego programu). I to wszystko bez zastanawiania się nad infrastrukturalnymi szczegółami.
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...HighSolutions Sp. z o.o.
Prezentacja, która miała miejsce 2018-04-25 w Poznaniu. Wykonanie: Marek Tenus (HighSolutions).
Jak zainstalować i skonfigurować Dockera? Czym się różni od innych rozwiązań? Jakie są korzyści z korzystania z Dockera?
Nowe, potężne narzędzia do tworzenia stron internetowych pojawiają się niemal codziennie. My w zespole postanowiliśmy jednak cofnąć się o krok i postawić na to co proste, ale użyteczne. Efekt? Korzyści dla zespołu i dla klienta. Podczas prezentacji opowiem o tym, co zyskaliśmy oraz wprowadzę słuchaczy w świat Hugo – nowoczesnego generatora stron statycznych.
Wykład ze styczniowego spotkania grupy UW@IT pt. "Ansible w praktyce".
Ansible jest narzędziem wykorzystywanym do automatyzacji codziennych działań związanych z tworzeniem oraz utrzymaniem infrastruktury IT.
Adrian Chlubek: Czy PHP jest gotowy na websockety? Czy architektura samego języka nie stoi na przeszkodzie? Zobaczymy jakie mamy możliwości pracy z Websocketami, porównamy trzy popularne rozwiązania umożliwiające taką komunikację, a następnie odpowiemy sobie na pytanie – czy to ma sens?
LocalStack to framework udostępniający łatwe w użyciu mocki usług stosu AWS. Podczas prezentacji Maciej skorzystał z serwisu zbudowanego z użyciem serverlessowego Boilerplate autorstwa The Software House oraz skorzystał z takich usług AWS jak API Gateway, DynamoDB, Lambda, StepFunctions czy SQS. Następnie omówił podejście do testowania rozwiązania. Dzięki prezentacji możecie poznać wady i zalety LocalStack. A na koniec Maciej pokazuje przepływ testowy w GitHub Actions, który zwiększy pewność przyszłych zmian.
O mojej skrzynce z narzędziami, w której znajdziemy: #ansible #terraform #packer #docker #vagrant #capistrano.
Video: https://www.youtube.com/watch?v=fPZ7JZJGPTE
Core Web Vitals to metryki przygotowane przez Google w celu pomiaru wydajności aplikacji oraz User Experience. Są one składowymi wyniku “Performance” obliczanego przez narzędzie Lighthouse. W swojej prezentacji Marcin przybliży temat poszczególnych metryk, a następnie na kilku przykładach postaram się zaprezentować problemy wpływające na niższy wynik oraz jak sobie z nimi poradzić. Całość prezentacji opierać się będzie na prostej aplikacji Next.js, której wynik będziemy starać się poprawić, korzystając z kilku ciekawych narzędzi.
Service workers - bądź online, nawet kiedy jesteś offline!The Software House
Tomasz Wylężek: Nazwa Service Workery na pewno niejednemu z nas kojarzy się z Web Workerami, dla których w większości aplikacji nie ma zbyt dużego zastosowania. Czy SW to tak samo mało pożyteczny "Worker", czy może krok milowy w rozwoju przeglądarek? Na prezentacji omówię podstawy Service Workerów i postaram się odpowiedzieć na wyżej zadane pytanie.
Testy wydajnościowe to nie tylko JMeter. Podobnie jak w przypadku testów automatycznych, liczba frameworków do badania wydajności stale rośnie. Poza wprowadzeniem w tematykę testów wydajnościowych, w trakcie prezentacji przyjrzymy się ich implementacji we frameworku k6. Opowiemy również dlaczego w The Software House postawiliśmy na jego wybór i jak dzięki prostym skryptom testowym zoptymalizowaliśmy kilka naszych projektów.
Trudne jest zarządzanie własną infrastrukturą. Trochę prościej jest użyć chmury, jednak wciąż czeka nas sporo konfiguracji. A co, gdyby wszystkie potrzebne usługi skonfigurowały się “same”, a nam pozostało tylko doglądanie całości? AWS Elastic Beanstalk umożliwia zautomatyzowane skonfigurowanie środowiska w chmurze AWS pod konkretne aplikacje. Można dzięki niemu wygodnie uruchomić Dockerowe kontenery i właśnie tym zajmiemy się na prezentacji. Opowiemy pokrótce jak działa Beanstalk i przeprowadzimy deployment przykładowego programu). I to wszystko bez zastanawiania się nad infrastrukturalnymi szczegółami.
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...HighSolutions Sp. z o.o.
Prezentacja, która miała miejsce 2018-04-25 w Poznaniu. Wykonanie: Marek Tenus (HighSolutions).
Jak zainstalować i skonfigurować Dockera? Czym się różni od innych rozwiązań? Jakie są korzyści z korzystania z Dockera?
Nowe, potężne narzędzia do tworzenia stron internetowych pojawiają się niemal codziennie. My w zespole postanowiliśmy jednak cofnąć się o krok i postawić na to co proste, ale użyteczne. Efekt? Korzyści dla zespołu i dla klienta. Podczas prezentacji opowiem o tym, co zyskaliśmy oraz wprowadzę słuchaczy w świat Hugo – nowoczesnego generatora stron statycznych.
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposeMariusz Bąk
Docker i Docker Compose to popularne wśród deweloperów narzędzia do konteneryzacji i orkiestracji kontenerów, które wypierają wcześniej stosowaną wirtualizację. Dzięki nim możemy opisywać infrastrukturę za pomocą kodu, utrzymywać jej spójność w ramach zespołu deweloperskiego oraz wersjonować ją. Znacznie ułatwia to rozwijanie złożonych z wielu usług aplikacji.
Prezentacja zawiera krótkie wprowadzenie do tych narzędzi oraz pokazuje kilka użytecznych i ułatwiających pracę trików. Prezentuje również stworzone przeze mnie open-source'owe narzędzie Feater, służące do dynamicznego tworzenia izolowanych środowisk testowych i demonstracyjnych. Dzięki wykorzystaniu przez nie konteneryzacji, można je szybko wdrożyć w typowym wykorzystującym Docker Compose projekcie
This is my presentation about Red Gate SQL Doc that I have presented on one of the meatings of Lodzka Grupa Profesjonalistow IT & .NET. Presentation in Polish.
Czy uważacie że przygotowanie szablonu nowej maszyny wirtualnej wymaga dużo czasu? Nie jest to prawdą. Ta prezentacja pozwoli wam na zapoznanie się z procesem tworzenia maszyn wirtualnych z wykorzystaniem Packera. Jest to opensourceowe narzędzie do przygotowywania obrazów na vagranta lub szablonów maszyn wirtualnych dla różnych hypervisorów np. VMware ESXi/Fusion, Virtualbox, KVM itd. Pokaże jak działa Packer, jak napisać własne skrypty oraz pliki konfiguracyjne.
Magdalena Wojnarowska - 15.10 Katowice Women In Technology
Continuous Integration w konfiguracji urządzeń sieciowychDreamLab
Konfigurowanie urządzeń sieciowych można traktować jak pisanie kodu. To co programiści znają jako continous integration może być wykorzystane również w zarządzaniu siecią, nawet tak dużą jak w Grupie Onet-RAS Polska. Na PLNOG Piotr Pieprzycki przedstawilł model w jakim wprowadzamy w DreamLabie zmiany w naszym środowisku i z jakimi problemami zetknęliśmy się po drodze.
2. Typowy proces
• Aktualizacja kodu
• Konfiguracja
• Instalacja zależności
• Aktualizacja bazy danych
• Uruchomienie aplikacji
3. Proste rozwiązanie
1. Pobierz najnowszą wersje kodu
2. Zaktualizuj wartości w plikach konfiguracyjnych
3. Zainstaluj zależne biblioteki A, B i C
4. Uruchom w bazie plik migrate.sql
5. Zrestartuj serwer
4. Problemy
• Plan awaryjny
• Aktualizacja wielu serwerów jednocześnie
• Współdzielenie plików pomiędzy releasami
• Zero downtime
5. Capistrano
• Narzędzie do zautomatyzowanego zarządzania
zdalnymi serwerami
• Pozwala w przyjazny sposób definiować i
wykonywać zadania lub całe ciągi zadań na
zdalnych maszynach
• Ruby gem
• Nakładka na gem SSHKit
8. Capfile
# Load DSL and Setup Up Stages
require 'capistrano/setup'
!
# Includes default deployment tasks
require 'capistrano/deploy'
!
# Includes tasks from other gems included in your Gemfile
#
# require 'capistrano/rails'
# require 'capistrano/laravel'
# require 'capistrano/symfony'
# require 'capistrano/npm'
!
# Loads custom tasks from `lib/capistrano/tasks' if you have any
defined.
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
10. deploy.rb
set :application, "my_app"
set :scm, "git"
set :repo_url,
"git@github.com/me/my_app.git"
!
set :branch, "master"
set :deploy_to,
"/var/www/#{fetch(:application)}"
20. Flow
# check everything, start a deployment
deploy:starting
!
# update server(s) with a new release
deploy:updating
!
# publish the new release
deploy:publishing
!
# finish the deployment, clean up everything
deploy:finishing
30. Best practices
• Trzymać konfigurację deploymentu w repozytorium
• Nie trzymać wrażliwych danych w repozytorium, tylko w shared
na serwerze
• Kompilować kod na serwerze zamiast trzymać skompilowany kod
w repozytorium
• Dla customowych zadań napisać hooki do deploy:starting i
deploy:reverting
• Rozbudować deploy:check o sprawdzanie zależnych bibliotek
• Nie próbować zautomatyzować absolutnie wszystkiego