3 계층 소프트웨어 아키텍처에 대한 자세한 내용

작가: Lewis Jackson
창조 날짜: 12 할 수있다 2021
업데이트 날짜: 25 6 월 2024
Anonim
창의적사고와코딩 #10 - 정보구조설계(Information Architecture), 메뉴구조도, 화면흐름도, 화면모형
동영상: 창의적사고와코딩 #10 - 정보구조설계(Information Architecture), 메뉴구조도, 화면흐름도, 화면모형

콘텐츠


출처 : Pressureua / Dreamstime.com

테이크 아웃 :

3 계층 소프트웨어 아키텍처는 계층을 추가하여 관리가 쉽고 비용이 적게 듭니다.

최신 소프트웨어 응용 프로그램은 복잡하고 강력한 작업을 수행하므로 이러한 응용 프로그램을 적절한 소프트웨어 아키텍처로 백업하는 것이 중요합니다. 2 계층 소프트웨어 아키텍처에서는 소프트웨어 응용 프로그램이 이러한 복잡한 작업을 처리 할 수 ​​없습니다. 단점을 감안할 때 2 계층 아키텍처를 기반으로 애플리케이션을 유지 관리하고 문제를 해결하는 것은 비용이 많이 들고 번거로운 제안입니다. 3 계층 소프트웨어 아키텍처를 통해 애플리케이션은 방대한 양의 다양하고 복잡한 요청을 원활하게 처리하고 데이터 기밀성을 유지할 수 있습니다. 소프트웨어 아키텍처의 세 계층이 서로 독립적이므로 유지 관리 및 문제 해결 노력과 비용은 2 계층 아키텍처 응용 프로그램의 경우보다 상대적으로 저렴합니다. 3 계층 소프트웨어 응용 프로그램은 다운 타임을 크게 줄이고 사용자 경험에 간접적으로 기여합니다.

2 계층 대 3 계층 아키텍처

3 계층 아키텍처가 2 계층 아키텍처보다 우월한 것으로 여겨지는 데는 여러 가지 이유가 있습니다.

2 계층 아키텍처는 클라이언트가 서버와 직접 상호 작용하고 서버가 처리 할 수있는 것보다 더 많은 요청으로 인해 플러딩 될 수 있기 때문에 대량의 다양하고 복잡한 작업을 처리해야하는 응용 프로그램에는 적합하지 않습니다. 3 계층 아키텍처의 미들웨어는 작업 순서와 요청을 도착 순서대로 처리 한 다음 데이터 액세스 계층으로 보냅니다.

2 계층 아키텍처의 클라이언트는 여러면에서 팻 클라이언트이므로 유지 관리 및 성능의 복잡성을 증가시키고 비용을 증가시킵니다. 3 계층 아키텍처에서 계층의 독립성은 더 나은 성능, 유지 관리 성 및 비용 절감 효과를 제공합니다. 소프트웨어 개발에 대한 자세한 내용은 Agile Software Development 101을 참조하십시오.


3 계층 아키텍처 란 무엇입니까?

이름에서 알 수 있듯이 3 계층 아키텍처는 서로 다른 세 개의 독립적 인 계층 또는 계층이있는 계층 적 소프트웨어 아키텍처입니다. 3 계층 아키텍처는 프리젠 테이션, 비즈니스 및 데이터 액세스 순서로 구성되며 각 계층마다 수행해야 할 작업이 다릅니다. 아키텍처의 주요 작업은 소프트웨어 응용 프로그램이 사용자 요청 또는 입력에 효율적이고 신속하게 응답 할 수 있도록하는 것입니다. 아래 이미지는 3 계층 아키텍처의 단순화 된 표현을 보여줍니다.

이 계층은 복잡한 비즈니스 문제에 대한 솔루션을 정의하는 데 도움이됩니다. 솔루션 또는 규칙은 계층 내부에있는 여러 구성 요소에서 정의 할 수 있습니다. 소프트웨어 개발자는 복잡한 비즈니스 알고리즘, 비즈니스 프로세스, 정부 또는 법적 규칙 또는 데이터 규칙을 정의하여 하나 이상의 데이터베이스와 데이터 구조를 일관성있게 유지할 수 있습니다. 이러한 중간 계층 구성 요소는 클라이언트와 연결되어 있지 않으며 모든 응용 프로그램에서 사용할 수 있으며 모든 위치로 이동할 수 있습니다.

글로벌 전자 상거래 대기업 인 eBay는 웹 사이트의 안정성을 개선하여 전 세계에 실시간 시장 서비스를 제공하고 고객 만족도를 높이면서 수익성과 고객 만족도를 개선하고자했습니다. eBay의 제품 개발 담당 부사장 인 척 가이거 (Chuck Geiger)에 따르면,“우리는 웹 사이트의 안정성을 개선하여 모든 지역에서 실시간 시장 서비스를 제공하고 고객 만족도를 높이고 결과적으로 수익성에 영향을 미치고 싶었습니다. "

해결책

솔루션을 찾아서 구현하기 위해 eBay는 IBM을 선택했습니다. 간단히 이야기하자면 IBM은 eBay의 기존 시스템을 개편하고 모든 고객 관련 및 상품 정보를 관리하는 프론트 엔드 및 백엔드 데이터베이스에 웹 인터페이스가있는 통합 플랫폼 기반 3 계층 아키텍처를 도입했습니다. 결과적으로 eBay 개발자는 모든 공통 Java 객체를 공동 작업하고 공유 할 수있는 공통 도구를 갖게되며 새로운 웹 사이트 기능을 쉽게 추가 할 수 있습니다. 이는 또한 웹 사이트 안정성 및 고객 경험 향상에 기여했습니다.


결론

3 계층 아키텍처는 현재 거의 표준으로 여겨지지만 많은 회사, 특히 리소스가 제한된 회사에서는 3 계층 아키텍처를 구현하기가 쉽지 않습니다. 이 시스템은 복잡한 시스템이며 기술, 돈 및 숙련 된 인력 측면에서 많은 투자가 필요합니다. 이는 예산이 적은 회사가 효율성을 달성 할 수 없다는 것을 의미합니까? 그들은 자신의 방식으로 할 수 있습니다. 예를 들어, Ajax는 서버 또는 데이터베이스와 상호 작용할 수있는 클라이언트 측 스크립트이며 이러한 회사는 그러한 기술의 단서를 찾을 수 있습니다. 또한 3 계층 아키텍처를 구현하는 단일 방법이 없다는 것을 알아야합니다. 계획 및 구현은 작업중인 프로젝트 유형에 따라 다르며 복잡도는 다릅니다.