Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Describe the API to micro service mapping #28

Open
hlgr360 opened this issue Feb 11, 2017 · 2 comments
Open

Describe the API to micro service mapping #28

hlgr360 opened this issue Feb 11, 2017 · 2 comments
Assignees

Comments

@hlgr360
Copy link
Contributor

hlgr360 commented Feb 11, 2017

Since I have seen a few attempts to rebrand SOA style architectures (functional decomposition) as Microservices with REST

to me a microservice represents a domain ... and that domain is seperated from another domain through some constrains ... it could be process (the concept of microflow from the BPEL days) .. or time (changes in one domain are decoupeld from changes in another along time) .. or or ..
it is hard to describe it because I feel that if you look a the context it just pops out to me .. ... for instance SAP is a single domain for me, even though it has plenty of systems inside
I invest time and resources to decouple domains from each other .. this is where an REST API comes into play. A REST API is not cheap .. it costs (design) time and - in most cases - should allow self service (another aspect of decoupling and obtaining more speed) through API management
within a domain there could be multiple services
each interacting with the other .. most of the time I would not use REST between those, but more an IPC style framework like gprot, thrift, protobuf etc ...

I don;t know what I try to get to with this post except maybe spark a discussion and thinking on the granularity of a micro service

it could be a single docker container .. but it could also be 10's of containers

@hlgr360 hlgr360 self-assigned this Feb 11, 2017
@hlgr360
Copy link
Contributor Author

hlgr360 commented Mar 10, 2017

Looks like Google is thinking along the same lines: http://apievangelist.com/2017/03/10/api-definitions-covering-both-rest-and-grpc-apis/

having a REST API as public surface but leveraging protobug / gprot as internal API

@hlgr360
Copy link
Contributor Author

hlgr360 commented Mar 10, 2017

https://cloud.google.com/apis/design/

This guide applies to both REST APIs and RPC APIs, with specific focus on gRPC APIs. gRPC APIs use Protocol Buffers to define their API surface and API Service Configuration to configure their API services, including HTTP mapping, logging, and monitoring. HTTP mapping features are used by Google APIs and gRPC Cloud Endpoints APIs for JSON/HTTP to Protocol Buffers/RPC transcoding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant