• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

Microservizi per logiche applicative di grandi dimensioni

By Giuseppe Maggi | on 27 Luglio 2016 | 0 Comment
News

Una delle tendenze che si sta affermando in campo di progettazione software è basata sui cosiddetti microservices: moduli software di dimensioni ridotte che offrono una funzionalità specifica, non fine a sè stessa ma calata in una logica applicativa di grandi dimensioni.

L’evoluzione software, in buona parte basata su programmazione orientata agli oggetti, ha portato alla creazione di piattaforme applicative di dimensioni notevoli che incarnano progetti molto grandi e, a volte, l’intera produzione di un’azienda. Tali applicazioni, spesso definite monolitiche in quanto costituite da un corpo unico, presentano col tempo degli svantaggi:

  • una complessa organizzazione del lavoro: distribuzione degli incarichi, formazione dei team, gestione delle responsabilità;
  • spesso l’intera piattaforma è basata su un’unica tecnologia – ad esempio, interamente fatta in Java o in .NET, etc. – con lo svantaggio che alcune funzionalità potrebbero essere sviluppate meglio con altri linguaggi;
  • difficoltà nello sviluppo e nella manutenzione;
  • pianificazione dei test molto complessa.

La diffusione dei microservizi ha portato in tante aziende non solo la nascita di nuove piattaforme software così concepite ma anche la migrazione graduale di prodotti monolitici verso una struttura più modulare.

Tanto per chiarirci le idee, proviamo ad immaginare una piattaforma online costituita non da un motore unico ma da tanti piccoli servizi scritti in linguaggi diversi, ognuno autonomo come sviluppo, manutenzione e test, che dialogano tra loro in Rete. Ad esempio, potrebbero occuparsi uno di login degli utenti, uno dello storage di file, altri di elaborazioni, altri ancora della produzione di reportistica. Inoltre, possiamo legittimamente supporli scritti ognuno nel linguaggio che gli si addice: alcuni basati su Node,js, altri in Java, alcuni in .NET (perchè, ad esempio, devono interagire con prodotti Microsoft), altri in Ruby, Python e così via.

Anche la formazione dei team di sviluppo potrebbe essere più comoda con gruppi molto ristretti di sviluppatori che si occupano anche di un singolo microservizio.

Ci sono anche altri vantaggi come la possibilità di ridondare e scalare singoli microservizi che ne hanno bisogno per essere più reattivi mentre con un’applicazione monolitica si dovrebbe agire a livello globale.

Ovviamente anche i microservizi pongono alcuni problemi: devono necessariamente comunicare tra loro quindi ognuno deve avere il proprio strato di API da contattare, facilitano i test singoli ma si deve progettare bene dei test complessivi che mettono alla prova la piattaforma tutta insieme, le attività più complesse toccano spesso più microservizi quindi è necessario pianificarne la suddivisione e decidere a quale team assegnarlo.

Secondo il parere di molti esperti, sembra proprio che i microservizi siano pronti ad invadere il mondo e l’adozione di questa mentalità di progettazione da parte di grandi realtà dell’informatica appare come una conferma.

Stiamo a vedere cosa succede: noi continueremo a tenervi aggiornati!

Share this story:
  • tweet

Tags: apimicroservicesprogrammazioneprogrammazione webweb services

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • Postman native app

    3 Gennaio 2018 - 0 Comment
  • Creare API REST con Spark Java, Gson e RethinkDB

    26 Maggio 2017 - 0 Comment
  • Creare API REST velocemente con Spark Java

    13 Febbraio 2017 - 0 Comment

Author Description

No Responses to “Microservizi per logiche applicative di grandi dimensioni”

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO