Wykorzystując najnowszy ekosystem Javy i technologie chmurowe
CrewOps jest zbudowany z czystą, modułową architekturą, która zapewnia separację odpowiedzialności i łatwość utrzymania. Projekt jest zorganizowany w odrębne moduły o jasnych odpowiedzialnościach, promując ponowne wykorzystanie kodu i łatwość utrzymania.
To podejście modułowe pozwala na niezależny rozwój i testowanie różnych komponentów, przy jednoczesnym zachowaniu spójnej architektury systemu. Każdy moduł ma określony cel i dobrze zdefiniowane granice.
Podstawowy język programowania z nowoczesnymi funkcjami i silną typizacją
Framework do budowania samodzielnych, produkcyjnych aplikacji
Solidna relacyjna baza danych z zaawansowanymi funkcjami
Mapowanie obiektowo-relacyjne do interakcji z bazą danych
Migracja schematu bazy danych i kontrola wersji
Kompleksowy framework bezpieczeństwa do uwierzytelniania i autoryzacji
Tokeny Web JSON do bezstanowego uwierzytelniania
Nowoczesny framework web do budowy interfejsów użytkownika w Javie
Platforma przetwarzania w chmurze do wdrożenia i hostingu
Wysokowydajny serwer WWW i reverse proxy
Platforma kontenerów do spójnych środowisk
Narzędzie automatyzacji budowania do zarządzania zależnościami
CrewOps implementuje nowoczesne podejście DevOps z automatycznym wdrożeniem i zarządzaniem infrastrukturą chmurową. Cały potok wdrożeniowy jest zautomatyzowany od zatwierdzenia kodu do wdrożenia produkcyjnego.
Zaimplementowano podejście schema-per-tenant do izolacji danych w PostgreSQL. Każdy najemca otrzymuje własny schemat bazy danych, współdzieląc tę samą instancję aplikacji. Dynamiczne rozpoznawanie schematu oparte na identyfikatorze najemcy JWT zapewnia właściwą separację danych i bezpieczeństwo.
Utrzymywanie spójności między modułami backend i frontend poprzez współdzielone moduły modelu i bezpieczeństwa. Współdzielone moduły zapewniają bezpieczeństwo typów, spójne struktury danych i jednolitą walidację bezpieczeństwa we wszystkich komponentach aplikacji.
Zaimplementowano uwierzytelnianie oparte na JWT z Spring Security do projektowania bezstanowego API. Mechanizm odświeżania tokenów i autoryzacja oparta na rolach na poziomie punktów końcowych zapewniają bezpieczną kontrolę dostępu bez przechowywania sesji po stronie serwera.
Zaprojektowano i zaimplementowano system powiadomień, który wysyła alerty do odpowiednich osób, gdy zgłaszane są usterki maszyn. System zapewnia terminową komunikację i szybką reakcję na krytyczne problemy operacyjne.