Passa ai contenuti principali

Post

FAIR Principles

  FAIR Principles Ideare, definire, progettare, realizzare, distribuire e manutenere basi dati che rispettano i principi "FAIR". Definizione FAIR Principles (Findable, Accessible, Interoperable, Reusable) si riferisce alle caratteristiche che i dati prodotti o gestiti dalle soluzioni software (ma non solo, qui ci occupiamo però delle implicazioni sulle soluzioni software). I principi FAIR definiscono come dovrebbero essere organizzati i risultati della ricerca in modo che essi siano facilmente accessibili, compresi, scambiati e riutilizzati. Cosa sono i dati FAIR Le caratteristiche che definiscono una base di dati come aderente ai principi FAIR sono i seguenti: "Findable" ("Trovabile"): i dati devono essere corredati da metadata che ne facilitino una efficace identificazione e comprensione in tutti gli aspetti delle loro caratteristiche "Accessible" ("Accessibili"): i dati e i rispettivi metadati devono essere sempre accessibili e facil...
Post recenti

WS-Security

 WS-Security Definizione Da Wikipedia :  Web Services Security  (WS-Security, WSS) è una estensione di  SOAP   per estendere la sicurezza ai servizi web ed è una specifica redatta da OASIS. Il protocollo specifica come può essere rafforzata l'integrità e la confidenzialità e permette la comunicazione di vari token di sicurezza, come SAML, Kerberos e X.509. Il principale obiettivo è l'utilizzo della firma XML e della crittazione XML per garantire la sicurezza end-to-end a livello di messaggio. Contesto Solitamente i meccanismi di sicurezza a livello di trasporto sono quelli più utilizzati quando si opera in un contesto popolato da intermediari o pari livello come negli ambienti di Enterprise Service Bus. Può però sorgere l'esigenza di criptare campi diversi con chiavi diverse e in questi casi servono dei meccanismi a livello di messaggio o applicazione (end-to-end). Introdurre la sicurezza a livello di trasporto non hanno nessun impatto sulle applicazioni né tant...

SOAP - in sintesi

SOAP - in sintesi Definizione Da Wikipedia : SOAP (inizialmente acronimo di simple object access protocol) è un protocollo per lo scambio di messaggi tra componenti software. La parola "oggetto" manifesta che l'uso del protocollo dovrebbe effettuarsi secondo il paradigma della programmazione orientata agli oggetti. Struttura Basato su xml si è definito un protocollo che consente di scambiare messaggi "evoluti" che possono arrivane anche ad invocare procedure remote, e quindi non solo scambiare semplicemente una informazione. I protocolli di trasporto possono essere tanti ma il più comunemente usato è l'HTTP.   L'elemento "Envelop" rappresenta il contenitore del messaggio e costituisce il root del documento xml. L'"header" contiene metadati come quelli che riguardano l'instradamento, la sicurezza, le transazioni e parametri per l'orchestration. Il segmento obbligatorio "body" trasporta il contenuto informativo che...

ESPHome su Wemos D1 Mini

  Cosa è EspHome  è un firmware per dispositivi IoT che li dota della possibilità di essere configurati, e riconfigurati, in remoto (OTA) e li rende compatibili con Home Assistant . Inoltre la sua principale caratteristica è che, al contrario di altri firmware come ad esempio Tasmota che si portano dietro tutte le librerie, il firmware che si va ad installare sul dispositivo è ritagliato sulle caratteristiche di questo e quindi porta con se solo le librerie e le componenti utili allo specifico dispositivo. Come si installa La prima installazione richiede un collegamento via USB fra il pc con il quale si sta facendo l'operazione di installazione (che può essere oppure può anche non essere quello che fa girare Home Assistant) e il dispositivo compatibile sul quale installare ESPHome. Inoltre serve Home Assistant, appunto e l'installazione di ESPHome. Per installare questo plugin portarsi in "Configurazioni": Aprire "Add-ons, Backups & Supervisor": Cliccand...

Wemos D1 mini ESP8266 - Aggiornamenti OTA

Wemos D1 mini - Aggiornamenti OTA Cosa è Può risultare scomodo dover collegare con un cavo usb un ESP8266 e derivati (come in questo caso un Wemos D1 mini) ad un pc per un semplice aggiornamento software.  OTA sta per "Over The Air". Con questa tecnologia si ha la possibilità di modificare il firmware di questi microcontrollori mediante la wi-fi.  Come funziona Per ottenere questa funzionalità ci si è inventato un meccanismo molto semplice: il nostro microcontrollore, dotato della capacità di aggiornamenti OTA, ha in carico un firmware che all'avvio non fa altro che, usando la libreria ArduinoOTA, collegarsi alla wi-fi (della quale avremo fornito SSID e Password) e mediante il " Multicast DNS " dichiara la sua presenza sulla WI-FI LAN, l' Ide di Arduino rileva questa presenza e ci fornisce il supporto alla comunicazione mediante wi-fi (la porta di rete rilevata prenderà il nome del modello e l'ultima parte del suo mac-address per identificarlo, se non r...

Monitoraggio Produzione e consumo elettrico con Home Assistant

Home Assistant dalla 2021.8 in poi ha un modulo "Energy" per il monitoraggio dei consumi e della produzione di energia elettrica. Questa componente può risultare utile per calcolare quanto si immette in rete, a quanto ammontano i propri consumi, quali sono i livelli di produzione del proprio impianto fotovoltaico e quanto aspettarsi come rimborso da GSE. Con le automazioni offerte da Home Assistant è possibile anche ricevere una notifica al superamento di alcune soglie oppure se "c'è il sole e l'impianto fotovoltaico sta producendo 0". Cosa serve Per monitorare produzione e consumi serve un sensore su queste linee. La produzione dell'impianto fotovoltaico può essere monitorare anche chiedendo direttamente questa informazione all'inverter. Nel caso di SolarEdge tutte le informazioni sono disponibili mediante restApi ed esiste un plugin apposito per HA. Per misurare i consumi, e la produzione se non si dispone di un inverter che fornisce queste informa...

Soluzione multi-nodo per applicazioni web

Soluzione multi-nodo per applicazioni web Introduzione Un servizio online se invocato da un numero molto alto di richieste sull'unità di tempo può "andare in sofferenza" e dare tempi di risposta troppo alti. In questo caso si può intervenire a livello sistemistico per ottimizzare le risorse coinvolte o aumentarle. Se ciò non dovesse bastare si possono accendere più istanze del servizio in modo che il carico di lavoro venga ripartito su queste e non su una singola istanza. Ogni istanza viene detta "nodo". Architettura Lo scenario con una singola istanza di una classica applicazione web composta da Gateway (GW - front-end), Servizio (SR - back-end) e Database (Db): Lo scenario con un Servizio (SR) replicato in più nodi ma con il Database (DB) ed il Gateway (GW) in comune, quello che punto a costruire: Implementazione Per l'implementazione prevediamo che le componenti del sistema siano tutte dockerizzate e supponiamo che siano le seguenti: - Gateway = Nginx - S...