Perforce의 최근 2022년 Java 개발자 생산성 보고서에서 데이터에 따르면 개발 팀은 아직 마이크로 서비스 및 CI/CD(지속적인 통합/지속적인 배포) 방식의 잠재력을 최대한 활용하지 못했습니다. 연구 결과는 개발자들이 종종 이러한 기술이 생산성을 향상시키기보다는 감소시킨다는 것을 발견했음을 나타냅니다.
CI/CD 사용자의 42%는 빌드 완료 시간이 5분 이상이라고 보고했으며 가장 빈번한 응답(33%)은 빌드 시간이 10분을 초과하는 것이었습니다. 응답자의 35%가 매일 5회 이상 코드를 커밋합니다. 이 다운타임은 빠르게 누적되어 오랜 기간 동안 생산성에 영향을 미칩니다.
CI/CD 기술 순위표에서는 Jenkins(46%)가 확실한 선두 주자로 보고 있으며 GitHub Actions(16%), Bamboo(7%), TeamCity(4%), CircleCI(3%) 및 Travis CI( 1%).
또한 설문조사에 참여한 개발자 중 61%는 지난 1년 동안 마이크로서비스 기반 애플리케이션의 시작 시간이 증가한 것을 관찰했습니다. 이러한 개발자 중 13%는 50% 이상의 증가를 경험했으며 30%는 10-50% 증가를 기록했으며 17%는 0-10% 증가를 보고했습니다. 전반적으로 응답자의 60%는 시작 시간이 증가한 반면 35%는 변경 사항이 없음을 확인했습니다.
결과에 대한 응답으로 Perforce Software의 CTO인 Rod Cope는 CI/CD 및 마이크로서비스를 수용하는 팀이 여전히 긴 커밋 및 재배포 시간으로 낭비되는 시간과 관련된 장애물을 경험하고 있다고 언급했습니다. Cope는 채용 문제와 개발자 사기 저하를 피하기 위해 기업이 Java 팀에 적절한 도구를 갖추는 것을 우선시해야 한다고 강조했습니다. 그렇지 않으면 개발자가 자신의 도구 세트 기본 설정을 충족하는 조직을 선택할 수 있습니다.
마이크로 서비스 애플리케이션 사용자와 관련하여 Perforce의 보고서는 유사하게 높은 재배포 시간을 지적합니다. 놀랍게도 44%의 사용자가 재배포 시간이 5분 이상이라고 보고했습니다. JRebel by Perforce의 제품 관리자인 Curtis Johnson은 이 문제에 대응하고 Java 애플리케이션을 위한 마이크로서비스 아키텍처의 이점을 극대화하기 위해 적절한 도구를 구현하는 것이 중요하다고 강조했습니다.
참가자들에게 근무일 동안 추가로 10%의 사용 가능한 시간을 어떻게 할당할지 질문했습니다. 레크리에이션 활동을 언급한 응답자는 4%에 불과한 반면, 대다수는 새로운 기능 추가(28%), 애플리케이션 성능 향상(20%) 또는 테스트 범위 향상(19%)과 같은 기능적 응답을 우선시했습니다. 다른 중점 영역에는 개발 프로세스 개선(17%), 새 프로젝트 시작(6%) 및 출시 날짜 앞당기기(6%)가 포함되었습니다.
이 연구에서는 응답자의 44%가 현재 완전한 마이크로서비스 기반 애플리케이션을 보유하고 있고, 44%는 마이크로서비스로 전환 중이며, 10%는 가능성에 대해 논의하고 있으며, 2%만이 시도했지만 실패했다고 밝혔습니다. 마이크로서비스 애플리케이션 프레임워크 영역에서 Spring Boot는 74%의 채택률을 자랑합니다.
개발자의 기본 애플리케이션에 있는 마이크로서비스 수에 관해서는 30%가 1~5개, 24%가 5~10개, 16%가 10~20개, 22%가 20개 이상이었습니다. 이 연구는 또한 Java 8(37%)의 우세한 사용을 포함하여 다른 영역의 추세를 강조했으며, Java 11(29%)이 그 뒤를 이었고 Java 12 이상을 사용하는 비율은 12%에 불과했습니다.
JDK 버전 업그레이드와 관련하여 기존 계획이 있는 사람의 62%가 향후 12개월 이내에 JDK 17을 채택하는 것을 목표로 합니다. 업그레이드 결정을 결정하는 주요 요인은 장기 지원(LTS)(25%), 보안(23%), 성능(20%), 새로운 기능(18%) 및 규정 준수(14%)입니다.
JRE/JDK 배포판 중에서 Oracle Java(36%)가 가장 많이 선택되었으며 Generic OpenJDK(27%) 및 AdoptOpenJDK/Adoptium(16%)이 그 뒤를 이었습니다. 빌드 도구의 경우 Maven(68%)이 1위를 차지했으며 Gradle(23%)과 Ant(6%)가 그 뒤를 쫓고 있습니다. 통합 개발 환경(IDE) 측면에서 IntelliJ(48%)가 선호되는 선택이며 Eclipse(24%) 및 Visual Studio Code(18%)가 그 뒤를 따릅니다.
CI/CD 및 마이크로서비스는 소프트웨어 개발 영역에서 중요한 추세로 남아 있으며 AppMaster.io와 같은 회사는 웹 및 모바일 애플리케이션을 쉽게 만들 수 있는 강력한 no-code 및 low-code 플랫폼 으로 발전하고 있습니다. AppMaster 신속한 애플리케이션 개발, API 관리, 기술 부채를 없애고 시간 낭비를 줄임으로써 개발자의 역량을 강화하는 소프트웨어 개발에 대한 확장 가능하고 비용 효율적인 접근 방식과 같은 혁신적인 기능을 제공합니다.