«microservices» 태그된 질문

마이크로 서비스는 언어와 무관 한 API를 사용하는 복잡한 응용 프로그램을 형성하기 위해 서로 통신하는 작고 독립적 인 프로세스입니다. 이러한 서비스는 소규모 빌딩 블록으로, 분리되어 있으며 소규모 업무 수행에 중점을 두어 시스템 구축에 대한 모듈 식 접근을 용이하게합니다.

2
다중 테넌트 마이크로 서비스 디자인
모 놀리 식 애플리케이션을 마이크로 서비스 아키텍처로 마이그레이션하는 중입니다. 일부 규제 요건으로 인해 여러 국가의 고객 데이터를 별도의 (국가 별) 데이터베이스에 보관해야합니다. 즉 미국 고객의 경우 미국 DB, 영국 고객의 경우 영국 DB ... 고려중인 다음과 같은 디자인은 다음과 같습니다. 옵션 1 : 최대 절전 모드 다중 테넌트 지원 기능이있는 …

2
마이크로 서비스 아키텍처 공유 도메인 모델
마이크로 서비스 아키텍처를 사용하는 스프링 부트 애플리케이션이 있다고 가정하자. 각 서비스에는 고유 한 도메인 모델이 있지만 각 서비스는 사용자 도메인 개체를 참조해야합니다. 이 문제를 해결하는 가장 좋은 방법은 무엇입니까? 각 서비스마다 userId 만있는 것이 더 좋으며 필요한 경우 사용자 서비스에 사용자 세부 정보를 요청하거나 모든 마이크로 서비스에 대해 공유 도메인 …

2
여러 마이크로 서비스 중 하나가 실패 할 경우이를 업데이트하는 소프트웨어를 어떻게 설계합니까?
다운되거나 다운되는 서비스를 돕는 데 사용할 수있는 디자인 패턴이나 실습이 있습니까? 마이크로 서비스가 3 개 있는데 그 중 2 개가 양호하고 하나가 POST 도중에 죽으면 어떻게합니까? 2 개는 POST를 받고 1 개는 그렇지 않습니다. 요청을 서비스로 배송하기 때문에 거래를 할 수 없다고 생각합니다. 이를 위해 어떻게 설계합니까? 다양한 데이터베이스에서 고아 …

4
많은 입력 데이터가 필요할 때 마이크로 서비스 아키텍처에서 규칙 엔진을 맞추는 방법은 무엇입니까?
현재 상황 우리는 마이크로 서비스 아키텍처에서 온라인 쇼핑 웹 애플리케이션을 구현하고 현재 유지하고 있습니다. 요구 사항 중 하나는 비즈니스가 고객의 경험과 최종 주문을 사용자 정의하기 위해 고객이 장바구니에 추가하는 내용에 대한 규칙을 적용 할 수 있어야한다는 것입니다. 분명히 비즈니스 규칙 엔진을 설치해야했으며이를 위해 특정 "마이크로 서비스"를 구현했습니다 (여전히 호출 할 …

1
서버와 클라이언트간에 인터페이스를 공유하는 것이 왜 그렇게 나쁜 생각입니까?
HTTP 서버와 클라이언트간에 인터페이스를 공유하는 방법에 대해 알게되었을 때 Spring Cloud Netflix 설명서를 읽고있었습니다 . 일반 HTTP 통신으로 확장 할 수없는 이유는 없지만 마이크로 서비스에이 예제를 사용합니다. // The shared interface, in a common library public interface UserService { @RequestMapping(method = GET, value = "/users/{id}") User getUser(@PathVariable long id); } …

2
마이크로 서비스를 통한 사용자 인증
마이크로 서비스가 자체 권한 부여를 처리해야합니까, 아니면 마이크로 서비스 전체 또는 일부 (동일한 비즈니스 도메인 내)에서 공유되는 별도의 인증 서비스를 사용하는 것이 더 낫다고 생각하십니까? 나에게 후자는 변경 사항을 적용하고 정책을 시행하기가 더 쉬워 지므로 더 의미가 있습니다. DRY 등입니다. 그러나 규칙을 한 곳으로 덤핑하는 모든 종류의 서비스로 인해 쉽게 …

3
마이크로 서비스 아키텍처에서 비즈니스 로직은 어디에 위치해야합니까?
모 놀리 식 접근법에 익숙하기 때문에 여전히 마이크로 서비스 아키텍처에 대해 머리를 감싸려고합니다. 매우 단순화 된 Uber 예약 시스템 을 구축하려고한다고 가정 합니다. : 일을 단순화하기 위해 우리의 우리가 3 개 서비스 및 클라이언트에 대한 게이트웨이 API가 있다고 가정 해 봅시다 Booking, Drivers, Notification우리는 다음과 같은 워크 플로우를 가지고 : …

4
마이크로 서비스 아키텍처가 마이크로 서비스 당 별도의 데이터베이스를 필요로하는 경우 비용이 많이 들고 관리가 불가능합니다. 왜 필요한가요?
마이크로 서비스에 대해 읽었으며 격리를 달성하기 위해 서비스마다 별도의 DB를 만드는 것이 비논리적 인 것 같습니다. 웹 서비스와 단일 데이터베이스 만 사용하여 동일한 결과를 얻을 수 있습니다. 왜 필요한가요? 데이터베이스를 분리하는 것은 논의 할 수없는 것입니다. 아니면 내가 틀렸다? 이것에 대해 안내해 줄 수 있습니까?

1
API 게이트웨이 뒤의 마이크로 서비스가 액세스 토큰을 확인해야합니까?
API Gateway를 통해서만 외부에서 액세스 할 수있는 많은 마이크로 서비스가 있습니다. 내 API 게이트웨이는 OAuth 리소스로 설정되고 요청을 하나 이상의 마이크로 서비스에 다운 스트림으로 전달하기 전에 토큰을 확인합니다 (서명 확인 등). 범위와 클레임을 확인하기 위해 마이크로 서비스에 토큰이 필요하지만이 서비스에서도 토큰의 유효성을 검사해야합니까? 약간 과잉이지만이 시나리오에 대한 온라인 조언을 찾을 …

7
마이크로 서비스 아키텍처에서 서비스가 서로 직접 대화해야합니까?
웹 응용 프로그램을 구성하는 많은 웹 서비스가 있습니다. 클라이언트는 REST API 호출을 통해 이러한 서비스에 액세스 할 수 있습니다. 이러한 서비스가 서로 직접 대화 할 수 있어야합니까? 그렇다면 마이크로 서비스 개념에 반하는 커플이되지 않습니까? 클라이언트가 웹 페이지를 클라이언트에로드하는 데 필요한 데이터를 얻기 위해 클라이언트에서 하나씩 직접 호출해야합니까? 또는 클라이언트의 요청을 …

3
Symfony로 외부 RESTful API를 사용하는 방법은 무엇입니까?
우리는 주로 프론트 엔드 Symfony 애플리케이션이 백엔드 RESTful API와 상호 작용하여 프로젝트를위한 마이크로 서비스 아키텍처를 구축하고 있습니다. 문제는이 접근 방식이 데이터베이스가있는 Doctrine에 크게 의존하는 Symfony 엔티티 관리를 위반한다는 것입니다. Symfony가 일반적으로 Doctrine으로 엔티티를 처리하여 대부분의 작업을 자동화하는 경우 API에서 외부 데이터에 액세스해야 할 때 쉽게 재현 할 수 없습니다. 예를 …

2
SOA와 마이크로 서비스의 실제 차이점
기권 나는 누군가의 발가락을 밟거나 개념 애호가를 불쾌하게하지 않기를 바랍니다. 배경 명확한 답을 찾지 않고 Service Oriented Architecture와 Microservices의 실제 차이점을 찾고 있습니다. 나는 다음과 같은 것을 읽었다. SOA의 부작용 반 패턴 인 SOA 마이크로 서비스는 SOA의 실패를 해결하기 위해왔다 ESB는 실제로 ESB가 아니며 EAI입니다. 메시지 브로커에 대한 과도한 의존 …

5
마이크로 서비스 : MonolithFirst?
나는 모든 장단점,시기 및 이유에 대한 높은 수준의 개요를 얻으려고 노력하는 마이크로 서비스 아키텍처를 연구하고 있습니다. 제가 읽고 /보고있는 많은 정보는 ThoughtWorks (Martin Fowler, Neal Ford, et. al). 이 주제에 대한 Martin Fowler의 작업의 대부분은 마이크로 서비스 (일반적으로 실습은 아니지만 가정의 이름으로)가 아직 젊었을 때 몇 년이 지났으므로 소금 한 …

3
느슨하게 연결된 마이크로 서비스 아키텍처에서 종속성을 어떻게 추적합니까?
현대적인 프로그램에서 널리 사용되는 고급 아키텍처는 REST 기반 마이크로 서비스 시스템입니다. 이는 느슨한 결합, 쉬운 재사용, 사용 가능한 기술 제한, 높은 확장 성 등과 같은 몇 가지 장점이 있습니다. 그러나 이러한 아키텍처에서 예상되는 문제 중 하나는 응용 프로그램의 종속성에 대한 가시성이 부족하다는 것입니다. 예를 들어 매일 한 세트의 REST 호출을 …

2
마이크로 서비스 및 정식 모델
이 사이트 에서 마이크로 서비스에 대해 읽을 때 아래 진술을 보았습니다 . 표준 스키마 란 무엇입니까? 도메인 모델과 같지 않습니까? Microservices Architecture 패턴은 표준 스키마 개념과 같은 SOA의 다른 부분도 거부합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.