fogugl.blogg.se

Akka.net masstransit
Akka.net masstransit









akka.net masstransit
  1. AKKA.NET MASSTRANSIT HOW TO
  2. AKKA.NET MASSTRANSIT SOFTWARE
  3. AKKA.NET MASSTRANSIT CODE
  4. AKKA.NET MASSTRANSIT WINDOWS

AKKA.NET MASSTRANSIT HOW TO

A REST client needs no prior knowledge about how to interact with any particular application or server beyond a generic understanding of hypermedia. The principle is that a client interacts with a network application entirely through hypermedia provided dynamically by application servers.

  • HATEOAS, an abbreviation for Hypermedia as the Engine of Application State, is a constraint of the REST application architecture that distinguishes it from most other network application architectures.
  • Luckily we have OPEN SOURCE (Mono, ASP.NET 5 and… Linux :-) )

    AKKA.NET MASSTRANSIT WINDOWS

    Windows Containers are not ready yet 27th March 2016) Service Fabric is nice… but it is “the Microsoft way” Most concepts could be applied to almost any architecture There is no “right way” for doing microservices

    akka.net masstransit akka.net masstransit

    Rancher (Linux containers) Marathon (Linux containers)Ī PaaS for building and running large scale microservice based

  • Problem: How do we deal with 100s of services? Start, stop, move, upgrade….
  • Another microservice to deal with domain data access.
  • Problem: Distributed transactions are really hard.
  • AKKA.NET MASSTRANSIT CODE

  • Problem: Each microservice is made of code + state.
  • Message formats: XML (text), JSON (text), Google Protobuf (binary).
  • Tools/applications: RestSharp, Akka.Net, RabbitMQ (.NET library available), NATS (.NET lib.
  • Problem: As we increase the number of services, the number of calls between them also.
  • (you might not know how your service is really used!)
  • Other teams to do pull requests with tests.
  • The same place at the same time in order to make an integrated delivery
  • Avoid at all costs committing to features that require more than one team to be done in.
  • Specific services like Netflix Zuul (Java) or Compoxure (NodeJS).
  • Server Side Includes / Edge Side Includes.
  • Problem: Once we have all the small bits and pieces, how do we integrate them to.
  • Log deployments / Orchestration (more on this later).
  • Problem: You don´t want to have to check N log files, just 1.
  • Techniques: retry N times, retry forever, retry and wait, circuit breaker, post execution stepsĬircuit breaker: custom fallback, fail silent, fail fast
  • Problem: If one service is not available, everything crashes.
  • Authorisation  All microservices should consume JWTs (identity).
  • Authentication  Leave that to the OAuth 2 server (token).
  • OpenID protocol (JWT – Json Web Token, a signed json doc) to achieve statelessness.
  • Authorisation server (provides tokens and jwt signed with its PK).
  • Resources, and we should do that in a scalable way

    akka.net masstransit

    Problem: Once the principal is authenticated, it should only have access to certain.Authentication, Authorisation, Delegation.Rate limiting for external APIs (X-Rate-Limit-… headers (Twitter)).API gateway pattern (not just for security but…).Tamper proofing, replay protection, principal authorization, weakest link, least privilege.Secure communication channels? Services trust each other?.Protect just Internet boundary? What happens in a intruder gets in the network?.Problem: Secure all calls  slow / hassle?.API generation / documentation  Swagger, apiary, ….Semantic Romantic Versioning + Minimum required version concept.Do not only distribute a client (distributed monolith!), just rely on contracts (& provide.You still need to deal with old clients of your service relying on previous version.Try to avoid dependencies  less management & more happiness .Problem: Not all teams should deliver at the same pace.Microphone (.NET) + Consul (in Production: master on Linux only!).Nice to have: Discovery + health check + auto healing.Discovery services rely on distributed DBs  can be used to store configuration.Problem: The service discovery needs to be redundant and reliable (this is hard!).Problem: Hard-code service locations in 100s of microservices?.Good technical practices for microservices The actual presentation - brainstorming session Our definition of microservices (Created live in Rather a “this is what I have seen” and open for This is not a “this is what I did” presentation, but NET Architects / AngularJs devs | Testers / Automation Heavily investing on R&D (& new offices in Málaga )Ĭurrently hiring in Málaga – for more info

    AKKA.NET MASSTRANSIT SOFTWARE

    We are leading software providers for the insurance market Windows Server 2016! Best practices with microservices (or just services) Net Microservices with Event Sourcing, CQRS, Docker and.











    Akka.net masstransit