microservices

Data Consistency Across Microservices

别说谁变了你拦得住时间么 提交于 2019-12-03 02:48:34
问题 While each microservice generally will have its own data - certain entities are required to be consistent across multiple services. For such data consistency requirement in a highly distributed landscape such as microservices architecture, what are the choices for design? Of course, I do not want shared database architecture, where a single DB manages the state across all the services. That violates isolation and shared-nothing principles. I do understand that, a microservice can publish an

Multi-Tenant Authentication with AWS Cognito

混江龙づ霸主 提交于 2019-12-03 02:08:25
My current project is in AWS, using Cognito and microservices with Lambda. We have designed the microservices using DDD and are in the process of implementing basic functionality. However, there is a business need for users of the API to be able to be categorised into the client company that they work for, and only be able to access data for that client company as well as any role-based authentication we will have. This isn't a full multi-tenant solution as every user will be working with the same website, but their account will have been associated with a particular client. Everything I have

Where does Elixir/erlang fit into the microservices approach? [closed]

有些话、适合烂在心里 提交于 2019-12-03 01:47:09
问题 Closed . This question needs to be more focused. It is not currently accepting answers. Want to improve this question? Update the question so it focuses on one problem only by editing this post. Closed 4 years ago . Lately I've been doing some experiments with docker compose in order to deploy multiple collaborating microservices. I can see the many benefits that microservices provide, and now that there is a good toolset for managing them, I think that it's not extremely hard to jump into

How does data denormalization work with the Microservice Pattern?

一笑奈何 提交于 2019-12-03 00:14:11
问题 I just read an article on Microservices and PaaS Architecture. In that article, about a third of the way down, the author states (under Denormalize like Crazy ): Refactor database schemas, and de-normalize everything, to allow complete separation and partitioning of data. That is, do not use underlying tables that serve multiple microservices. There should be no sharing of underlying tables that span multiple microservices, and no sharing of data. Instead, if several services need access to

Microservices: datasource per instance or per microservice? [closed]

纵饮孤独 提交于 2019-12-03 00:10:01
Closed . This question is opinion-based. It is not currently accepting answers. Learn more . Want to improve this question? Update the question so it can be answered with facts and citations by editing this post . Building microservice architecture I faced the problem of data sharing between instances of the same microservice. I have microservice, that massively uses it's datasource - every request to service cause database request (usually insert). This service will be used very heavily and I plan to hide multiple instances behind Load Balancer. And here rises a question: shall these

Can containers share a framework?

﹥>﹥吖頭↗ 提交于 2019-12-02 23:33:23
问题 I'm aware that Docker containers can share a data volume but is it possible for them to share frameworks? For instance, if i have two .NET services running on IIS can I just share the framework between them? 回答1: Yes you can, what you usually do is Alternative A: create a busybox image and COPY your framework, expose the location as a volume VOLUME /opt/framework/ FROM alpine COPY framework /opt/framework VOLUME /opt/framework COPY busyscript.sh /usr/local/bin/busyscript RUN chmod +x /usr

What is the best way to communicate between microservices in vertx, by web client or some middleware?

半世苍凉 提交于 2019-12-02 23:01:09
问题 I have not done much in vert.x microservices, but I ran into the doubt of knowing the best way to communicate with each other miscroservices vert.x, using some middleware or web client, I do not know, or any other way that vert.x allows me. 回答1: There's an infinite of possibilities to allow vert.x microservices to communicate between them, each with pros and cons and with more or less relevance depending on the context. Here is 3 common ways : 1) Using the native vert.x eventBus (

How to self register a service with Consul

妖精的绣舞 提交于 2019-12-02 21:26:07
I'm trying to self register my ASP.NET Core application to Consul registry on startup and deregister it on shutdown. From here I can gather that calling the http api [ put /v1/agent/service/register ] might be the way to go (or maybe not!). From my app, I thought I'll target the Startup class, starting with adding the my .json file public Startup(IHostingEnvironment env) { var builder = new Configuration().AddJsonFile("consulconfig.json"); Configuration = builder.Build(); } But now, I'm stuck as ConfigureServices method tells me thats where I add services to the container, and Configure method

What is the conceptual difference between Service Discovery tools and Load Balancers that check node health?

牧云@^-^@ 提交于 2019-12-02 21:04:43
Recently several service discovery tools have become popular/"mainstream", and I’m wondering under what primary use cases one should employ them instead of traditional load balancers. With LBs, you cluster a bunch of nodes behind the balancer, and then clients make requests to the balancer, who then (typically) round robins those requests to all the nodes in the cluster. With service discovery ( Consul , ZK , etc.), you let a centralized “consensus” service determine what nodes for particular service are healthy, and your app connects to the nodes that the service deems as being healthy. So

How to manage secrets in a Microservice / Container / Cloud environment?

 ̄綄美尐妖づ 提交于 2019-12-02 19:18:06
Microservices and Cloud is a thing. Everyone is talking and writing about. Personally i am thinking a lot about this topics: How this can be used to benefit from? What are possible challenges? How can this speedup the daily development? And how to manage all things? One question that bothers me since a few days is "How to manage secrets in a Microservice / Cloud environment?". Imagine a company with 150 software engineers and various teams with various products. Every team is creating a software and every service needs various amounts of secrets (API-Keys, Passwords, SSH-Keys, whatever). The