분류 전체보기
-
SOA (Service Oriented Architecture) 애플리케이션들의 기능을 비즈니스적인 의미가 있는 기능 단위로 묶고, 표준화된 호출 인터페이스를 통해 서비스라는 소프트웨어 컴포넌트 단위로 재조합한 후, 이 서비스들을 서로 조합하여 업무 기능을 구현한 애플리케이션을 만들어내는 소프트웨어 아키텍처 서비스 단위로 개발을 하고, 개발된 서비스들을 공유함으로써 재가용성을 늘리고 유연성을 확보하는 것을 목표 SOA 와 MSA의 차이점 SOA MSA 프로토콜 멀티 메세지 프로토콜 지원 경량 프로토콜 사용(HTTP,REST 등) 지향점 어플리케이션 서비스의 재사용을 통한 비용 절감 서비스 간의 결합도를 낮추어 변화에 능동적으로 대응 접근 방식 가능한 최대한으로 공유 가능한 최소한으로 공유 데이터베이스 전..
SOA vs MSASOA (Service Oriented Architecture) 애플리케이션들의 기능을 비즈니스적인 의미가 있는 기능 단위로 묶고, 표준화된 호출 인터페이스를 통해 서비스라는 소프트웨어 컴포넌트 단위로 재조합한 후, 이 서비스들을 서로 조합하여 업무 기능을 구현한 애플리케이션을 만들어내는 소프트웨어 아키텍처 서비스 단위로 개발을 하고, 개발된 서비스들을 공유함으로써 재가용성을 늘리고 유연성을 확보하는 것을 목표 SOA 와 MSA의 차이점 SOA MSA 프로토콜 멀티 메세지 프로토콜 지원 경량 프로토콜 사용(HTTP,REST 등) 지향점 어플리케이션 서비스의 재사용을 통한 비용 절감 서비스 간의 결합도를 낮추어 변화에 능동적으로 대응 접근 방식 가능한 최대한으로 공유 가능한 최소한으로 공유 데이터베이스 전..
2022.10.27 -
12 Factors Heroku 플랫폼을 통해 방대한 앱의 개발, 운영, 확장 등을 관찰한 많은 사람들이 고안해낸 SaaS 개발 방법론 시간이 지나면서 앱이 유기적으로 성장하는 부분, 앱 코드베이스에서 작업하는 개발자들 간의 협업, 시간이 지나면서 망가지는 소프트웨어 유지비용을 줄이는 법에 집중 12 Factors의 목적 아래와 같은 특징을 가진 SaaS 앱을 만들기 위함 설정 자동화를 위한 절차(declarative) 를 체계화 하여 새로운 개발자가 프로젝트에 참여하는데 드는 시간과 비용을 최소화 OS에 따라 달라지는 부분을 명확히하고, 실행 환경 사이의 이식성을 극대화 클라우드 플랫폼 배포에 적합하고, 서버와 시스템의 관리가 필요없음 개발 환경과 운영 환경의 차이를 최소화하고 민첩성을 극대화하기 위해..
12 Factors + 3 Factors12 Factors Heroku 플랫폼을 통해 방대한 앱의 개발, 운영, 확장 등을 관찰한 많은 사람들이 고안해낸 SaaS 개발 방법론 시간이 지나면서 앱이 유기적으로 성장하는 부분, 앱 코드베이스에서 작업하는 개발자들 간의 협업, 시간이 지나면서 망가지는 소프트웨어 유지비용을 줄이는 법에 집중 12 Factors의 목적 아래와 같은 특징을 가진 SaaS 앱을 만들기 위함 설정 자동화를 위한 절차(declarative) 를 체계화 하여 새로운 개발자가 프로젝트에 참여하는데 드는 시간과 비용을 최소화 OS에 따라 달라지는 부분을 명확히하고, 실행 환경 사이의 이식성을 극대화 클라우드 플랫폼 배포에 적합하고, 서버와 시스템의 관리가 필요없음 개발 환경과 운영 환경의 차이를 최소화하고 민첩성을 극대화하기 위해..
2022.10.26 -
Cloud Native Application Cloud Native Architecture에 의해 설계되고 구현된 Application을 의미 구성요소 DevOps Development + Operation을 합친 단어 고객의 요구사항을 빠르게 반영하기위해 운영 담당자와 개발담당자가 서로 소통하고 협업하여 계획 및 개발하고 빌드, 테스트,릴리스, 배포, 운영, 모니터링하는 일련의 과정을 자동화하는 것을 강조하는 개발 방법론을 뜻함 보통 애자일 방법론을 통해 DevOps가 이루어짐 CI - CD Continuous Integration (지속적인 통합) 새로 개발한 코드들을 기존 코드와 병합하여 빌드 및 테스트하는 과정을 자동화하는 것 Jenkins, Team CI, Travis CI 같은 도구를 사용 C..
Cloud Native ApplicationCloud Native Application Cloud Native Architecture에 의해 설계되고 구현된 Application을 의미 구성요소 DevOps Development + Operation을 합친 단어 고객의 요구사항을 빠르게 반영하기위해 운영 담당자와 개발담당자가 서로 소통하고 협업하여 계획 및 개발하고 빌드, 테스트,릴리스, 배포, 운영, 모니터링하는 일련의 과정을 자동화하는 것을 강조하는 개발 방법론을 뜻함 보통 애자일 방법론을 통해 DevOps가 이루어짐 CI - CD Continuous Integration (지속적인 통합) 새로 개발한 코드들을 기존 코드와 병합하여 빌드 및 테스트하는 과정을 자동화하는 것 Jenkins, Team CI, Travis CI 같은 도구를 사용 C..
2022.10.26 -
Cloud Native Architecture Cloud Nativer란 클라우드 환경에 친화적이라는 원론적인 의미를 가짐 CNCF에서 처음 내세운 단어로 클라우드 컴퓨팅 모델의 장점을 최대한 활용하는 어플리케이션을 개발하고 구축하며 실행하는 방법론을 의미 퍼블릭, 프라이빗, 하이브리드 클라우드 환경에서 확장성 있는 애플리케이션을 만들고 운영할 수 있음 컨테이너, 서비스 메시, 마이크로서비스, 불변 인프라, 선언적 API가 전형적인 접근 방식에 해당 회복성이 있고, 관리 편의성을 제공하며, 가시성을 갖는 느슨하게 결합된 시스템을 사용할 수 있음 견고한 자동화와 함께 사용하면, 엔지니어는 최소한의 수고로 영향력이 크고 예측 가능한 변경을 할 수 있음 Cloud Native Architecture의 구성 요..
Cloud Native ArchitectureCloud Native Architecture Cloud Nativer란 클라우드 환경에 친화적이라는 원론적인 의미를 가짐 CNCF에서 처음 내세운 단어로 클라우드 컴퓨팅 모델의 장점을 최대한 활용하는 어플리케이션을 개발하고 구축하며 실행하는 방법론을 의미 퍼블릭, 프라이빗, 하이브리드 클라우드 환경에서 확장성 있는 애플리케이션을 만들고 운영할 수 있음 컨테이너, 서비스 메시, 마이크로서비스, 불변 인프라, 선언적 API가 전형적인 접근 방식에 해당 회복성이 있고, 관리 편의성을 제공하며, 가시성을 갖는 느슨하게 결합된 시스템을 사용할 수 있음 견고한 자동화와 함께 사용하면, 엔지니어는 최소한의 수고로 영향력이 크고 예측 가능한 변경을 할 수 있음 Cloud Native Architecture의 구성 요..
2022.10.26 -
온프레미스와 퍼블릭 클라우드 온프레미스(On-Premise) 필요한 시스템을 구축하기 위해서 하드웨어와 소프트웨어를 구입하여, 시스템 구성 상황에 맞게 자체적으로 환경을 구성하는 것 퍼블릭 클라우드 컴퓨팅 리소스를 인터넷을 통해 서비스로 사용할 수 있는 주문형 서비스 (= 클라우드 컴퓨팅) On-premise의 반대말인 Off-Premise라고도 합니다. 기업에서 직접 리소스를 조달하거나 구성, 관리할 필요가 없이 사용한 만큼만 비용을 지불 대표적인 플랫폼으로는 AWS , GCP 등 온프레미스 vs 퍼블릭 클라우드 중점적으로 봐야할 것은 비용적인 측면 입니다. 예를 들어, 티켓팅 서비스를 제공한다고 해봅시다. 평소에는 사용자가 별로 없다가 인기있는 연예인의 콘서트 예매가 잡혀있다면, 서비스를 제공하는 기..
On-Premise와 Cloud온프레미스와 퍼블릭 클라우드 온프레미스(On-Premise) 필요한 시스템을 구축하기 위해서 하드웨어와 소프트웨어를 구입하여, 시스템 구성 상황에 맞게 자체적으로 환경을 구성하는 것 퍼블릭 클라우드 컴퓨팅 리소스를 인터넷을 통해 서비스로 사용할 수 있는 주문형 서비스 (= 클라우드 컴퓨팅) On-premise의 반대말인 Off-Premise라고도 합니다. 기업에서 직접 리소스를 조달하거나 구성, 관리할 필요가 없이 사용한 만큼만 비용을 지불 대표적인 플랫폼으로는 AWS , GCP 등 온프레미스 vs 퍼블릭 클라우드 중점적으로 봐야할 것은 비용적인 측면 입니다. 예를 들어, 티켓팅 서비스를 제공한다고 해봅시다. 평소에는 사용자가 별로 없다가 인기있는 연예인의 콘서트 예매가 잡혀있다면, 서비스를 제공하는 기..
2022.10.26 -
📢 JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계 부분과 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 있습니다. 이 정리 글은 Hibernate를 기준으로 매핑한 엔티티를 EntitiyManager를 통해 사용하는 법을 정리해 놓았습니다. JPA 구조 요청이 올 때마다 EntityManagerFactory를 통해 EntityManager를 생성합니다. EntityManager는 내부적으로 DB 커넥션을 통해 DB를 사용합니다. Entity Manager Factory EntityManager를 생성합니다. 생성 비용이 크기 때문에 하나만 생성해 애플리케이션 전체에서 공유하여 사용합니다. 설정 정보를 읽어 JPA를 동작시키기 위한 기반 객체 생성 및 커넥션 풀 생성 등으로 인해 생성 비..
JPA Persistence(영속성, 전반적인 기본 개념 설명)📢 JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계 부분과 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 있습니다. 이 정리 글은 Hibernate를 기준으로 매핑한 엔티티를 EntitiyManager를 통해 사용하는 법을 정리해 놓았습니다. JPA 구조 요청이 올 때마다 EntityManagerFactory를 통해 EntityManager를 생성합니다. EntityManager는 내부적으로 DB 커넥션을 통해 DB를 사용합니다. Entity Manager Factory EntityManager를 생성합니다. 생성 비용이 크기 때문에 하나만 생성해 애플리케이션 전체에서 공유하여 사용합니다. 설정 정보를 읽어 JPA를 동작시키기 위한 기반 객체 생성 및 커넥션 풀 생성 등으로 인해 생성 비..
2022.10.25