현재 회사에는 약 500명의 직원이 있으며 일부 관리 시스템 구현을 고려하고 있습니다.
이미 온라인에는 Laravel5.2를 기반으로 개발된 HRMS(기본 직원 정보를 저장하고 일부 기본 인사 프로세스도 포함)가 있습니다. 원래 설계 당시에는 그다지 기대하지 않았기 때문에 프런트와 프론트 사이가 긴밀하게 결합되어 있습니다. 그리고 백엔드.
이제 이를 모든 시스템의 기반으로 사용하고 싶습니다. 즉, 다른 시스템에서 인증이 필요한 경우 HRMS에서 사용자 정보를 검색합니다.
목표:
HRMS를 Lumen으로 다시 작성하고 API만 제공
모든 시스템은 프론트엔드와 백엔드 분리를 구현합니다
우리는 앞으로 Electron API를 사용하여 일부 데스크톱 애플리케이션을 만들 예정입니다
모든 프로젝트는 Dockerized 지속 가능한 통합을 달성합니다
나중에 출시될 시스템은 다음과 같습니다:
MRBS: 회의실 예약 관리 시스템
SCRM: 소셜 플랫폼 기반의 고객 관계 관리 시스템
BPM: 워크플로 승인
TMS: 내부 교육 관리 시스템
AMS: 고정 자산 관리 시스템
현 단계에서는 서비스가 Docker화되었습니다. 백엔드 프레임워크는 Lumen을 사용하기로 결정되었습니다. 프론트엔드와 백엔드가 완전히 분리된다면 장점은 무엇인가요? OAuth2.0 및 JWT 사용의 단점은 무엇입니까?
완화제;
laravel5.2를 5.3으로 업그레이드하는 것조차 lumen을 사용하여 리팩터링하는 것보다 더 합리적입니다.제 제안은 여전히 laravel을 사용하는 것입니다.
인터페이스용이라면 5.2에서는 루멘을 사용하여 리팩터링하는 대신 dingo 패키지 https://github.com/dingo/api;
를 사용할 수 있습니다.
lumen 및 laravel은 형제입니다.
그러나 lumen에는 많은 기능이 제거되었으며 해당 리소스는 laravel보다 훨씬 적습니다.
5.3은 이미 API 인터페이스 개발을 기본적으로 지원합니다.
JWT는 인증 프레임워크입니다.그리고 이는 분명히 후속 laravel 업그레이드의 개발 추세이기도 합니다.
OAuth2.0 또는 JWT의 경우
OAuth2.0은 더욱 표준화되고 널리 사용되며 확장성이 뛰어납니다.
시간이 충분하다면 OAuth2.0 사용법을 배우는 데 더 많은 시간을 할애하세요.